前のシリーズで、IPアドレス の世界を歩いた。最後に出会ったのは、組織の内側で使う住所(プライベートIP / 10.0.0.0/8 / 172.16.0.0/12 / 192.168.0.0/16)が、世界中の別の組織にも当たり前に並列して存在している、という設計だった。同じ 10.1.50.10 という番号が、ネットスミス社の中にも、別のA社の中にも、地球の裏側のB社の中にも、当たり前に立っている。重複していい設計だった。あなたの手元には『内側でだけ意味を持つ住所 / 境界の内側で重複が許される設計』の 1 行が残った。
けれど、その話には末尾に、ひとつの渇きも残されていた。
境界を越えるときは、別の仕組みで翻訳される。中身は、後の話。
この『後の話』に、本シリーズで正面から向き合う。素朴な問いから始めたい。
あなたの会社の OPS-PC01 の住所は 10.1.50.10。あなたが Web ブラウザで外のサイトを開く瞬間、行きのパケットは送信元 10.1.50.10、宛先は外のサーバの住所(たとえば 203.0.113.80)で旅立つ。もし、内側の住所のまま外に出ていったら、応答パケットは、どこへ戻ってくることになるだろう。世界中に 10.1.50.10 という同じ番号が、たくさん並列に立っているのに。
先に、ひとつだけ手土産を置いておきたい。
境界が、世界で一意な名前を貸して、そこから旅が始まる。


考えてみよう
本論に入る前に、5 秒だけ自分の頭で先に置いてみてほしい。あなたの会社の OPS-PC01 の住所は 10.1.50.10 だとする。もしこの住所のまま、外のインターネットへ出ていったら、応答パケットの宛先は何になるはずだろう。そして、世界中に 10.1.50.10 という同じ番号がたくさん立っていることを思い出すと、その応答はどこへ戻ってくることになるだろう。手探りで構わない、自分なりの予想を 5 秒だけ置いてみてほしい。この先で、その問いに正面から向き合う。
1. 内側の住所はどこで意味を持つのか
まず、前のシリーズで腹に置いた構造を、もう一度手元に戻したい。
組織の内側で使う住所には、決まった範囲がある。10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 の 3 つの範囲。あなたの会社の OPS-PC01 が 10.1.50.10 という住所を持っているのは、この範囲のひとつから配られたものだった。
この範囲が、内側でだけ意味を持つ住所として用意されていた。同じ 10.1.50.10 という番号は、地球上のたくさんの組織の内側に、当たり前に並んで立っている。あなたの会社にも、別のA社にも、地球の裏側のB社にも。同じ番号が、それぞれの組織の中で別の端末を指している。これは衝突ではない。「内側でだけ意味を持つ」という設計が、それを許している。
住所の意味は、置かれた場所で決まる。同じ番号でも、自分の組織の中で見るときは OPS-PC01 を指す。隣のA社の中で見るときは、別のPCを指す。それぞれが、それぞれの場所の中で意味を持っている。
ここまでが、前のシリーズで腹に置いた構造。
ところが、ここで小さな違和感が立ち上がる。
住所の意味が「内側だけで決まる」のだとしたら、外の世界に出ていくときは、その住所はどう振る舞うのだろう。外のインターネットには、たくさんの組織がいて、それぞれの中に同じ 10.1.50.10 が立っている。外から見たとき、「10.1.50.10」というラベルは、どこを指すのだろう。
ポイント:
プライベートIP(10.0.0.0/8 / 172.16.0.0/12 / 192.168.0.0/16)は、組織の内側でだけ意味を持つ住所として用意されている。同じ番号が世界中の別の組織に並列に立っているのは、衝突ではなく、内側だけで意味を持つ設計の核心。住所の意味は、置かれた場所で決まる。
2. 内側の住所のまま、外に出たら
ここで、思考実験をしてみたい。
OPS-PC01(10.1.50.10)が、外のWebサーバ(住所を 203.0.113.80 とする)を見に行こうとしている。行きのパケットは、送信元が 10.1.50.10、宛先が 203.0.113.80。この行きのパケットが、内側の住所のまま、外のインターネットへ出ていったとする。
外のWebサーバには、行きのパケットがそのまま届いた、と仮定する。宛先 203.0.113.80 は世界で一意な住所だから、外のルータが運ぶことができる。
では、応答パケットを返そうとする瞬間、外のWebサーバはどんな宛先を書くだろう。
応答の宛先は、行きの送信元と入れ替わる。行きの送信元が 10.1.50.10 だったから、応答の宛先は 10.1.50.10。素直に書けば、そうなる。
ここで、問いが立ち上がる。
「10.1.50.10」というラベルを宛先にしたパケットは、外のインターネットの中で、どこへ向かうのだろう。世界中の組織の内側に、同じ番号がたくさん並列に立っている。ネットスミス社の中にも、別のA社の中にも、地球の裏側のB社の中にも。
外のインターネットのルータは、応答パケットをどこへ運べばいいのか、決められない。
さらに、もっと根本的な事実もある。インターネット側のルータが持っている経路の地図は、プライベートIP の範囲(10.0.0.0/8 等)を、そもそも運ばない設計になっている。前のシリーズの最後にも、それは触れた。プライベートIP は、外には流さない。だから、内側の住所を宛先にしたパケットは、外の地図に載らない。早い段階で、どこへも届かないまま消える。
どちらの見方をしても、同じ結論にたどり着く。
内側の住所のまま外に出ていくと、応答の戻り先を一意に決めることができない。世界中に同じ番号が立っているから、戻る先が決まらない。
ここに、核心がある。住所の意味の射程と、応答の戻り先の不整合。この 2 つが、内側の住所がそのまま旅に出られない構造的な理由になっている。


