概要
このドキュメントでは、内部ローカル、内部グローバル、外部ローカル、および外部グローバルというネットワークアドレス変換(NAT)の用語について説明し、明確にします。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
表記法
ドキュメント表記の詳細については、『シスコ テクニカル ティップスの表記法』を参照してください。
用語の定義
シスコではこれらの用語を次のように定義しています。
-
内部ローカル アドレスについて理解し説明するための基礎となります:内部ネットワークのホストに割り当てられた IP アドレス。これは、コンピュータの OS のパラメータとして設定されるか、DHCP などのダイナミック アドレス割り当てプロトコル経由で受信するアドレスのことです。このアドレスは、多くの場合、Network Information Center(NIC)やサービス プロバイダーにより割り当てられた正規の IP アドレスではありません。
-
内部グローバルアドレス:NICまたはサービスプロバイダーによって割り当てられる正規のIPアドレスで、外部に向けて1つ以上の内部ローカルIPアドレスを表します。
-
外部ローカル アドレス:内部ネットワークから見た外部ホストの IP アドレス。必ずしも正規のアドレスでありません。内部でルート可能なアドレス空間から割り当てられたものです。
-
外部グローバル アドレス:ホスト所有者によって、外部ネットワーク上のホストに割り当てられた IP アドレス。このアドレスは、グローバルにルーティング可能なアドレス、またはネットワーク空間から割り当てられます。
これらの定義には、説明を要する点が数多くあります。この例では、このドキュメントでは、最初にローカルアドレス定義、次にグローバルアドレス定義によってこれらの用語を再定義しています。内部および外部という言葉は NAT の定義であることを念頭においてください。NATルータのインターフェイスは、NAT設定コマンドを使用して内部または外部として定義されます。 ip nat inside destination
と ip nat outside source
.これらのインターフェイスの接続先であるネットワークはそれぞれ内部または外部のネットワークと見なすことができます。
ネットワークの内部を発信元とするパケットには、ネットワークの内部にある間、内部ローカル アドレスが送信元アドレスとして設定されており、外部ローカル アドレスがパケットの宛先アドレスとして設定されています。この同じパケットが外部ネットワークに交換されると、パケットの発信元は内部グローバル アドレス、パケットの宛先は外部グローバル アドレスと呼ばれます。
逆に、パケットの発信元がネットワークの外部であるとき、それが外部ネットワーク上にある間、その送信元アドレスは外部グローバル アドレスと呼ばれます。パケットの宛先は内部グローバル アドレスと呼ばれます。同じパケットが内部ネットワークに交換されると、送信元アドレスは外部ローカル アドレス、パケットの宛先は内部ローカル アドレスと呼ばれます。
次の図の例を参照してください。
外部ローカルアドレスと呼ばれる送信元アドレス
例
次のセクションでは、これらの用語をより詳しく説明し、このトポロジと例を使用します。
トポロジと例
内部ローカル アドレスと内部グローバル アドレスの定義
この設定では、NAT ルータが内部インターフェイス上で送信元アドレス 10.10.10.1 のパケットを受信すると、送信元アドレスが 172.16.68.5 に変換されます。同様に、NAT ルータが外部インターフェイス上で、宛先アドレス 172.16.68.5のパケットを 受信すると、宛先アドレスが 10.10.10.1 に変換されます。
ip nat inside source static 10.10.10.1 172.16.68.5
!--- Inside host is known by the outside host as 172.16.68.5.
interface s 0
ip nat inside
interface s 1
ip nat outside
この場合は、 show ip nat translations
コマンドを発行して、ルータのNAT変換を確認します。理想的な状態では、 show ip nat translations
コマンドを次に示します。
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- 172.16.68.5 10.10.10.1 — ---
パケットがInsideネットワークからOutsideネットワークに移動すると、 show ip nat translations
コマンドを次に示します。
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
icmp 172.16.68.5:15 10.10.10.1:15 172.16.68.1:15 172.16.68.1:15
--- 172.16.68.5 10.10.10.1 — ---
注:このNAT変換の出力では、エントリの検証にpingが使用されているため、プロトコルエントリにICMPが表示されます。Outside LocalとOutside Globalのエントリには、Outsideホストと同じIPアドレス(172.16.68.1)を設定できます。
ローカル アドレスは内部クラウドに現れるアドレスです。グローバル アドレスは外部クラウドに現れるアドレスです。NAT の設定方法のため、変換されるアドレスは内部アドレスだけになっています。したがって、内部ローカル アドレスは内部グローバル アドレスと異なります。
次の図は、パケットが内部ネットワーク上にあるとき、および外部ネットワーク上にあるときに、どのように見えるかを示したものです。
内部ネットワークと外部ネットワークでのパケットの出現
外部ローカル アドレスと外部グローバル アドレスの定義
この設定では、NAT ルータが外部インターフェイス上で送信元アドレス 172.16.68.1 のパケットを受信すると、送信元アドレスが 10.10.10.5 に変換されます。同様に、NAT ルータが内部インターフェイス上で、宛先アドレス 10.10.10.5のパケットを受信すると、宛先アドレスが 172.16.68.1 に変換されます。
ip nat outside source static 172.16.68.1 10.10.10.5
!--- Outside host is known to the inside host as 10.10.10.5.
interface s 0
ip nat inside
interface s 1
ip nat outside
理想的な状態では、 show ip nat translations
コマンドを次に示します。
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- --- --- 10.10.10.5 172.16.68.1
パケットがOutsideネットワークからInsideネットワークに移動すると、 show ip nat translations
コマンドを次に示します。
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- --- --- 10.10.10.5 172.16.68.1
icmp 10.10.10.1:37 10.10.10.1:37 10.10.10.5:37 172.16.68.1:37
注:内部グローバルエントリと内部ローカルエントリは、内部ホストの同じIPアドレス(10.10.10.1)を持つことができます。
ローカル アドレスは内部クラウドに現れるアドレスです。グローバル アドレスは外部クラウドに現れるアドレスです。この例では、NAT の設定方法のため、外部アドレスだけが変換されます。したがって、外部ローカル アドレスは外部グローバル アドレスと異なります。
次の図は、パケットが内部ネットワーク上にあるとき、および外部ネットワーク上にあるときに、どのように見えるかを示したものです。
パケットアピアランス
すべてのローカル アドレスとグローバル アドレスの定義
この設定では、NAT ルータが内部インターフェイス上で送信元アドレス 10.10.10.1 のパケットを受信すると、送信元アドレスが 172.16.68.5 に変換されます。IPアドレス10.10.10.1に対応するインターフェイスは内部ローカルアドレスで、IPアドレス172.16.68.5に対応するインターフェイスは内部グローバルアドレスです。NAT ルータが外部インターフェイス上で、送信元アドレス 172.16.68.1 のパケットを受信すると、送信元アドレスが 10.10.10.5 に変換されます。
同様に、NAT ルータが外部インターフェイス上で、宛先アドレス 172.16.68.5のパケットを 受信すると、宛先アドレスが 10.10.10.1 に変換されます。また、NAT ルータが内部インターフェイス上で、宛先アドレス 10.10.10.5 のパケットを受信すると、宛先アドレスが 172.16.68.1 に変換されます。
ip nat inside source static 10.10.10.1 172.16.68.5
!--- Inside host is known to the outside host as 172.16.68.5.
ip nat outside source static 172.16.68.1 10.10.10.5
!--- Outside host is known to the inside host as 10.10.10.5.
interface s 0
ip nat inside
interface s 1
ip nat outside
理想的な状態では、 show ip nat translations
コマンドを次に示します。
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- --- --- 10.10.10.5 172.16.68.1
172.16.68.5 10.10.10.1 — ---
ローカル アドレスは内部クラウドに現れるアドレスで、グローバル アドレスは外部クラウドに現れるアドレスです。この場合、NAT の設定方法により、内部アドレスと外部アドレスの両方が変換されます。したがって、内部ローカル アドレスと内部グローバル アドレスは異なり、外部ローカル アドレスと外部グローバル アドレスも異なります。
パケット転送が両側から開始されると、 show ip nat translations
コマンドを次に示します。
Router#show ip nat translations
Pro Inside global Inside local Outside local Outside global
--- --- --- 10.10.10.5 172.16.68.1
icmp 10.10.10.1:4 10.10.10.1:4 10.10.10.5:4 172.16.68.1:4
icmp 172.16.68.5:39 10.10.10.1:39 172.16.68.1:39 172.16.68.1:39
--- 172.16.68.5 10.10.10.1 — ---
次の図は、パケットが内部ネットワーク上にあるとき、および外部ネットワーク上にあるときに、どのように見えるかを示したものです。
内部および外部ネットワーク上のパケット
要約すると、ローカルおよびグローバルという用語は、ネットワークのどこで現れるのかを考えると簡単に理解できます。ローカル アドレスはネットワークの内部に現れ、グローバル アドレスはネットワークの外部に現れます。
関連情報