IETF がプライベート IP アドレス クラスとして 192.168/16 を特に選択したのはなぜですか?

IETF がプライベート IP アドレス クラスとして 192.168/16 を特に選択したのはなぜですか?

なぜインターネットエンジニアリングタスクフォース(IETF)192.168/16プライベート IP アドレス クラスを選択し、他のクラスを選択しませんか?

なぜ具体的に192.168/1610/8およびおよびであり、たとえば172.16/12ではないのですか145.243/16?

他のすべての可能性よりもこれらの IP アドレスがプライベート IP アドレスの標準として選択されたのには理由があるのでしょうか?

答え1

これらのアドレス範囲を誰が選んだかはわかっています。残念ながら、その人は亡くなっているので、正確に尋ねることはできません。なぜ彼がそれらを選んだのですが、私は十分な情報に基づいて推測することができます。

インターネットが本格的に普及し始めた1990年代半ば以前には、オンラインデートはあまり行われていませんでした。インターネットの歴史は、主にRFCそれを定義するものは、1969、ARPANET の始まりです。それらを通して、当時の最も優秀な頭脳によって設計された数台の原始的なメインフレームによる初期のネットワークから、今日では生活に欠かせないネットワークへとインターネットが進化していく様子を見ることができます。

この回答は、ほぼ完全にそれらの RFC から引用されており、一部はこの時代に私がインターネットを利用していた際の個人的な経験に基づいています。


まず、IETFはこれらのIPアドレス範囲やその他のIPアドレス範囲を選んだわけではありません。特別用途アドレスの割り当て現在そして常にの仕事インターネット割り当て番号機関

