NAT・NAPTとIPアドレスって?

ネットワークアドレス変換(NAT:Network Address Translation)とは

ネットワークアドレス変換(NAT:Network Address Translation)とは、その名の通り、IPアドレスを別のIPアドレスに変換する技術のことです。

プライベートIPアドレス(ローカルIPアドレス)を割り当てられたコンピュータに対し、プライベートIPアドレスとグローバルIPアドレスを変換して、インターネットにアクセス可能にする際に使われることの多い技術です。

 

ネットワークアドレス変換(NAT:Network Address Translation)の仕組み

グローバルIPアドレスとプライベートIPアドレスとは」で解説した通り、プライベートIPアドレスではインターネットにアクセスすることができません。
ここでは、NATの機能を持つブロードバンドルータを想定して解説します。
ブロードバンドルータはプライベートネットワークとインターネットの2つのネットワークを繋いでいます。

プライベートIPアドレスを割り当てられたコンピュータがインターネット上にあるWebサーバにアクセスしようとしたとします。ブロードバンドルータは、コンピュータに割り当てられたプライベートIPアドレス(下図では192.168.0.15)を、ブロードバンドルータが保持しているグローバルIPアドレス(下図では198.51.100.20)に変換してリクエストを送信します。
Webサーバはブロードバンドルータの持つグローバルIPアドレスに対してレスポンスを送信します。
レスポンスデータを受け取ったブロードバンドルータは、宛先をコンピュータのプライベートIPアドレスに変換して送信します。
これによって、プライベートネットワーク上のコンピュータとインターネット上のWebサーバとの通信が成立します。

 

ネットワークアドレス変換(NAT:Network Address Translation)の弱点

NATの仕組み上、グローバルIPアドレスとプライベートIPアドレスは1対1で変換されます。
仮に、コンピュータ(A)とコンピュータ(B)に対して同時にNATを行った場合を考えると、グローバルIPアドレスをプライベートIPアドレスに変換する時、どちらに変換すればいいのかわかりません。この点がNATの弱点だといえます。

 

NATとNAPT(Network Address Port Translation)の違い

NAPT(Network Address Port Translation)とは、その名の通り、アドレスに加えてポート番号も変換するという技術の事です。
プライベートIPアドレスをグローバルIPアドレスに変換する際、加えてポート番号も変換します。この時、プライベートIPアドレスごとに異なるポート番号に変換するのです。

例えば、コンピュータ(A)発の通信はポート番号を100、(B) 発の通信はポート番号を200に変換することにします。すると、Webサーバから、グローバルIPアドレスは同じですが、異なるポート番号宛にデータが戻ってきます。
ブロードバンドルータはポート番号を手がかりとしてグローバルIPアドレスをプライベートIPアドレスに変換することができます。これによってグローバルIPアドレス1つと複数のプライベートIPアドレスを変換することができるようになりました。

 

まとめ

・ネットワークアドレス変換(NAT:Network Address Translation)とは、IPアドレスを変換する技術のこと。
・プライベートネットワーク上からインターネットにアクセスする際に使われる。
・NAPT(Network Address Port Translation)は同時に1対多のIPアドレス変換が可能。