要約

  • Paul Robinsonの情報提供RFC 1375は、Cクラスのブロック全体を必要としない小規模サイト向けに、F、G、H、Kの各クラスを提案した。
  • 地域コードや機器の分類も構想されたが、橋渡し装置、ルーター、ソフトウェアが新しいローカル部の長さを扱えることが条件だった。Kクラスの文章定義と図は一致していない。

小さな組織にとっても大きすぎるブロック

RFC 1375が問題にしたのは、IPv4の32ビット空間が有限であることだけではない。既存クラスの固定サイズが、接続先の規模に合わない場合があった。RFC 1375はCクラスを最大254台のローカル機器に使えるものと説明し、4、5台の機器しか持たないサイトなら240を超えるアドレスが余ると論じた。小さな施設が増え、電話回線でつないでいた掲示板がTelnetやFTPで利用できるようになり、プリンター、ファクス、ポケットベルもネットワークにつながる未来を描いていた。

Paul Robinsonの案は、クラスの境界を書き直すことだった。Cクラスの先頭ビットを変え、その空間の一部をF、G、H、Kという新しいラベルに割り当てる。ローカル部は段階的に小さくなり、Fは接続先が概ね1~15アドレス、Hは7を超えない想定、Kは1、2アドレスのサイトを対象にした。これは固定クラスの設計であり、どんなプレフィックス長でも選べる一般的な規則ではない。

RFCの位置づけにも注意がいる。RFC 1375はInformationalであり、インターネット標準を定めないと自ら記している。実装方法がまだ利用できない可能性を認めながら、該当するアドレス空間の予約を提案した。ここから確認できるのは設計案の存在であって、割り当てや稼働の事実ではない。

ビットを確保しても互換性は生まれない

提案はビット列だけで完結しなかった。ブリッジ、ルーター、その他のハードウェアとソフトウェアが、末尾の8ビットを常にローカル部だと決めつけず、より短いローカル部を許すなら問題は起きない、とRFCは条件を付けた。小さなブロックを配るには、設定・転送・運用を担う装置が同じ意味でビットを読む必要がある。

文書にはもう二つの発想がある。一つは国際電話の番号に倣い、選んだビットを地域別のルーティングコードにする案だ。ただし筆者は、IP番号は本来どの場所も表さず、地域コードもルーティングに必須ではないと補足する。もう一つは、番号の一部でページャー、ファクス、ゲートウェイなど機器やサービスを示す発想だった。いずれも提案の中の推測であり、稼働したインターネットの機能を示す証拠ではない。

クラスKの説明では、規格文そのものの不整合も目に入る。本文は7ビットの接頭部を1101111とし、25ビットのネットワーク番号と1ビットのローカル部を記す。直後の図は110100という別の列と26ビットのネットワーク部を示す。両方が同じ形式を定義することはできない。この矛盾は公開RFCに残っているが、ここで集めた資料から実装の有無や歴史への影響までは分からない。

新しいクラスではなく可変長プレフィックスへ

同じ時期には別の対応策もあった。RFC 1338はプロバイダーへの階層的割り当てとスーパーネッティングを提案し、RFC 1366は登録機能とネットワーク番号空間の分散を扱った。1993年9月の標準化過程にあるRFC 1519はCIDRを記述する。プロバイダーのブロックから可変長マスクに基づいて割り当て、経路を集約する方式である。割り当てとルーティングプロトコルの変更が揃わなければ集約は機能しないとも説明した。

後の方法では、各番地が名前付きクラスや地域、機器種別を表す必要はない。境界を示すのはプレフィックスの長さになった。1995年にはRFC 1812がIPv4ルーターにサブネットとCIDRの対応を求め、RFC 1878がホスト単位の経路に至る可変長サブネットを表にした。これらは後に採用された規範的な表現を示すが、CIDRがRFC 1375を直接置き換えたことや、提案が標準化へ進まなかった理由までは示さない。

Heng LuのNote 48はここでの編集上のレンズにすぎない。IPアドレスを、記録の一貫性が求められる一意の数値ラベルとしてまず見る。その問いから、何をアドレス自身に持たせ、何を割り当て台帳、マスク、ルーティング、アプリケーションの名前に任せるのかが浮かぶ。RFC 1375はネットワーク規模に加えて地域や機器の意味もビットに託そうとし、CIDRは後に可変長プレフィックスと経路集約を軸にした。違いは小規模サイトが受け取る番地の数だけでなく、解釈の複雑さをどの層が担うかにあった。

出典