NATとポート — 家の住所を1つの公開住所にまとめる

概要 — まず全体をつかむ

初級ではNATを「家の住所を1つの公開住所に付け替える仕組み」と捉えました。中級では、どうやって複数機器を1つの住所に多重化するのかを、ポート番号の仕組みから見ます。

詳細 — 1段階ずつ追う

これは何をする係?

家庭用ルーターが実際に行うのは、単なるIP変換ではなくNAPT※1(IPマスカレード)です。IPアドレスとポート番号の組で通信を区別し、複数機器を1つの公開IPに多重化します。

  • 各機器の「プライベートIP+ポート」を、「公開IP+別のポート」に付け替える
  • どの通信をどの機器へ戻すかを、変換表に記録しておく
  • だから公開IPが1つでも、家族の通信が混ざらずに並行できる

登場人物メモ:

  • ※1 NAPT/IPマスカレード — IPとポートの組で複数機器を1つの公開IPに束ねる方式
  • ※2 ウェルノウンポート — 用途が決まった若い番号(80=HTTP、443=HTTPS など)
この部分をもっと深く(上級

家庭用ルーターが行うのはNAPT(IPマスカレード)でした。その心臓部が変換表です。1エントリは単なる1対1ではなく、5つの組(5タプル)で通信を識別します。

  • プロトコル(TCP/UDP)
  • 内側の 送信元IP+ポート
  • 外側の 送信元IP+ポート(ルーターが割り当てた公開側)
  • 宛先IP+ポート

ポート番号はトランスポート層の概念で、どの層が何を担うかは ネットワークの階層 で押さえられます。返信が来ると、ルーターは宛先の公開IP+ポートを鍵に変換表を引き、内側の本来の相手へ戻します。

アニメーション『IPアドレスとポート番号』を開く
届いたパケット宛先IP203.0.113.5宛先ポート443宛先IP → 建物宛先ポート443 → この窓口🏢 サーバ(1台)= 1つのIPアドレス203.0.113.580HTTP(Web・平文)443HTTPS(Web・暗号化)25SMTP(メール)22SSH(遠隔操作)同じ窓口でも「運び方」は2種類TCP 確実に届ける(再送・順序保証)UDP 速さ優先(確認を省く:通話・動画)
アニメーション『NAT(プライベートIPを公開IPに変換)』を開く
NAT — 私設IPを1つの公開IPに変換して外へ家庭内ネットワーク(192.168.x.x)端末1(家の中)192.168.1.11端末2(家の中)192.168.1.12端末3(家の中)192.168.1.13ルーター(NAT)私設IP → 公開IPに付け替え戻りは変換表で送信元=203.0.113.5インターネットNAT変換表(ポート番号で「誰宛てか」を区別)内側(私設IP : ポート)外側(公開IP : ポート)192.168.1.11 : 52001203.0.113.5 : 40001192.168.1.12 : 49770203.0.113.5 : 40002192.168.1.13 : 51234203.0.113.5 : 400031つの公開IP(203.0.113.5)を家じゅうで共有。ポート番号が違うから戻りも取り違えない

ここから「外から始まる通信が入れない」理由がはっきりします。変換表のエントリは内側発の通信でしか作られないからです。外から突然来たパケットには対応するエントリがなく、ルーターは戻し先を決められないため破棄します。これは欠陥ではなく、結果として簡易なファイアウォールとして働き、VPC のプライベート側の設計思想にもつながります。

やさしく言うと(初級

家の中のスマホ・PC・テレビは、それぞれプライベートIP※1(家の中だけの住所)を持っています。でも、そのままでは外の世界に出られません。

外に出るときは、ルーターが1つの公開IP※2(世界に通じる住所)に付け替えます。これがNAT※3です。家族みんなが、1つの表札を共有して外とやり取りするイメージです。

登場人物メモ:

  • ※1 プライベートIP — 家の中だけで通じる住所(192.168.x.x など)。外には出ない
  • ※2 公開IP(グローバルIP) — 世界に通じる住所。回線に1つ割り当てられる
  • ※3 NAT — 家の中の住所を、外向けの公開住所に変換する仕組み

仕事の流れ

  1. 内側の機器が、外のサーバへ通信を始める(プライベートIP+ポート)
  2. ルーターが送信元を公開IP+割り当てたポートに書き換え、変換表に控える
  3. サーバは公開IP+そのポート宛に返事を返す
  4. ルーターは変換表を照合し、正しい内側の機器へ戻す
アニメーション『NAT(プライベートIPを公開IPに変換)』を開く
NAT — 私設IPを1つの公開IPに変換して外へ家庭内ネットワーク(192.168.x.x)端末1(家の中)192.168.1.11端末2(家の中)192.168.1.12端末3(家の中)192.168.1.13ルーター(NAT)私設IP → 公開IPに付け替え戻りは変換表で送信元=203.0.113.5インターネットNAT変換表(ポート番号で「誰宛てか」を区別)内側(私設IP : ポート)外側(公開IP : ポート)192.168.1.11 : 52001203.0.113.5 : 40001192.168.1.12 : 49770203.0.113.5 : 40002192.168.1.13 : 51234203.0.113.5 : 400031つの公開IP(203.0.113.5)を家じゅうで共有。ポート番号が違うから戻りも取り違えない
やさしく言うと(初級

理由は、世界の住所(IPv4)が足りないからです。

  1. インターネットの住所(IPv4)は数に限りがあり、機器全部に配れない
  2. そこで家の中は使い回しの住所(プライベートIP)で済ませる
  3. 外向けには、回線の公開IPを家族で共有する
  4. 誰宛の返事かは、ルーターが変換表を見て正しい機器へ返す

こうして、限りある住所を無駄なく使い回しています。

ポート番号の仕組み

ポート番号は0〜65535の範囲で、「同じ機器の中のどの窓口宛か」を表します。

  • ウェルノウンポート(0〜1023)— 用途が固定。80=HTTP、443=HTTPS、25=メールなど
  • 送信元側は、空いている大きな番号を一時的に使う(エフェメラルポート)
  • 「IP=建物、ポート=部屋」で、通信は必ずIP+ポートの組で相手を指す
アニメーション『IPアドレスとポート番号』を開く
届いたパケット宛先IP203.0.113.5宛先ポート443宛先IP → 建物宛先ポート443 → この窓口🏢 サーバ(1台)= 1つのIPアドレス203.0.113.580HTTP(Web・平文)443HTTPS(Web・暗号化)25SMTP(メール)22SSH(遠隔操作)同じ窓口でも「運び方」は2種類TCP 確実に届ける(再送・順序保証)UDP 速さ優先(確認を省く:通話・動画)

内側から始めた通信は戻れるが、外からは入れない——これがNATの重要な性質です。変換表は内側発の通信で作られるため、外部から突然来た通信は戻り先が分からず、原則届きません。この「外から入れない」性質が、結果として簡易な防御にもなり、VPC のプライベート側やNATゲートウェイの設計につながります。

外から特定機器へ通したいときは、ポートフォワーディングを使います。「この公開ポート宛は、この内部機器のこのポートへ」と、変換表に固定の穴を開けて通す設定です。

一往復を通しで追うと、変換表がどこで作られ、どこで逆引きされるかが見えます。

アニメーション『NATの変換(内→外→戻り)』を開く
内部端末ルータ(変換表)外部サーバ
  • 内部端末家の中の機器。プライベートIP(192.168.x)で通信を始める側
  • ルータ(変換表)内部アドレスと公開IP:ポートの対応を変換表で管理し、書き換えと復元を担う
  • 外部サーバ外側の相手。内部端末の存在は知らず、公開IPだけを見ている
「▶ 再生」で通しで見るか、「次へ」で1手ずつ進めてください。
0 / 6
やさしく言うと(初級

住所(IPアドレス)が「建物」なら、ポート※4は「その中の部屋番号」です。

  • 同じ機器でも、Web宛・メール宛などをポートで見分ける
  • ルーターは「どの機器の・どのアプリ宛か」を、住所とポートの組で管理する
  • だから1つの公開IPでも、家族の通信がごちゃ混ぜにならない

登場人物メモ:

  • ※4 ポート — 同じ機器の中の窓口番号。どのアプリ宛かを表す
アニメーション『NAT(プライベートIPを公開IPに変換)』を開く
NAT — 私設IPを1つの公開IPに変換して外へ家庭内ネットワーク(192.168.x.x)端末1(家の中)192.168.1.11端末2(家の中)192.168.1.12端末3(家の中)192.168.1.13ルーター(NAT)私設IP → 公開IPに付け替え戻りは変換表で送信元=203.0.113.5インターネットNAT変換表(ポート番号で「誰宛てか」を区別)内側(私設IP : ポート)外側(公開IP : ポート)192.168.1.11 : 52001203.0.113.5 : 40001192.168.1.12 : 49770203.0.113.5 : 40002192.168.1.13 : 51234203.0.113.5 : 400031つの公開IP(203.0.113.5)を家じゅうで共有。ポート番号が違うから戻りも取り違えない

⚠️ うまくいかないとき

  • 外部発が届かない — サーバ公開やオンラインゲームで、ポートフォワーディング未設定
  • 二重NAT — NATが2段になり、ポート変換が二重で不安定になる
  • ポート枯渇 — 大量の同時接続で、割り当てる一時ポートが足りなくなる
  • 戻り待ちの打ち切り — 変換表のエントリが時間切れで消え、長時間無通信の接続が切れる

住所を見た経路判断と変換をまとめて担うのが ルーター です。名前からIPを引く側は DNS が担当します。

この部分をもっと深く(上級
  • 対称NAT同士でP2P不成立 — STUNが効かずTURN中継に頼るしかなく、遅延と中継コストが増える
  • CGNAT配下でポート開放不能 — 家庭側の設定が上位NATに阻まれ、サーバ公開ができない
  • UPnPの開けっぱなし — アプリやマルウェアが開けた穴が残り、意図しない口が外に晒される
  • ポート枯渇 — 大量同時接続やCGNAT共有で、割り当てる一時ポートが尽きて新規接続が張れない
  • 変換表のタイムアウト — 長時間無通信のエントリが消え、P2Pや常時接続がある日突然切れる
やさしく言うと(初級
  • 外から入れない — NATは「中から始めた通信」しか通さない。外からの呼び出しは基本届かない
  • 二重NAT — ルーターが2段になり、変換が二重で通信不良になる
  • 住所の重複 — 家の中の住所を配り間違えると、機器同士がぶつかる

住所の付け替えを担うのは ルーター です。名前とIPの変換を担う DNS とセットで覚えると、外への出口がつかめます。

理解度チェック

そのまま解けます(成績は保存されません)。無料アカウントを作ると、学習の記録と進捗の山登りが始まります。

1. 本文で挙げられている、HTTPSが使うウェルノウンポートの番号を答えてください。

2. 通信の送信元側が、空いている大きな番号を一時的に使う、そのポートの呼び名を答えてください。

3. NAT配下の家庭内サーバに、外部から通信を届けたいとき使う設定はどれ?

4. 家庭用ルーターが1つの公開IPで複数機器を同時に通信させられるのは、何を使って区別しているから?

5. 本文でのポート番号の説明として正しいのは?

6. NATで「内側からは戻れるが、外からは入れない」のはなぜか、本文の説明として正しいのは?

7. 本文が挙げる「二重NAT」とはどんな状態か?

8. 「長時間無通信の接続がある日突然切れる」原因として、本文が挙げるのは?