![]() |
|
≪ previous |
※1 |
NAPT(Network Address Port Translation:ネットワークアドレスポート変換) 『1 対 1』の変換を行うNAT(Network Address Translation)を拡張した機能。 IPアドレスとポート番号を変換対象とすることで、『1 対 多』(1つのグローバルIPアドレスと複数のローカルIPアドレス)の変換を可能としています。 NAPTはこの外にIPマスカレード、アドバンスドNAT等々様々な名称で呼ばれます。 特にIPマスカレードはLinuxに実装されて広まった経緯から広く浸透しています。 NATとNAPTは本来別物ですが、説明書等に書かれているNATの記述は、NAPTを指している場合がほとんどです。 |
● | ISPからWi-Fiルーターに割り当てられたグローバルIPアドレスを 123.4.5.6 と仮定します。 |
● | ユーザーAがアクセスするwebサーバーと、ユーザーBがアクセスするメールサーバーのIPアドレスを、それぞれ以下のように仮定します。 webサーバー : 22.22.2.2 メールサーバー : 99.99.9.9 |
● | フレームは省略し、パケット内のIPアドレスとポート番号のみ注目します。 |
● | ユーザーA, B の使用しているパソコンを、パソコンA, B としています。 |
(1) |
ユーザーAがホームページ閲覧を始めると、パソコンAは次の作業を行います。 空きポート番号(51111)を選択してブラウザに割り当て、通信文(ホームページの要求)や宛先・送信元のIPアドレス、宛先ポート番号と共にパケットに書き込んで送出します。(webページ アクセスなので宛先ポート番号は 80 です)
◎ webサーバーのIPアドレスをURLから検索する方法は「アドレス検索-DNSの話」を参照。
|
---|
(2) |
パソコンAのパケットを受けたWi-Fiルーターは変換動作を開始します。 要求パケットの送信元IPアドレス(192.168.1.2)と送信元ポート番号(51111)を参照し、NAPT管理テーブルの内部IPアドレス・内部ポート番号と比較※2します。同じ組み合わせが無ければ新規の通信と判断、外部通信用の空きポート番号を選択(60001)して割り当て、インターネット側のIPアドレス(123.4.5.6)と共に管理テーブルに記録※3します。 |
---|---|
(3) |
Wi-Fiルーターは要求パケットの送信元IPアドレスと送信元ポート番号を外部通信用(123.4.5.6と60001)に書き換えてインターネット側へ送信します。
◎ 前項(2)の検査で同一内容の記録を検出した時は、一致したレコードの外部IPアドレス・
ポート番号を適用して書き換えます。 |
(4) |
同じ頃ユーザーBはメールチェックを始めました。パソコンBは以下の作業を行います。 空きポート番号(52222)を選択してメール アプリケーションに割り当て、通信文(メール受信要求)や宛先・送信元のIPアドレス、宛先ポート番号と共にパケットに書き込んで送出します。(メール受信なので宛先ポート番号は 110 です)
◎ メール サーバーのIPアドレスをURLから検索する方法は「アドレス検索-DNSの話」を参照。
|
---|
(5) |
パソコンBのパケットを受けたWi-Fiルーターは変換動作を開始します。 要求パケットの送信元IPアドレス(192.168.1.3)と送信元ポート番号(52222)を参照し、NAPT管理テーブルの内部IPアドレス・内部ポート番号と比較※2します。同じ組み合わせが無ければ新規の通信と判断、外部通信用の空きポート番号を選択(60002)して割り当て、インターネット側のIPアドレス(123.4.5.6)と共に管理テーブルに記録※3します。 |
---|---|
(6) |
Wi-Fiルーターは要求パケットの送信元IPアドレスと送信元ポート番号を外部通信用(123.4.5.6と60002)に書き換えてインターネット側へ送信します。
◎ 前項(5)の検査で同一内容の記録を検出した時は、一致したレコードの外部IPアドレス・
ポート番号を適用して書き換えます。 |
◇
要求パケットを受信した各サーバーは要求に応じた処理を実行し、その結果を応答パケットにして送り返します。以下はwebサーバーが応答パケットを返した時の概略です。(7) |
webサーバーがホームページのデータを応答パケットにして送り返してきました。 応答パケットの宛先IPアドレスと宛先ポート番号には、要求パケットに記述されていた送信元のIPアドレス(123.4.5.6)とポート番号(60001)がそのまま入っています。
◎ webサーバーは応答パケットをWi-Fiルーター宛に送ります。
|
---|---|
(8) |
インターネット側からパケットを受信したWi-Fiルーターは、受信したパケットの宛先IPアドレス(123.4.5.6)と宛先ポート番号(60001)を参照し、NAPT管理テーブルの外部IPアドレス・外部ポート番号と比較※4検出します。同じ内容の組み合わせがあれば正規な応答として処理を続行、検出されなければ不正アクセス※5と判断してそのパケットは破棄します。
|
(9) | Wi-Fiルーターは比較・検出したレコードの内部IPアドレス(192.168.1.2)と内部ポート番号(51111)をピックアップし、その値で応答パケットの宛先IPアドレスと宛先ポート番号を書き換えてLAN側へ送信します。 |
---|---|
(10) | 応答パケットを受信したパソコンAは、宛先ポート番号(51111)参照して要求元のアプリケーションを判別し、パケットの本文(ホームページのデータ)をブラウザに渡します。※6 |
※2 | 比較検査の対象となる項目はこの他に、宛先のアドレスやポート番号、プロトコル種類(TCP or UDP)等があり、メーカーや製品ごとに異なります。 |
※3 |
NAPT管理テーブルに記録する項目は上記説明の外に、宛先IPアドレス、宛先ポート番号、プロトコル種類(TCP or UDP)等があります。実際に記録する項目はメーカーや製品ごとに異なります。 NAPT管理テーブル リストの1行を、ここではレコードと呼んでいます。 レコードにも有効期限があって有効期限を過ぎたレコードは削除されます。 有効期限は数十秒~数日です。 |
※4 | 比較検査の対象となる項目はこの他に、送信元のアドレスやポート番号、プロトコル種類(TCP or UDP)等があり、メーカーや製品ごとに異なります。 |
※5 | 外部からのアクセスを許可できるWi-Fiルーターもあります。LAN内部に公開用のサーバーを設置した場合などに、条件を決めて内部へのアクセスを許可します。 |
※6 | 同一パソコン内で複数のブラウザやアプリケーションが同時に通信を行っていても、それぞれ割り当てられているポート番号が異なるので受信データの受け渡しは適切に行われます。 |
● | 青枠はIPパケット、オレンジ枠はMACフレームを表します。 |
● | IPアドレス、MACアドレスのみを表記し、他の情報は割愛しています。 |
● | パケット内の数字はIPアドレス、フレーム内の英数字はMACアドレスを表しています。 |
※7 |
経路情報 パケットの転送経路を選択するための情報で、各ルーターには経路表(Routing Table)として保存されています。 |
● | 各IPアドレスは図の通りですが、パケット内では以下のように省略表記しています。 [ AさんWi-Fiルーター:123.4… ]、 [B社サーバー:22.2… ] |
● | MACアドレスも表記省略しています。省略方法は下記の通りです。 [正表記:a1-a1-a1-a1-a1-a1]、[各拠点:a1-a1…a1]、[フレーム内:a1a1…] |
※8 |
最後まで変わらない 実際には制御情報のTTL(Time To Live)の値を、1つ減算した値に書き換えます。 パケットの無限ループを防ぐための対策で、TTL値が 0 になるとパケットは破棄されます。 |
※9 |
◇ ISP / IX ISPまたはIXを表しています。どちらを通るかは相互接続の状況によって変わります。 ◇ IX (Internet eXchange) ISPや各種インターネット事業者を相互接続するための通信施設で、インターネット接続の集約拠点とも言えます。大都市に拠点を持ち、全国ネットを構成しています。 ISPはIXと接続することで接続点を持たないISPとも通信可能になります。 |
≪ previous | [[ アドレスとポート ]] |