ほとんどのホームルーターは、PATと呼ばれる特別なNATを使用します。
また、NAPTまたはIPマスカレーディングとも呼ばれます。後者の3つの用語はすべて、一般的な使用において同じことを意味します。(頭字語-ネットワークアドレス変換/ポートアドレス変換/ネットワークアドレスポート変換)
パケットが内部マシンから送信されると、送信元アドレスが認識されているように書き換えられます。送信元ポートも変更され、通常は大きな番号になり、ルーターはアドレス変換テーブルを保持します。
たとえば、www.google.comにアクセスするクライアントマシンがあるとします。コンピューター(たとえば、192.168.1.100)はそのアドレスを検索し、ランダムソースポートを使用して、内部IPアドレスからポート80で72.14.204.147へのTCP接続を確立します。
コンピューターへの接続は次のようになります。
192.168.1.100:37641 <--> 72.14.204.147:80
コンピューターはパケットをルーターに送信し、ルーターは新しいランダムな高ポートを選択してパケットを書き換えます。各アウトバウンド接続は、ルーター上の独自のポートを取得します。ルーターは、パケットを接続テーブルに追加した後、ISPに転送します。
PrivateIP PrivatePort PublicIP PublicPort Remote RemotePort
------------- ---------- ----------- ----------- ---------- -----------
192.168.1.100 37641 *10.6.23.5 59273 72.14.204.147 80
*例として、10で始まるアドレスを使用しましたが、これらはパブリックにルーティングできません。また、テーブルはいくぶん単純化されています。
グーグルへの接続は次のようになります。
10.6.23.5:59273 <--> 72.14.204.147:80
Googleはポート59273で10.6.23.5に応答を送信します。ルーターはテーブルでその情報を検索し、パケットを192.168.1.100:37641に転送します。
www.google.com
、最初の要求を送信しなかった場合にどのように検索されるかを説明していません。私が最初にルータを介して要求を送信した場合、他の言葉では、メッセージは、ルータを経由して私に達することができる