目次
アドレスクラス
IPアドレスはネットワーク部とホスト部から構成されていますが、32ビットのうちどこまでがネットワーク部(ネットワークアドレス)でどこからがホスト部(ホストアドレス)なのかということが固定されていません。IPアドレスによって異なります。この点が、IPアドレスの理解で難しいところでもあります。
ネットワークアドレスとホストアドレスの区切りを考えるため、IPアドレスをクラスに分類しています。クラスによって、32ビットのうちどこまでがネットワーク部でどこからがホスト部であるかがわかるようになります。クラスは次の5種類あります。
- クラスA
- クラスB
- クラスC
- クラスD
- クラスE
クラスA~Eのうち、ホストのインタフェースに設定するユニキャストアドレスはクラスA~Cです。クラスによってネットワーク部とホスト部の区切りがわかります。また、クラス自体の識別を行うために先頭のビットパターンが決められています。クラスによって決まることをまとめると、次の2点です。
- 先頭のビットパターン
- ネットワーク部とホスト部の区切り
以降では、クラスA~Cについてこの2点を踏まえて見ていきます。ネットワーク部とホスト部の区切りを8ビット単位で決めている点が重要です。IPアドレスは8ビットずつ10進数で表記します。そのため、8ビット単位でネットワーク部とホスト部の区切りを考えるとわかりやすくなります。
なお、クラスDは、ユニキャストアドレスではなくマルチキャストアドレスを定義しているクラスです。そして、クラスEは実験用途なので、ホストのインタフェースに設定することはありません。
クラスA
クラスAの特徴をまとめると次のようになります。
- 先頭のビットパターン:「0」
- 先頭8ビットの10進数表記:1~126
- ネットワーク部とホスト部の区切り:8ビット目
- ネットワークアドレスの数:126個
- ホストアドレスの数:約1600万個
クラスAのIPアドレスは必ず先頭1ビットが「0」です。先頭8ビット分を10進数で考えると1~126の範囲です。つまり、1~126の範囲ではじまるIPアドレスはクラスAのIPアドレスです。そして、ネットワークアドレスとホストアドレスの区切りは8ビット目です。
固定されている先頭の1ビット以外ネットワーク部として7ビット分使えるので、クラスAのネットワークの数は27-2=126個です。ここで「-2」としているのは、7ビット分のネットワーク部のビットがすべて「0」とすべて「1」の場合を除いているからです。
この126個のクラスAのネットワークそれぞれで、224-2=16777214個のホストアドレスを利用することができます。約1600万という非常に多くのアドレスを利用できるのがクラスAのネットワークの特徴です。
クラスB
クラスBの特徴をまとめると次のようになります。
- 先頭のビットパターン:「10」
- 先頭8ビットの10進数表記:128~191
- ネットワーク部とホスト部の区切り:16ビット目
- ネットワークアドレスの数:16382個
- ホストアドレスの数:65534個
クラスBのIPアドレスは先頭2ビットが「10」ではじまります。先頭8ビットを10進数で考えれば、128~191です。
ネットワーク部とホスト部の区切りは16ビット目にあります。したがって、ネットワーク部として14ビット、ホスト部として16ビット利用できます。ネットワーク部が14ビットなので、214-2=16382個のクラスBのネットワークがあります。各クラスBのネットワークでは、216-2=65534個のアドレスを利用することができます。
クラスC
クラスCの特徴をまとめると次のようになります。
- 先頭のビットパターン:「110」
- 先頭8ビットの10進数表記:192~223
- ネットワーク部とホスト部の区切り:24ビット目
- ネットワークアドレスの数:2097150個
- ホストアドレスの数:254個
クラスCのIPアドレスは先頭3ビットが「110」ではじまります。先頭の8ビット分を10進数で考えると192~223です。また、ネットワーク部とホスト部の区切りは24ビット目の所にあります。ネットワーク部として21ビット、ホスト部として8ビット利用できます。
クラスCのネットワークの数は、221-2=2097150個あります。このクラスCのネットワークそれぞれで、28-2=254個のアドレスを利用することができます。
次の表は、クラスA~クラスCのIPアドレスの特徴をまとめたものです。
クラス | A | B | C |
---|---|---|---|
先頭のビット | 0 | 10 | 110 |
先頭8ビットの10進表記 | 1~126 | 128~191 | 192~223 |
区切り | 8ビット | 16ビット | 24ビット |
ネットワーク数 | 126 | 16382 | 2097150 |
ホスト数 | 16777214 | 65534 | 254 |
このようなアドレスクラスに基づいて考えたアドレスをクラスフルアドレスと呼びます。クラスフルアドレスでのネットワーク部とホスト部の区切りは、クラスごとに決まり、基本的に8ビット、16ビット、24ビットと8ビット単位です。また、クラス単位で考えたネットワークアドレスをメジャーネットワークと呼びます。
クラスフルアドレスのネットワーク部とホスト部の区切りの考え方
クラスフルアドレスで、ネットワーク部とホスト部の区切りを考える手順をまとめると、次のようになります。
- IPアドレスの先頭の10進数からクラスA、クラスB、クラスCかを判断
- クラスAなら8ビット、クラスBなら16ビット、クラスCなら24ビットでネットワーク部とホスト部の区切りとしてメジャーネットワークを判断
たとえば、IPアドレス「10.1.1.1」のメジャーネットワークは「10.0.0.0」です。10で始まるIPアドレスなのでクラスAです。クラスAはネットワークアドレスとホストアドレスの区切りが8ビット目に位置するためです。同様に、IPアドレス「172.31.100.100」のメジャーネットワークは「172.31.0.0」となります。172で始まっているので、クラスBとなるからです。
IPアドレスの表記は、8ビットずつ10進数で表記します。そのため、こうしたクラスフルアドレスは、8ビット単位でネットワークアドレスとホストアドレスの区切りを考えているのでわかりやすくなります。
クラスの解説でクラスAは大規模、クラスBは中規模、クラスCは小規模といったようにネットワークの規模に応じた分類であるとしている記述を多く見かけます。しかし、ネットワークの規模による分類は本質的なものではありません。クラスの重要なポイントは、ネットワーク部とホスト部の区切りをどのように考えているかということです。
クラスD
クラスDはホストに設定するユニキャストIPアドレスではなくマルチキャストIPアドレスとして定義されています。クラスDは先頭4ビットが「1110」で始まります。10進数では224~239ではじまるIPアドレスはクラスDのIPアドレス、すなわちマルチキャストIPアドレスです。残りの28ビットでマルチキャストグループを識別できるようにします。
特に224.0.0.0~224.0.0.255の範囲はリンクローカルマルチキャストアドレスで、同じネットワーク内でのみ利用します。また、239.0.0.0~239.255.255.255の範囲はプライベートネットワークで自由に利用できる範囲です。
関連記事
クラスE
クラスEは実験用途の範囲で、現在では利用することはありません。クラスEの範囲は先頭4ビットが「1111」ではじまる範囲です。10進数では240~255ではじまるIPアドレスです。
クラスフルアドレスのムダ
クラスによってネットワーク部とホスト部の区切りを8ビット単位でわかりやすく考えているのですが、クラスフルアドレスは非常に無駄が多いアドレスの考え方です。
たとえば、クラスAのアドレスを考えます。「ひとつ」のクラスAのネットワーク内で1600万以上のホストアドレスを利用することができます。どんなに大規模な企業であったとしても、現実的にたったひとつのネットワークに1600万以上ものホストを接続することはありえません。そのため、クラスAではたくさんのIPアドレスが利用されずに、IPアドレスの利用効率が悪くなります。クラスBでもIPアドレスが多すぎるでしょう。ひとつのネットワークに60000以上もの機器を接続することはまず考えられません。一方、クラスCのネットワークアドレスを利用している環境で、ひとつのネットワークに300台のホストを接続したい場合を考えます。クラスCでは、ひとつのネットワーク内で利用できるホストアドレスは254個です。そのため、クラスCのアドレスを利用していては、ひとつのネットワーク内に255台以上のホストを接続することができません。
ホストアドレスの数はルータに設定するIPアドレスも含めて考えなければいけません。クラスCでは、ルータも含めて254台のホストを接続できることになります。
クラスAではホストアドレスが多すぎます。クラスBでもホストアドレスがかなり多くなっています。クラスAやクラスBでは、ホストアドレスを余らせてしまうことが多いです。一方、クラスCはホストアドレスの数が十分ではないことが起こる可能性があります。このように、クラスフルアドレスはアドレスの利用効率がよくありません。
クラスフルアドレスのムダを無くすために、ネットワーク部とホスト部の区切りを自由に決めるクラスレスアドレスに移行しています。現在は、クラスフルアドレスを利用することはなく、クラスレスアドレスを利用しています。ただ、クラスフルアドレスの理解も必要です。クラスレスアドレスは、クラスフルアドレスに基づいているからです。
関連記事
現在のIPアドレスの考え方であるクラスレスアドレスについて、以下の記事で解説しています。
まとめ
ポイント
- IPアドレスのネットワーク部とホスト部の区切りを考えるために、アドレスクラスに分類します。
クラス | A | B | C |
---|---|---|---|
先頭のビット | 0 | 10 | 110 |
先頭8ビットの10進表記 | 1~126 | 128~191 | 192~223 |
区切り | 8ビット | 16ビット | 24ビット |
ネットワーク数 | 126 | 16382 | 2097150 |
ホスト数 | 16777214 | 65534 | 254 |
- アドレスクラスに基づいたIPアドレスの考え方をクラスフルアドレスと呼びます。
- クラスフルアドレスでは、IPアドレスのムダがとても多くなってしまうので、現在はクラスレスアドレスに移行しています。
IPアドレッシング
- IPアドレスとは?
- なぜIPアドレスだけでなくMACアドレスも必要なの? ~IPアドレスとMACアドレスの違い~
- 通信の用途とIPアドレス ~宛先は1つ?それとも複数?~
- ユニキャストIPアドレスの構成
- クラスフルアドレス ~区切りを8ビット単位で~
- クラスレスアドレス ~区切りを好きなところに~
- IPアドレス設定の意味
- Cisco IPアドレスの設定・確認コマンド
- CiscoルータをDHCPクライアントに : ip address dhcpコマンド
- サブネッティング ~ネットワークアドレスを分割~
- サブネッティングの計算のポイント(サブネットのネットワークアドレスの簡単な求め方)
- IPアドレス計算ツール(ベータ)
- IPアドレス計算問題 ~CCNA試験対策~
- 不連続サブネット
- ネットワークアドレスの集約 ~ネットワークアドレスをまとめる~
- 自動集約
- グローバルアドレスとプライベートアドレス
- なぜプライベートアドレスではインターネットの通信ができない?
- NAT/PAT ~プライベートアドレスでもインターネットへ~
- Cisco NAT/PATのアドレスの意味
- Cisco NAT/PATの設定と確認
- Cisco NATの処理順序
- NAT 設定ミスの切り分けと修正 Part1