IANAは常に役割、特定の組織ではなく、その役割は一度だけ交代した。現在はICANNが担っているが、1972年からそれまで1998年の彼の死彼に代わる組織が設立されたとき、IANAは基本的に一人の人間だった。ジョン・ポステルもちろん、彼は最初にその役割を呼びましたソケット番号の皇帝彼が自ら引き受けた必要な仕事なぜなら、そうする必要があったからです。彼は、アドレス、プロトコル番号、ポートなど、割り当てられるほぼすべての番号の責任者になりました。それは、主に彼がそれをやる気があったからです。そして、インターネットが普及する頃には、公共商業に開放された彼は20年以上それをやっていた。彼は数字を割り当て、インターネットレジストリ(当時はSRI-NIC、これは拡大分散レジストリコレクション世界中で出版されました。

インターネットアドレスの割り当てリストを示したSRIの最後のRFCはRFC 11661990年からのものです。非常に長いリストなので、このデータがオンラインデータベースに移行されたのは驚くべきことではありません。RFC1117 の翻訳インターネットが一般に公開される何年も前の、当時のインターネットの拡大率を示しています。

これで、私たちはアドレス範囲を理解することができました。RFC1918 の翻訳少し良くなりました。これは実際にはRFCの2回目の改訂版です。最初の改訂版はRFC 1597は、ほぼ2年前の1994年3月に発表された。あまり知られていない反論では、RFC 1627では、プライベート アドレス空間に対する当時の議論が展開されました。RFC 1627 では、3 つのアドレス空間を誰が割り当てたかについても言及されています。

これらは、RFC 1597の著者の要請により、IANA、つまりジョン・ポステルによって割り当てられたものであり、RFC 1627の苦情を信じるならば、彼は通常の公開プロセスではなく、裏ルートで割り当てたことになる。RFC 1597自体は、いつもの前のインターネットドラフトこれもポステル氏によって裏ルートで承認された。当時RFC編集者でもあったしたがって、この質問に決定的に答えることは決してできないかもしれません。

さて、なぜ彼がこの3つのアドレス範囲を選んだのか、当時のIPアドレス範囲の割り当てが記載されていたSRIのRFC 1166と1117に注目してみましょう。どちらの場合も、ネットワーク10がまだ割り当てられていることがわかります。廃止されたARPANETは、1990年に閉鎖. Postel 氏は IANA としての役割を担っているため、この範囲は使用されておらず、再割り当てできることを知っています。Postel 氏がネットワーク 10 を選んだのは、それが使用可能であり、使用されていないことを知っていたためだと私は考えています。

同様に、ポステルが 192.168 を選んだのは、その選択を行った時点で、以前のクラス C スペースから割り当てられる次の利用可能な、またはほぼ次の利用可能なネットワークだったからだと思います。これはおそらく証明できませんが、RFC に示されているアドレス割り当てのペースから、割り当てが行われた 1993 年から 1994 年頃には、このあたりだったことが強く示唆されます。(192.159 のアドレスは、1992年192.160 ~ 192.167 の割り当てについては日付が不明です。これらは、ある時点で RIPE に再割り当てされたためです。

172.16 ~ 172.31 の場合、この質問に答えるのはさらに困難です。この範囲が選択された理由を示すものは何も見つかりませんでした。私が調べた限りでは、以前のクラス B スペースの割り当ては、まだそれほど高くありませんでした。IANA がダーツボードにダーツを投げたり、サイコロを振ったり、あるいは他の方法で自分の下半身から数字を引き出したのではないかと推測することしかできません。


最後に、ジョン・ポステルについて。この RFC はコミュニティからの (最初の) 意見なしに完全に形作られたように見えますが、ジョン・ポステルが IANA の役割を不適切に、または不公平に遂行したと言っているわけではありませんし、そう解釈すべきでもありません。彼は初期のインターネットに最も大きな影響を与えた人物の 1 人であり、今日でもインターネットの舞台裏の仕組みを垣間見るたびにその影響を感じますが、彼は常に仕事を正しく行うことに気を配っていました。一つの思い出:

管理や運営に栄光はありません。まったく逆です。下手なことは注目されますが、うまくいっているときはめったに褒められません。管理職の人は、しばしば下手な官僚になります。仕事にはほとんど報酬がないため、彼らはそれを人為的に権力の基盤にします。そのため、ジョンがインターネット番号の「皇帝」と呼ばれているのを聞いた人は混乱しました。彼らは、コミュニティがジョンにその称号を与えたのは、彼が不可欠なインフラ サービスに秩序をもたらしたことに深い感謝と愛情からだと気づいていませんでした。特に、コミュニティは、ジョンが自分の地位を個人的な権力の機会としてではなく信頼として受け入れたことを十分承知の上でその用語を使用しました。私たちは常に彼の意見が正当な信念から来ていることを知っていましたし、彼が何らかの形で政治的または個人的な利益を考えているのではないかと心配する必要もありませんでした。私たちは彼に同意しないかもしれませんが、正しいことが行われるようにという懸念が彼の原動力になっていることを常に知っていました。

答え2

当時はそれが理にかなっていたから?:-D

プライベート IP アドレス範囲が割り当てられていた当時、ネットワーク エンジニアが対処しなければならなかった問題がいくつかありました。当時の最も強力なルーターの中には、今日のポケット グラフ電卓と同程度の CPU パワーと RAM ストレージを備えたものもあり、今日のルーターの中には、昔のルーターをはるかに上回る性能を備えたものもあります (CPU 速度がキロヘルツで測定され、RAM ストレージが今日のようにギガではなくキロバイトで測定されていたことを覚えています)。インターネットは急速に成長し、IPv4アドレス空間は限られており、2000 年頃までに枯渇しそうでした。そのため、多くの IP アドレス範囲がすでに割り当てられており、プライベート範囲に再割り当てするためだけに企業に IP アドレス範囲の返却を求めることは避けたいと考えていました。また、企業がプライベート範囲をできるだけ簡単に扱えるようにしたいと考えていました。ネットワークをあちこちで 1 ダースか 2 ダースの範囲/IP アドレスに対応させるのに多額の投資をしなければならないとしたら、協力してくれる企業はほとんどなかったでしょう。

この部分は私の推測であることは認めますが、主に論理とネットワーク設定の経験に基づいています。おそらく、割り当てられていないすべてのネットワーク番号のリストを集めて、望ましい基準を満たす識別パターンを探したのでしょう。1つのクラスA(ネットワーク番号の上位ビットが0xxxxxxxバイナリであるネットワーク番号はクラスA)、16のクラスB(ネットワーク番号10xxxxxxバイナリ)、および256のクラスC(ネットワーク番号110xxxxバイナリ)アドレス。クラスBとCのアドレスはすべて連続した、同様に。(16と256の選択は、おそらく部分的には恣意的だった。しばらくこのことをやっていると、2の累乗で考え始める傾向がある。そして、おそらく部分的には、それが見つけることができたものだからだ。利用可能ご予約は下記まで。

おそらく、ルーター製造元は、利用可能なアドレスから最終的な範囲を選択し、これにより、ルーター製造元は、アドレスに対して単純なビット単位のテストを実行して、パケットをルーティング/転送/ドロップするかどうかを決定できます。ビット パターンには、コンパクトな NAT テーブルの構築にも役立つと思われる特性もいくつかあります。10.xyz アドレスは、1 つのネットワーク番号と一致するだけでよいため、明らかです。172.16.yz から 172.32.yz には、下位 4 ビットが上位 4 ビットを相互参照するテーブルを構築すると、範囲全体が 2 行に分割されることなく、テーブルの 1 行に収まるというパターンがあります。つまり、2 番目のオクテットは常に 0001xxxx (バイナリ) です。192.168.yz では、168 のバイナリは 10101000 です。つまり、下位 3 ビットは常に 0 で、上位 5 ビットは 1 と 0 が交互になります。

これらは恣意的に見えるかもしれませんが、マシン言語プログラミングやマイクロコードのデコードを行ったことがある人なら、このようなパターンを使用すると、最初に IP アドレス全体をデコードしなくても、数ビットだけをテストしてプライベート/パブリックを判断できることがわかるでしょう。これにより、ルータはメモリ内に膨大なルックアップ テーブルを保持することなく、このようなアドレスを迅速に処理できます。したがって、ルータはプライベート ネットワーク パケットを最初に完全にデコードせずにプライベート ネットワークに送り返すことができ、ルータとネットワークの速度から貴重なクロック サイクルを削減できます。

興味があれば、シリアルデータ伝送(シリアル) はデータの各バイトを処理します。制御クロックの速度で一度に 1 ビットのみを送受信でき、通常はパリティや「同期」ビットなどの追加ビットでデータをフレーム化します。1 バイト全体でパリティなどの計算を一度に行うのは時間がかかりすぎるため、代わりにクロック サイクルごとに特別なビットを維持します。そのビットは、送受信レジスタにシフトイン/シフトアウトされる次のビットによって変更されます。バイト全体が送受信されるとすぐに、パリティ ビットに残っている値は再計算しなくても正しい値になります。概念は多かれ少なかれ「他の作業と同時に作業を行う」というもので、シリアル チップの場合は、送受信と同時にパリティを計算します。ルーター/スイッチの場合、IP アドレスの各ビットが回線から入ってくるときに IP アドレスをデコードし、ネットワーク ケーブルからの読み込みが完了する前にパケットを次にどこに送信するかをすでに把握していれば、より高いパフォーマンスを得ることができます。

また、これは私が 25 年間この種の仕事をしてきたことに基づく単なる論理/推測です。最終的な数字が選ばれた理由が正確にわかるかどうかはわかりません。その理由を詳しく説明した論文や RFC などを私は覚えていません。私が見た中で最も近いのは、選ばれた範囲によって、企業が最小限の労力/投資/再設計で比較的簡単かつ効率的に使用できるはずだと示唆するコメントです。

答え3

の中に原始的なインターネット、現在10.0.0.0/8と表示されているネットワークは、アルパネットIETF と IANA がプライベート アドレス範囲の割り当てに取り掛かった頃には、ARPANET は廃止されており、以前のアドレス空間はプライベートで使用可能となっていました。

他の 2 つの範囲では、前述のクラス A に加えて、クラス B およびクラス C ネットワークがプライベート IP で利用できるようになりました。

答え4

192は2進数で11xxxxxxで始まり、クラスCネットワーク。連続する 2 つの 1 で始まる最小の数字です。クラス A の最上位ビットは 0 で、クラス B の最上位ビットは 10 です。

RFC1918 の翻訳プライベート IP 範囲を定義する RFC はこの点について明確に述べていないため、16 ビット ブロックに .168 が選ばれた理由について明確な答えはありませんが、これは RFC が 1996 年までリリースされず、すでに膨大な数の登録が行われていたためではないかと私は推測しています。192 はクラス C 割り当ての最初の 8 ビット ブロックであるため、多くのアドレスがすでに使用されていた可能性があります。168 が最初に利用可能だった可能性があります。

また、これらの選択の一部は恣意的であることにも留意してください。RFC1918 クラス B の範囲は 172.16 - 172.31 であることに注意してください。172 の理由はわかりませんが、100 万の連続したアドレス ブロック (1048576) を持つように 16 のクラス B を使用することを選択したことは間違いありません。

プロトコルは、そういうものである場合もあります。誰かが選択する必要があり、それを実行したのです。しばらくの間、Linux カーネルはシステムあたり最大 1024 個の CPU に制限されていましたが、一部のスーパーコンピューターで問題が発生したため、最終的にパッチを発行する必要がありました。1024 を使用することを決定した人は、値が必要だったことと、1024 が丸いこと以外に、おそらくそうする正当な理由はなかったでしょう。

関連情報