
クラスフルネットワークは、1981年から1993年にクラスレスドメイン間ルーティング(CIDR)が導入されるまでインターネットで使用されていた、現在は廃止されたネットワークアドレス指定方式です。この方式では、インターネットプロトコルバージョン4 (IPv4)のIPアドレス空間を、先頭の4ビットに基づいて5つのアドレスクラスに分割します。クラスA、B、Cは、 3つの異なるネットワーク規模のネットワークにユニキャストアドレスを提供します。クラスDはマルチキャストネットワーク用で、クラスEのアドレス範囲は将来または実験目的のために予約されています。
クラスフルネットワークの概念は廃止されて以来、一部のネットワークソフトウェアおよびハードウェアコンポーネントのデフォルト構成パラメータ、特にサブネットマスクのデフォルト構成において、限定的な範囲でのみ実際に使用されています。
元のIPv4アドレスの定義では、 32ビットIPv4アドレスの最上位8ビットはネットワーク番号フィールドであり、ホストが接続されている特定のネットワークを指定していました。残りの24ビットはローカルアドレス(アドレスの残り部分とも呼ばれる)を指定し、そのネットワークに接続されているホストを一意に識別していました。[ 1 ]この形式は、 ARPANET (ネットワーク番号10)のような大規模ネットワークが少数しか存在せず、ローカルエリアネットワーク(LAN)が広く普及する以前の時代には十分でした。このアーキテクチャの結果として、アドレス空間は少数の独立したネットワーク(254)しかサポートしていませんでした。
アドレスクラスが導入される前は、利用可能なアドレスブロックはこれらの大きなブロックのみであり、これらは後にクラスAネットワークとして知られるようになりました。[ 2 ]その結果、インターネットの初期開発に関わった一部の組織は、非常に大きなアドレス空間の割り当て(それぞれ16,777,216個のIPアドレス)を受けました。
ネットワークの拡張にあたっては、既存のアドレス空間およびIPv4パケット構造との互換性を確保し、既存ネットワークの番号変更を回避する必要がありました。その解決策として、ネットワーク番号フィールドの定義を拡張してビット数を増やし、より多くのネットワークを指定できるようにしました。各ネットワークのホスト数は、場合によっては少なくなる可能性があります。当時、既存のネットワーク番号はすべて64未満であったため、ネットワーク番号フィールドの最下位6ビットしか使用されていませんでした。そこで、アドレスの最上位ビットを使用することで、既存のネットワーク番号を最初のクラスに保持しつつ、一連のアドレスクラスを導入することが可能になりました。
新しいアドレス指定アーキテクチャは、インターネットプロトコルの仕様の一部として、1981年にRFC 791によって導入されました。 [ 3 ]アドレス空間は主に3つのアドレス形式(以降、アドレスクラスと呼ばれる)に分割され、4番目の範囲は後で定義するために予約されました。
クラス Aと指定された最初のクラスには、最上位ビットがゼロのすべてのアドレスが含まれていました。このクラスのネットワーク番号は次の 7 ビットで与えられ、ゼロ ネットワークと既に割り当てられている IP ネットワークを含めて合計 128 のネットワークを収容できます。クラス Bネットワークは、すべてのアドレスの最上位 2 ビットがそれぞれ 1 と 0 に設定されているネットワークでした。これらのネットワークの場合、ネットワーク アドレスはアドレスの次の 14 ビットで与えられ、ネットワーク上のホストに番号を付ける 16 ビットが残され、ネットワークごとに合計65,536アドレスになります。クラス C は、上位 3 ビットが 1、1、0 に設定され、次の 21 ビットがネットワークに番号を付けるものとして定義され、各ネットワークに 256 個のローカル アドレスが残ります。
先頭のビット列111は、当時未指定のアドレス指定モード(「拡張アドレス指定モードへのエスケープ」)[ 3 ]を指定しており、これは後にマルチキャストアドレス指定用のクラスD(1110 )として細分化され、クラスEとして指定された1111ブロックは将来の使用のために予約されたままになっている。 [ 4 ]
このアーキテクチャの変更により、インターネットのアドレス指定能力は拡張されましたが、IP アドレスの枯渇は防げませんでした。問題は、多くのサイトがクラス C ネットワークが提供するよりも大きなアドレス ブロックを必要とし、そのため、ほとんどの場合必要以上に大きいクラス B ブロックを受け取ったことです。インターネットの急速な成長により、割り当てられていないクラス B アドレス (2 14 、つまり約 16,000) のプールは急速に枯渇していきました。1993 年以降、この問題を解決するために、クラスフル ネットワークはクラスレス インター ドメイン ルーティング(CIDR) [ 5 ] [ 6 ]に置き換えられました。
クラスフルネットワークアドレッシングでは、32ビットのIPv4アドレス空間は、次の表に示すように5つのクラス(A~E)に分割されます。
以下のビット単位の表現では、
クラスA 0. 0. 0. 0 = 00000000.00000000.00000000.00000000 127.255.255.255 = 01111111.11111111.11111111.11111111 0nnnnnnn.HHHHHHHH.HHHHHHHH.HHHHHHHH クラスB 128. 0. 0. 0 = 10000000.00000000.00000000.00000000 191.255.255.255 = 10111111.11111111.11111111.11111111 10nnnnnn.nnnnnnnn.HHHHHHHH.HHHHHHHH クラスC 192. 0. 0. 0 = 11000000.00000000.00000000.00000000 223.255.255.255 = 11011111.11111111.11111111.11111111 110nnnnn.nnnnnnnn.nnnnnnnn.HHHHHHHH クラスD 224. 0. 0. 0 = 11100000.00000000.00000000.00000000 239.255.255.255 = 11101111.11111111.11111111.11111111 1110xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx クラスE 240. 0. 0. 0 = 11110000.00000000.00000000.00000000 255.255.255.255 = 11111111.11111111.11111111.11111111 1111xxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx
各ネットワークで特定のホストをアドレス指定するために使用できるアドレスの数は常に2 n − 2です。ここでnは残りのフィールドビット数であり、2 を減算することで、すべてのビットがゼロのホスト値をネットワークアドレスとして、すべてのビットが 1 のホスト値をブロードキャストアドレスとして使用するための調整が行われます。したがって、ホストフィールドに 8 ビットが使用可能なクラス C アドレスの場合、ホストの最大数は 254 になります。
現在では、サブネットマスクは明示的に指定されます。クラスフル方式では、マスクはアドレス自体によって暗黙的に決定されていたため、これは不要でした。ネットワーク機器はIPアドレスの最初の数ビットを検査することで、アドレスのクラス、ひいてはそのサブネットマスクを判別していました。
クラス A、B、C の番号の先頭と末尾のブロックは、元々は特別なアドレス指定または将来の機能のために予約されていました。つまり、0.0.0.0 / 8と127.0.0.0 / 8は旧クラス A で予約されています。128.0.0.0 / 16と191.255.0.0 / 16は旧クラス B で予約されていましたが、現在は割り当て可能です。192.0.0.0 / 24と223.255.255.0 / 24は旧クラス C で予約されています。127.0.0.0 / 8 ネットワークはクラス A ネットワークですが、ループバック用に指定されているため、ネットワークに割り当てることはできません。[ 8 ]
クラスDはマルチキャスト用に予約されており、通常のユニキャストトラフィックには使用できません。クラスEも予約されており、公共インターネットでは使用できません。多くの古いルーターは、いかなる状況でもクラスEの使用を認めません。
ネットワークプレフィックスまたはクラスレスドメイン間ルーティング(CIDR)表記では、IPマルチキャストアドレスは224.0.0.0/4のようにまとめられます。