ポイント: 内側の住所のまま外に出ると、応答の戻り先を一意に決めることができない。世界中に同じ番号が並列に立っているから、戻る先が決まらない。インターネット側のルートは、そもそも
プライベートIPの範囲を運ばない設計になっている。住所の意味の射程と、応答の戻り先の不整合が、内側の住所がそのまま旅に出られない構造的な理由。
3. だから境界が、世界で一意な名前を貸す
ここまでで、ひとつの素朴な事実が見えた。内側の住所のまま外に出ても、応答が戻ってこない。世界中に同じ番号が並んでいるから。
では、どうすれば旅が成立するのだろう。
ここから、設計の答えを置いていきたい。
組織の境界には、ルータが立っている。OPS-PC01 から外へ出ていくパケットは、すべてこの境界ルータを通る。境界ルータは、自分のために 2 つの顔を持っている。
ひとつは、内側に向けた顔。あなたの会社の社内ネットワーク側のインターフェースに、内側の住所(たとえば 10.1.1.254)を持っている。社内のルータや PC から見たときの、境界ルータの名前。
もうひとつは、外側に向けた顔。インターネット側のインターフェースに、世界で一意な住所(たとえば 203.0.113.1)を持っている。これは、内側でだけ意味を持つ住所ではない。世界で一意であることを前提にした グローバルIP の範囲から、正式に割り当てられた住所だ(ここでは説明用に RFC 5737 のドキュメント用範囲 203.0.113.0/24 を借りている。実環境では ISP / RIR から正式に割り当てられた本物のグローバルIPがそこに入る)。
境界ルータは、内側にも外側にも顔を持っている。内と外の両方に立っている。
ここから、境界での名乗り直しが起きる。
OPS-PC01 が外へ出ようとして、行きのパケットを送信元 10.1.50.10、宛先 203.0.113.80 で旅立たせる。このパケットが境界ルータを通る瞬間、境界ルータは送信元の住所を書き換える。10.1.50.10 から、自分の外側の顔である 203.0.113.1 へ。
書き換わったパケットは、送信元 203.0.113.1、宛先 203.0.113.80 で、外のインターネットへ旅立つ。ここに並ぶ住所は、どちらも世界で一意。インターネットのルータは、この行きのパケットを運ぶことができる。
外のWebサーバが応答を返そうとする瞬間、宛先には行きの送信元と入れ替わって 203.0.113.1 が書かれる。これは世界で一意な住所だから、応答パケットも外のインターネットを正しく旅して、境界ルータの外側の顔に届く。
境界ルータは、応答パケットを受け取った瞬間、宛先の住所を書き戻す。203.0.113.1 から、内側の OPS-PC01 の住所である 10.1.50.10 へ。
書き戻ったパケットは、送信元 203.0.113.80、宛先 10.1.50.10 で、社内ネットワークを旅して、OPS-PC01 に届く。
行きの瞬間に、境界が内側の住所を世界で一意な住所に名乗り直した。応答が境界に戻ってきた瞬間、境界が世界で一意な住所を内側の住所に書き戻した。境界での名乗り直しが、内と外を行き来する旅を成立させている。
ここで、ひとつだけ予告を残しておく。境界での名乗り直しが成立するためには、境界の手元に何かが残っているはずだ。その細部は、いまの一歩からはまだ届かない。次の問いとして、手元に残しておく。ここで受け取りたいのは、「境界での名乗り直しが、外との行き来を成立させている」という最上位の構造まで。


