IPv4のクラスフルアドレッシングを理解する:仕組み・歴史・課題とCIDR移行の実務影響

クラスフル方式とは

クラスフル方式(classful addressing)は、IPv4アドレッシングの初期に使われたネットワークアドレスの割り当て・識別方法です。アドレス空間(32ビット)を固定長のネットワーク部とホスト部に分けるために、先頭ビットのパターンによって「クラス(A,B,C,D,E)」を決め、各クラスごとにネットワーク部の長さ(=デフォルトのサブネットマスク)が決まっていました。結果として、ネットワークは大雑把に数種類のサイズ(非常に大きいA、中くらいのB、小さいC)に分類され、割り当て・ルーティングの単位が固定されていました。

仕組み:クラス判定とデフォルトマスク

クラスフル方式では、IPv4アドレスの最初のオクテット(0〜255)を見てクラスを判定します。各クラスに対応する先頭ビットパターンとデフォルトサブネットマスク(CIDR表記)を以下に示します。

  • クラスA:先頭ビットが 0(先頭オクテット 0〜127) — デフォルトマスク 255.0.0.0(/8)

    ホスト部は残りの24ビット。理論上のホスト数は 2^24 - 2 = 16,777,214(ネットワーク/ブロードキャストを除く)。ただし 0.0.0.0/8 や 127.0.0.0/8 は特別扱い。
  • クラスB:先頭ビットが 10(先頭オクテット 128〜191) — デフォルトマスク 255.255.0.0(/16)

    ホスト部は残りの16ビット。ホスト数は 2^16 - 2 = 65,534。
  • クラスC:先頭ビットが 110(先頭オクテット 192〜223) — デフォルトマスク 255.255.255.0(/24)

    ホスト部は残りの8ビット。ホスト数は 2^8 - 2 = 254。
  • クラスD:先頭ビットが 1110(先頭オクテット 224〜239) — マルチキャスト用(ルーティング対象の通常のユニキャストネットワークではない)。
  • クラスE:先頭ビットが 1111(先頭オクテット 240〜255) — 研究・将来用途のための予約(実運用では使用されない)。

判定の具体例

  • 1.2.3.4 → 最初のオクテットは 1 → 0xxxxxxx に該当 → クラスA(/8)
  • 130.10.20.30 → 最初のオクテットは 130 → 10xxxxxx に該当 → クラスB(/16)
  • 192.168.1.1 → 最初のオクテットは 192 → 110xxxxx に該当 → クラスC(/24)

歴史的背景と普及の経緯

IPv4が設計・普及した初期は、インターネット規模が小さく、固定長のクラス分けで十分機能しました。運用・管理が単純であり、ルーティングもクラス単位で集約できたため、当時は合理的な仕組みでした。しかしインターネットが急速に拡大するに連れて、アドレス空間の「断片化」とルーティングテーブルの肥大化が問題となり、より柔軟な割り当て方式への移行が必要になりました。

主な問題点(なぜクラスフル方式が問題になったか)

  • アドレスの浪費:クラスA・Bは大きすぎて、実際の利用規模に合わない組織に割り当てると多くが未使用になる。特にクラスBは組織向けとして一般的に大きすぎた。
  • ルーティングテーブルの増大:アドレスが小さな単位(/24 など)で分割されて各組織に割り当てられると、インターネット全体のルーティングテーブルに多数のエントリが増え、ルータの負荷が増加した。
  • 柔軟性の欠如:デフォルトでネットワーク部がオクテット境界(8ビット刻み)に固定されるため、組織の規模に応じた細かな割り当てができず、効率的な利用を妨げた。
  • 特別用途アドレスとの混同:数値的にはクラスAに入るアドレスの中にもループバック(127.0.0.0/8)や予約アドレスなどがあり、単純な範囲判定だけでは運用上の注意が必要。

クラスレス(CIDR)への移行

これらの問題を受け、1993年にCIDR(Classless Inter-Domain Routing)が導入されました(RFC 1519)。CIDRではアドレスを任意のビット長プレフィックスで表記・割り当てでき、可変長プレフィックスの導入によりアドレスの効率化とルート集約(ルーティングテーブルの縮小)が可能になりました。たとえば /20 や /22 のように、8ビット単位に制約されない細かなサイズでネットワークを分割・割り当てできます。

CIDR導入以降、インターネットの公的な経路制御(BGPなど)はクラスレスのプレフィックスで運用されており、現在ではクラスフル方式は歴史的な概念として説明されることが多くなっています。

運用上の注意と現在の位置づけ

  • 「クラス」の概念は教育や一部レガシー機器の設定、あるいはネットワーク技術の基礎理解のために重要です。デフォルトゲートウェイや旧来の設定画面ではクラスフルの考え方が残ることがあります。
  • 実運用ではCIDR/VLSM(可変長サブネットマスク)が標準で、必要な規模に合わせて細かなサブネット設計を行います。プロバイダやRIR(地域インターネットレジストリ)による割り当てもCIDRに基づきます。
  • 特別なアドレス(ループバック、リンクローカル、ブロードキャスト、マルチキャストなど)はクラス判定とは別に管理されるため、単純なクラス範囲の認識だけで運用すると誤りを招きます。現在は RFC 6890 などで特別用途アドレスが整理されています。

実務でよくある誤解

  • 「クラスAのネットワークだから/8でなければならない」:実際の割り当てやルーティングはCIDRが主であり、/8 /16 /24 に限定されるわけではありません。
  • 「先頭オクテットの範囲だけで全て判断できる」:特殊用途の予約やIANA管理範囲、プライベートアドレス(RFC 1918)などがあるため、先頭オクテットのみで運用判断するのは危険です。

まとめ

クラスフル方式は、IPv4初期における単純で理解しやすいアドレス分類方式でした。しかしインターネットの拡大とアドレス資源の効率的利用の必要性から、1990年代にCIDRへ移行しました。現在は実務上ほとんど使われていませんが、ネットワーク設計や歴史的背景を理解するうえで基礎的な知識として重要です。また、特別用途アドレスやIANAの管理状況を踏まえて、CIDRを前提とした設計・割り当てを行うことが求められます。

参考文献