NAPT 同じ住所で共同生活するテクノロジー

試験
スポンサーリンク

ネットワークアドレスポートトランスレーション(NAPT)

NAPTは1994年にK.EgevangとP.Francisによって開発されたNetwork Address Translation (NAT)の拡張である。

家庭用ネットワークか企業ネットワークかを問わず、世界中で広く使用されています。

また、単純にポートアドレス変換(PAT)とも呼ばれることもある。リナックスにNAPTを入れたものはIPマスカレードと呼んだりするが基本的にそれもNAPTである。

NAPTはNATという技術から発展したものであるので概念的にはNATの一種ということになる。

余談だがこのコンセプトはK.EgevangとP.Francisがそれぞれ通信の世界的最大であるBell Communications Research(電話でお馴染みベル社だ)とCisco Systems(シスコ)に在籍していたときに概説されたものだ。

NAPTはなぜ必要?

NAPTはIPv4アドレスの不足に対処するために開発されたといえる。NAPTによりローカルネットワーク上の複数のデバイスが単一のパブリックIPアドレスを共有できるようにできるのだ。

一軒家だらけの土地が限られているところに縦長のアパートを大量に建てることを可能にしたようなもので、NAPTはIPv4アドレス空間の寿命を大幅に延ばした。

スポンサーリンク

先行技術NATのNAPTとの違い

基本的なNATはIPアドレスだけを変換するが、NAPTはTCPやUDPポート番号のようなトランスポート識別子番号も変換することでこれを拡張できる。

略語の文字だけ見てもわかるかもしれないが、NATからNAPTでPが増えているのはそういうことです。

技術的には、送信パケットのIPアドレスとポート番号の両方を変更し、応答が戻ってきたときにローカルネットワーク上の正しいデバイスにデータを送信できるように、変換テーブルを維持します。これによりプライベート・ネットワーク上の複数のデバイスを異なるポートを持つ単一のパブリックIPアドレスにマッピングできるようになり、IPアドレスをより効率的に使用できるようになるわけです。

具体的説明

まず基本的なコンセプトを理解しましょう。何度も言うように、NAPTはローカルネットワーク上の複数のデバイスが1つのパブリックIPアドレスを共有することを可能にします。

これはアウトバウンド接続を追跡し各パケットのIPヘッダー内のソースIPアドレスとポート番号を変更することで実現します。応答が戻ってくると、NAPTは宛先ポート番号を使用してパケットを転送するローカルネットワーク上のデバイスを決定します。

ローカルネットワーク上のデバイスがアウトバウンド接続を行うと、NAPTはその接続に一意のポート番号を割り当て、変換テーブルにエントリを作成します。このエントリは、ローカルIPアドレスとポート番号をパブリックIPアドレスと割り当てられたポート番号にマッピングします。

その後、NAPTはパケットのIPヘッダー内の送信元IPアドレスとポート番号を変更し、パケットをインターネットに送信します。

応答が返ってくると、NAPTは変換テーブルで宛先ポート番号を調べパケットのIPヘッダーの宛先IPアドレスとポート番号を変更し、パケットを適切なデバイスに転送します。

こういった過程を踏んで例えば家庭用ルーターは通常NAPTを使用して、ホームネットワーク上のすべての機器がISP(インターネットサービスプロバイダー)から提供される単一のパブリックIPアドレスを使用してインターネットに接続できるといった日常のネットワークの便利さが実現している訳です。

スポンサーリンク

NAPT関連用語

IPヘッダー: インターネット・プロトコル(IP)通信では、IPヘッダーはデータ・パケットの接頭辞で、パケットに関する情報を含み、ルーティングと配信を容易にします。

送信元と宛先のIPアドレス、TTL(Time-to-Live)、その他の制御情報などのフィールドが含まれます。IPヘッダーは、エラーチェックやその他のネットワークアクティビティに必要な情報を提供しながら、パケットを宛先まで誘導する重要な役割を果たします。

パブリックIPアドレス: パブリックIPアドレスは、インターネット全体で一意に識別可能なIPアドレスです。

これらのアドレスはインターネット割り当て番号機関(IANA)によって割り当てられ、ルーティング可能です。パブリックIPアドレスは、ウェブサーバー、DNSサーバー、ネットワークルーターがグローバルインターネットとのインターフェースに使用します。

アウトバウンド接続: アウトバウンド接続とは、内部ネットワークから外部ネットワークに接続することを指します。

例えば、ウェブサイトを閲覧する場合、デバイスはそのサイトをホストしているウェブサーバーへのアウトバウンド接続を開始します。一般的な家庭や企業環境では、アウトバウンド接続は通常デフォルトで許可されていますが、外部ネットワークからのインバウンド接続はセキュリティ上の理由から制限されている場合があります。

タイトルとURLをコピーしました