NAT と NAPT の違い|プライベート IP がインターネットに出られる仕組み
NAT と NAPT の違いを一言で: NAT は「IP アドレスだけを変換」、NAPT は「IP アドレス + ポート番号を変換」する仕組み。家庭の WiFi ルーターが使っているのは正確には NAPT(別名: IP マスカレード)です。
なぜ IP アドレスを変換する必要があるのか
インターネットには「グローバル IP アドレス」という世界で唯一の住所が必要です。 しかしグローバル IP は数が限られており、家庭の各端末ごとに割り当てることはできません。
そこで考えられたのが「家の中ではプライベート IP(誰でも自由に使える IP)を使い、外に出るときだけグローバル IP に変換する」という仕組みです。これが NAT/NAPT です。
[家の中] [外]
PC 192.168.1.10
スマホ 192.168.1.11 ←→ ルーター ←→ インターネット
TV 192.168.1.12 (プライベート IP → グローバル IP に変換)
NAS 192.168.1.13
NAT(基本形)
NAT(Network Address Translation) は、プライベート IP とグローバル IP を 1 対 1 で対応させる方式 です。
社内 192.168.1.10 ⇔ グローバル 203.0.113.5
社内 192.168.1.11 ⇔ グローバル 203.0.113.6
社内 192.168.1.12 ⇔ グローバル 203.0.113.7
各端末ごとに異なるグローバル IP が必要なため、グローバル IP の節約にはなりません。 そのため家庭で使われることはほぼなく、企業の特定用途で使われる程度です。
NAPT(家庭で使われる方式)
NAPT(Network Address Port Translation) は、IP アドレスに加えて ポート番号も変換する方式 です。 ポート番号によって複数の端末を区別するため、1 つのグローバル IP を複数の端末で共有できます。
「IP マスカレード」や「PAT(Port Address Translation)」と呼ばれることもあります。
PC 192.168.1.10:5000 ⇔ 203.0.113.5:20001
スマホ 192.168.1.11:5000 ⇔ 203.0.113.5:20002
TV 192.168.1.12:5000 ⇔ 203.0.113.5:20003
ポート番号で区別することで、1 つのグローバル IP を多数の端末で共有できます。 家庭の WiFi ルーター・モバイル回線のほぼすべてが NAPT を使っています。
NAT(NAPT)の動作例
家庭の PC が Google にアクセスする場合の流れ:
[1] PC が「google.com に接続したい」と送信
送信元: 192.168.1.10:54321
宛先: 142.250.196.78:443
[2] ルーターが NAPT 変換
送信元: 203.0.113.5:60001 (ルーターのグローバル IP)
宛先: 142.250.196.78:443
→ ルーターの内部テーブルに対応関係を記録
192.168.1.10:54321 ⇔ 203.0.113.5:60001
[3] Google からの応答が届く
宛先: 203.0.113.5:60001
[4] ルーターがテーブルを引いて変換
宛先: 192.168.1.10:54321 へ転送
ルーターは「どの端末がどの通信をしているか」をテーブルで記憶し、戻ってきたパケットを正しい端末に届けています。
NAPT のメリット
グローバル IP を節約できる
家庭の数百〜数千台の端末が、たった 1 つのグローバル IP を共有できます。
簡易ファイアウォール効果
NAPT のテーブルにない通信は、ルーターから内側の端末に届きません。 これは結果的に「外からの不正アクセスを遮断する」効果になります。 完全なファイアウォールではありませんが、家庭で守られる最低限のセキュリティとして機能しています。
NAPT のデメリット
外部から個別の端末にアクセスしにくい
家庭の PC・NAS に外部からアクセスしたい場合(自宅サーバー・リモート接続)、NAPT がそのまま外からの接続を遮断します。 これを通すには ポート開放(ポートフォワーディング) という設定が必要です。
→ 詳しくはポート開放のやり方を参照
ピアツーピア通信の難しさ
VoIP(IP 電話)・オンラインゲーム・P2P アプリケーションは、NAPT 越しの通信に工夫が必要になることがあります。 UPnP という仕組みで自動的に設定する方法もありますが、機種によっては手動でポート開放する必要があります。
IPv6 では不要
IPv6 はアドレス数が事実上無制限のため、すべての端末に個別のグローバル IP を割り当てられます。 NAPT が不要になることで、ピアツーピア通信が大幅に簡単になります。
NAPT セッションテーブルの注意点
家庭のルーターは NAPT のテーブルを限られたメモリで管理しているため、 同時に発生する通信が多すぎる とテーブルが溢れて通信が不安定になることがあります。
- IoT 機器を大量に接続している
- P2P 系のアプリで多くの通信が発生している
といった環境で速度低下や接続切れが起きる場合、ルーター本体の性能(同時セッション数)が原因のことがあります。 新しいルーターほど大きなテーブルを持っているため、買い替えで改善することもあります。
よくある質問
Q. プライベート IP に使える範囲は?
A. RFC 1918 で次の範囲が定義されています。
- 10.0.0.0 〜 10.255.255.255
- 172.16.0.0 〜 172.31.255.255
- 192.168.0.0 〜 192.168.255.255
家庭では「192.168.x.x」が多く使われ、企業の大規模ネットワークでは「10.x.x.x」が使われる傾向があります。
Q. 二重 NAT とは?
A. ルーターが 2 段階で NAPT を行う構成です。 HGW(NTT のホームゲートウェイ)と市販ルーターを両方ルーターモードで使っている場合に発生します。通信に問題が出ることがあるため、市販ルーターはブリッジモードにするのが一般的です。
→ 詳しくはHGW の機能解説を参照
まとめ
- NAT: IP アドレスだけを変換する。家庭ではほぼ使われない
- NAPT(IP マスカレード): IP + ポート番号を変換する。家庭・モバイルで使われる主流
- グローバル IP を節約でき、簡易ファイアウォール効果もある
- 外部から内部に接続したい場合はポート開放が必要
関連記事
関連記事
DHCP とは|IP アドレス自動配布の仕組みを初心者向けに
DHCP(動的ホスト構成プロトコル)の仕組みを現役ネットワークエンジニアが解説。IP アドレスが自動で割り当てられる流れ、リース期限、固定 IP との使い分けまでをわかりやすくまとめます。
DNS とは|仕組みを初心者向けに図解で解説
DNS(ドメインネームシステム)の仕組みを現役ネットワークエンジニアが初心者向けに解説。名前解決の流れ、キャッシュの仕組み、DNS が遅いときの対処法までまとめます。
MAC アドレスとは|IP アドレスとの違いを初心者向けに解説
MAC アドレスの仕組みと IP アドレスとの違いを現役ネットワークエンジニアがわかりやすく解説。MAC フィルタリング・ランダム MAC アドレスのプライバシー機能まで家庭視点で解説します。
MTU と MSS の違い|通信が遅いときに知っておきたいパケットサイズの話
MTU と MSS の違いを現役ネットワークエンジニアが初心者向けに解説。IPoE 環境でなぜ MTU の調整が必要なのか、フラグメント化が起きる仕組み、家庭で確認する方法をまとめます。