ポイント: 組織の境界に立つルータは、内側にも外側にも顔を持っている。外側の顔には、世界で一意な
グローバルIPが用意してある。外に出る瞬間、境界が行きのパケットの送信元を内側の住所から世界で一意な住所に書き換える。応答は世界で一意な住所宛で戻ってきて、境界が内側の住所に書き戻す。境界での名乗り直しが、内と外を行き来する旅を成立させている。
4. この仕組みに名前がある
ここまでで、核心が手元に揃った。
内側の住所はそのままでは旅に出られない。世界中に同じ番号が立っているから、応答の戻り先が一意に決まらない。だから境界が、外でも通用する世界で一意な住所を貸し出して、そこから旅が始まる。境界での名乗り直しが、内と外を行き来する旅を成立させている。
この仕組み全体に、名前がある。
NAT。Network Address Translation。直訳すれば、ネットワークの住所を翻訳する仕組み。
NAT は、特定のベンダーや特定の機種だけの言葉ではない。1990 年代の半ばに、インターネットに繋がる組織が増えていく中で、住所の不足とともに立ち上がってきた設計の名前で、いまでは家庭用ブロードバンドルータも、企業の境界ルータも、当たり前にこの仕組みを動かしている。
あなたが家で Wi-Fi ルータの設定画面を開くと、たいてい「WAN側IP」と「LAN側IP」という 2 つの欄が並んでいる。WAN側IP は、あなたの家のルータが外側に持っている世界で一意な住所。LAN側IP は、内側に向けた顔の住所。これが、ひとつの境界ルータが 2 つの顔を持っている姿そのもの。あなたの家の中の PC やスマートフォンは、内側の顔の向こう側で、内側だけで意味を持つ住所を使っている。外に出ていく瞬間、境界が世界で一意な住所に名乗り直して、外のインターネットへ送り出している。
企業のネットワークでも、同じ仕組みが動いている。境界ルータの外側に世界で一意な住所が用意されていて、内側の社員のPCが外のサイトを見るとき、その世界で一意な住所に名乗り直して旅立っている。
家庭でも会社でも、同じ設計の名前で動いている。それが、NAT。
ここまでの手土産は、ひとつの 1 行に集約される。
境界が、世界で一意な名前を貸して、そこから旅が始まる。
ポイント: 境界での名乗り直しという仕組み全体に、
NAT(Network Address Translation)という名前がある。家庭用ルータの WAN側IP / LAN側IP は、ひとつの境界ルータが 2 つの顔を持っている姿そのもの。家庭でも会社でも、同じ設計の名前で動いている。ここまでの手土産は『境界が、世界で一意な名前を貸して、そこから旅が始まる』の 1 行に集約される。
旅は、ここから始まる
冒頭で抱えていた渇きに、いま、自分の言葉で答えられる。
なぜ内側のIPはそのまま外に出られないのか。内側の住所は世界中に並列に立っているから、応答の戻り先を一意に決めることができない。インターネット側のルートは、そもそも プライベートIP を運ばない設計になっている。住所の意味は、置かれた場所で決まる。同じ番号でも、内側にいるときと、外で見られているときでは、振る舞いが違う。
だから境界に、外でも通用する世界で一意な住所が用意してある。境界ルータは内側にも外側にも顔を持っていて、外に出る瞬間にパケットの送信元を世界で一意な住所に書き換える。応答は世界で一意な住所宛で戻ってきて、境界が内側の住所に書き戻す。境界での名乗り直しが、内と外を行き来する旅を成立させている。
この仕組み全体には、NAT(Network Address Translation)という名前がある。家庭用ルータの WAN側IP / LAN側IP は、ひとつの境界ルータが 2 つの顔を持っている姿そのもの。家庭でも会社でも、同じ設計の名前で動いている。
明日、自分の手元に残るのは、次の 3 行だ。
「内側の住所(プライベートIP)はそのままでは外に出られない。世界中に同じ番号が並列に立っているから、応答の戻り先が決まらない」
「境界ルータは内側にも外側にも顔を持っていて、外に出る瞬間に内側の住所を世界で一意な住所に名乗り直し、応答が戻ったら元の住所に書き戻す」
「境界が、世界で一意な名前を貸して、そこから旅が始まる。この仕組み全体の名前が NAT」
明日、家のWi-Fiルータの設定画面を開いたら、「WAN側IP」と「LAN側IP」が並んでいるのを思い出してほしい。それが、ひとつの境界ルータが 2 つの顔を持っている姿そのもの。会社のPCで ipconfig を打って 10. / 172.16-31. / 192.168. のいずれかで始まる住所が出てきたら、それは内側でだけ意味を持つ住所。外のサイトで「what is my ip」と検索した結果に表示される住所は、境界が外側に持っている世界で一意な住所。同じあなたが、内と外で、別の名前で見られている。境界が、その 2 つを翻訳している。
本シリーズの旅は、ここから始まる。地図の端からは、まだ問いが見えている。
境界での名乗り直しは、外との一回の往復を、確かに成立させた。けれど、境界の手元には、その往復を支えるために何かが残っているはずだ。境界はそれをどう持ち続けているのだろう。そして、境界での名乗り直しは、いつもこの形で起きるものなのだろうか。
その問いには、次の話が正面から答えてくれる。
シリーズの旅は、始まったばかりだ。境界での名乗り直しの最初の手応えを、手元に残してほしい。次の世界では、境界での名乗り直しのもう少し細かい姿に出会っていく。