ネットワーク

NAT(Network Address Translation)とは

2020年1月26日

NAT(Network Address Translation)

NAT(Network Address Translation:ネットワークアドレス変換)とは、IPアドレスを変換する技術です。具体的には「プライベートIPアドレス」を「グローバルIPアドレス」に変換します。

グローバルIPアドレス

上記図は左側が「プライベートネットワーク」、右側が「インターネット」をあらわしています。「プライベートネットワーク」と「インターネット」の間にはブロードバンドルータがあり、インターネットサービスプロバイダ(ISP)を利用しているとよくある一般的な形です。

プライベートネットワーク内のコンピュータには「プライベートIPアドレス」、インターネット上での通信には「グローバルIPアドレス」が使用されます。

この「プライベートIPアドレス」と「グローバルIPアドレス」を変換する仕組みがNAT(Network Address Translation)です。

スポンサーリンク

グローバルIPアドレスとは

グローバルIPアドレスとは、インターネット上で通信するために使用するIPアドレスです。

グローバルIPアドレスは、インターネット上で通信しているコンピュータ(ネットワーク機器)を識別するためのアドレスであり、世界中で必ず一意(重複してはいけない)な値が設定されます。

プライベートIPアドレスとは

プライベートIPアドレスとは、家庭や会社などの組織内のネットワーク(プライベートネットワーク)でのみ使用されるIPアドレスです。

プライベートネットワーク内であればプライベートIPアドレスで通信することができます。しかし、プライベートIPアドレスでは、インターネット上で通信はできません

プライベートIPアドレスが登場した背景には、IPv4の「IPアドレス枯渇問題」があります。IPアドレス枯渇問題とは、IPアドレスの数が足りなくなるという問題です。

プライベートIPアドレスイメージ図

世界中で重複しないように割り当てる必要があるグローバルIPアドレスとは違い、プライベートIPアドレスは、組織内(プライベートネットワーク)で重複しなければよいのです。

上記図のように「プライベートネットワークA」と「プライベートネットワークB」のコンピュータには同じプライベートIPアドレスが付与されています。このようにIPアドレスを節約できる仕組みがプライベートIPアドレスです。

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

NATの仕組み

NATの仕組みは、プライベートネットワーク内のコンピュータがインターネット上にアクセスする際に、「プライベートネットワーク」と「インターネット」の間にあるブロードバンドルータが「プライベートIPアドレス」を「グローバルIPアドレス」に変換します。

プライベートIPアドレスでは、インターネット上で通信はできません。NAT機能でプライベートIPアドレスをグローバルIPアドレスに変換することでインターネットに接続することができます。

スポンサーリンク

ただし、NAT機能はあくまでもプライベートIPアドレスとグローバルIPアドレスを1対1で変換するもの。同時にアクセスしたい場合は、端末の数だけグローバルIPアドレスが必要です。

この問題点を解消したアドレス変換の仕組みがNAPT(Network Address Port Translation)です。

NAPT(Network Address Port Translation)

NAPT(Network Address Port Translation)とは、NATの問題点を解消したネットワークアドレス変換技術です。別名 PAT(Port Address Translation)や IPマスカレードと呼ばれています。

NAPTの仕組み

NATの仕組みでは「プライベートIPアドレス」を「グローバルIPアドレス」に変換していました。

NATの問題を解消したNAPTでは、プライベートIPアドレスとグローバルIPアドレスの1対1の変換に加え、ポート番号も変換してプライベートIPアドレスとグローバルIPアドレスを多対1に変換することを可能としています。

上記のイメージ図では、次の通りにアドレス変換し複数のコンピュータがインターネットに接続しています。

変換前のプライベートIPアドレス変換後のグローバルIPアドレス変換後のポート番号
192.168.10.2202.10.101.1120000
192.168.10.3202.10.101.1120001

※IPアドレスとポート番号はあくまでも例です。

helpful