IP : IP アドレッシング サービス

ネットワーク アドレス変換(NAT)の役割

2002 年 2 月 22 日 - ライター翻訳版
その他のバージョン: PDFpdf | 機械翻訳版 (2013 年 8 月 21 日) | 英語版 (2008 年 12 月 15 日) | フィードバック

目次


概要

「Network Address Translation(NAT; ネットワーク アドレス変換)の役割」とはどんな意味でしょうか。一般的に「役割」という言葉からは、単独の物理インターフェースを使用してルータで特定の処理をすることが連想されます。同じ物理インターフェースのサブインターフェースを使用して Inter-Switch Link(ISL; スイッチ間リンク)トランキングを実行できるのとまったく同じように、単一の物理インターフェースを使用してルータでNATの動作を実現させることが可能となります。

NAT を実行するためには、NAT「内部」で定義されたインターフェースから NAT「外部」で定義されたインターフェースに、またはその逆に、パケットが交換される必要があります。NAT に関するこの必要条件は変わっていませんが、この文書では、単一の物理インターフェースを使用してルータで NAT を動作させるために、仮想インターフェース(ループバック インターフェースとも呼ばれます)とポリシーベース ルーティングを使用する方法について示します。

実際にこの設定が必要になる状況は、この文書で紹介している例しかないと考えられます。それ以外に、ユーザがポリシー ルーティングを NAT と組み合せて利用する状況もありますが、そのような事例でも複数の物理インターフェースが使用されることから、ここでは NAT の「役割」とは見なしません。

注:ルータは、ループバック インターフェースのためにすべてのパケットをプロセス交換する必要があります。このため、ルータのパフォーマンスが低下します。

ハードウェアとソフトウェアのバージョン

この文書の情報は、次のソフトウェア バージョンに基づいています。

  • Cisco IOS(R) バージョン 12.1(5)T9


例 1 ネットワーク ダイアグラムと設定

この項では、この文書に記載されている機能を設定するための情報を説明します。

注:この文書で使用されているコマンドの詳細を調べるには、IOS Command Lookup ツールを使用してください。このツールへのリンクは、この文書の「ツール情報」の項にあります。

ネットワーク ダイアグラム

上のネットワーク ダイアグラムはケーブル モデムの設定におけるごく一般的なものです。Cable Modem Termination System(CMTS; ケーブルモデム終端システム)はルータであり、Cable Modem(CM; ケーブル モデム)はブリッジと同様に機能する装置です。ここで問題になるのは、インターネットにアクセスする必要のあるホスト数に十分見合った有効なアドレスが Internet Service Provider(ISP; インターネット サービス プロバイダー)から与えられていないことです。ISP からはアドレス 192.168.1.2 が与えられていましたが、これは装置用として使用する必要がありました。さらなる要求により、192.168.2.1〜192.168.2.3 の 3 つのアドレスを取得しました。

要件

要件を次に示します。

  • ネットワーク上のすべてのホストからインターネットにアクセスできること。

  • インターネットから IP アドレス 192.168.2.1 を使用してホスト 2 にアクセスできること。

  • 正規のアドレス数よりも多くのホストを配置できるため、内部アドレッシング用に 10.0.0.0/24 サブネットを使用していること。

この文書の目的に従い、ここでは NAT ルータの設定のみを示しています。ただし、ホストに関する設定上の重要な注意事項についてはいくつか言及しています。

NAT ルータの設定

NAT ルータの設定
interface Loopback0

  ip address 10.0.1.1 255.255.255.252

  ip nat outside

 !--- Loopback 0 という名前の仮想インターフェースを作成し、それに IP アドレス 10.0.1.1 を
!--- 割り当てます。インターフェース Loopback 0 を
!--- NAT 外部として定義します。
. ! ! interface Ethernet0 ip address 192.168.1.2 255.255.255.0 secondary ip address 10.0.0.2 255.255.255.0 ip Nat inside !--- プライマリ IP アドレス 10.0.0.2 とセカンダリ IP アドレス 192.168.1.2 を
!--- Ethernet 0 に割り当てます。インターフェース Ethernet 0 を
!--- NAT 内部として定義します。192.168.1.2 アドレスは CM を経由した CMTS およびインターネットへの
!--- 通信に使用されます。10.0.0.2 アドレスは
!--- ローカル ホストとの通信に使用されます。
ip policy route-map Nat-loop !--- route-map「Nat-loop」をポリシー ルーティングのために Ethernet 0 に割り当てます。 ! ip Nat pool external 192.168.2.2 192.168.2.3 prefix-length 29 ip Nat inside source list 10 pool external overload ip Nat inside source static 10.0.0.12 192.168.2.1 !--- NAT が定義されます。access-list 10 に一致するパケットが「external」という名前のプールからのアドレスに
!--- 変換されます。 !--- 10.0.0.12 を 192.168.2.1 に変換する
!--- スタティック NAT トランスレーションが定義されます(インターネットからの
!--- アクセスを必要としているホスト 2 のため)。
ip classless ! ! ip route 0.0.0.0 0.0.0.0 192.168.1.1 ip route 192.168.2.0 255.255.255.0 Ethernet0 !--- デフォルトのスタティック ルートが 192.168.1.1 として設定されます。
!--- また、ネットワーク 192.168.2.0/24 用のスタティック ルートが直接 Ethernet 0 に
!--- 接続されます。
! ! access-list 10 permit 10.0.0.0 0.0.0.255 !--- 上の NAT 文で使用するために定義された access-list 10 access-list 102 permit ip any 192.168.2.0 0.0.0.255 access-list 102 permit ip 10.0.0.0 0.0.0.255 any !--- route-map「Nat-loop」で使用するために定義された access-list 102。 !--- これはポリシー ルーティングに使用されます。 ! Access-list 177 permit icmp any any !--- debug に使用される access-list 177 ! route-map Nat-loop permit 10 match ip address 102 set ip next-hop 10.0.1.2 !--- ポリシー ルーティングに使用される route-map「Nat-loop」を作成します。 !--- route-map では、access-list 102 に一致するすべてのパケットの
!--- ネクストホップを 10.0.1.2 に設定し、それらのパケットをループバック インターフェース
!--- の「外部」にルーティングします。他のすべてのパケットは通常どおりルーティングします。
! end NAT-router#

注:ホストのデフォルト ゲートウェイはすべて 10.0.0.2 に設定されています。これは NAT ルータのアドレスです。

例 1 show および debug コマンドの出力

上の設定が動作することを実証するために、いくつかの ping テストを実行し、その間 NAT ルータで debug 出力を監視しました。ping コマンドが成功し、debug 出力によってどんな処理が行われているのかが正確に示されることがわかります。

注:一部の show コマンドは、show コマンド出力の分析を表示する Output Interpreter ツールでサポートされています。このツールへのリンクは、この文書の「ツール情報」の項にあります。debug コマンドを発行する前に、「debug コマンドに関する重要な情報」を参照してください。

テスト 1

最初のテストでは、ラボ内で定義されているインターネットの装置からホスト 2 に対して ping を発行します。要件の 1 つとしてすでに説明したように、インターネット内の装置は IP アドレス 192.168.2.1 を使用してホスト 2 と通信できる必要があります。NAT ルータに表示される debug 出力を次に示します。NAT ルータで実行していた debug コマンドは、定義済みの access-list 177 を使用する debug ip packet 177 detaildebug ip Nat、およびポリシー ルーティングされたパケットを表示する debug ip policy です。

NAT ルータで実行した show ip Nat translation コマンドの出力を次に示します。

NAT-router#show ip Nat translation

 Pro Inside global      Inside local       Outside local      Outside global

 --- 192.168.2.1        10.0.0.12          ---                ---

 NAT-router#

インターネット上の装置(この場合はルータ)から 192.168.2.1 に対して ping を発行します。これは次のように成功します。

Internet-device#ping 192.168.2.1

 

 Type escape sequence to abort.

 Sending 5, 100-byte ICMP Echos to 192.168.2.1, timeout is 2 seconds:

 !!!!!

 Success rate is 100 percent (5/5), round-trip min/avg/max = 92/92/92 ms

 Internet-device#

次の debug 出力とコメントを確認して、NAT ルータでどんな処理が行われているのかを理解してください。

IP: s=177.10.1.3 (Ethernet0), d=192.168.2.1, len 100, policy match

     ICMP type=8, code=0

 IP: route map Nat-loop, item 10, permit

 IP: s=177.10.1.3 (Ethernet0), d=192.168.2.1 (Loopback0), Len 100, policy routed

     ICMP type=8, code=0

 !--- 上の debug 出力は、発信元が 177.10.1.3 で宛先が 192.168.2.1 のパケットを
!--- 示しています。パケットは「Nat-loop」ポリシー ルート マップ内の文に一致し、許可されて、
!--- ポリシー ルーティングされます。Internet Control Message Protocol
!--- (ICMP; インターネット制御メッセージ プロトコル)のタイプ 8、コード 0 は、このパケットが
!--- ICMP のエコー要求パケットであることを示しています。
IP: Ethernet0 to Loopback0 10.0.1.2 IP: s=177.10.1.3 (Ethernet0), d=192.168.2.1 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=8, code=0 !--- 上に示すように、ここでパケットが新しいネクストホップ アドレス 10.0.1.2 に
!--- ルーティングされます。
IP: NAT enab = 1 trans = 0 flags = 0 NAT: s=177.10.1.3, d=192.168.2.1->10.0.0.12 [52] IP: s=177.10.1.3 (Loopback0), d=10.0.0.12 (Ethernet0), g=10.0.0.12, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 !--- ルーティングが決定されたため、次に NAT が始まります。上の結果から
!--- アドレス 192.168.2.1 が 10.0.0.12 に変換され、このパケットが Ethernet 0 からローカル ホストに
!--- 転送されることがわかります。 !--- 注:パケットが内部から外部に送られるとき、パケットはルーティングされてから変換(NAT)
!--- されます。逆の方向(外部から内部)の場合は
!--- NAT が先に実行されます。
IP: s=10.0.0.12 (Ethernet0), d=177.10.1.3, Len 100, policy match ICMP type=0, code=0 IP: route map Nat-loop, item 10, permit IP: s=10.0.0.12 (Ethernet0), d=177.10.1.3 (Loopback0), Len 100, policy routed ICMP type=0, code=0 IP: Ethernet0 to Loopback0 10.0.1.2 !--- ここで、ホスト 2 は ICMP エコー応答(ICMP タイプ 0、コード 0)を送信します。 !--- このパケットはポリシー ルーティング文にも一致するため、ポリシー ルーティングのために
!--- 許可されます。
NAT: s=10.0.0.12->192.168.2.1, d=177.10.1.3 [52] IP: s=192.168.2.1 (Ethernet0), d=177.10.1.3 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=0, code=0 IP: s=192.168.2.1 (Loopback0), d=177.10.1.3 (Ethernet0), g=192.168.1.1, Len 100, forward ICMP type=0, code=0 IP: NAT enab = 1 trans = 0 flags = 0 !--- 上の出力は、ホスト 2 の IP アドレスが 192.168.2.1 に変換され、変換後のパケットが
!--- ポリシーベース ルーティングによって Loopback 0 に送信されて、最後に Ethernet 0 から
!--- インターネット装置に転送されることを示しています。 !--- 残りの debug 出力では、後 4 つの ICMP パケット交換についてそれぞれ
!--- 上記の動作が繰り返されています(デフォルトでは、Cisco ルータから ping を発行すると
!--- 5 つの ICMP パケットが送信されます)。冗長になるため
!--- 出力の大部分は省略しました。
IP: s=177.10.1.3 (Ethernet0), d=192.168.2.1, Len 100, policy match ICMP type=8, code=0 IP: route map Nat-loop, item 10, permit IP: s=177.10.1.3 (Ethernet0), d=192.168.2.1 (Loopback0), Len 100, policy routed ICMP type=8, code=0 IP: Ethernet0 to Loopback0 10.0.1.2 IP: s=177.10.1.3 (Ethernet0), d=192.168.2.1 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 NAT: s=177.10.1.3, d=192.168.2.1->10.0.0.12 [53] IP: s=177.10.1.3 (Loopback0), d=10.0.0.12 (Ethernet0), g=10.0.0.12, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 IP: s=10.0.0.12 (Ethernet0), d=177.10.1.3, Len 100, policy match ICMP type=0, code=0 IP: route map Nat-loop, item 10, permit IP: s=10.0.0.12 (Ethernet0), d=177.10.1.3 (Loopback0), Len 100, policy routed ICMP type=0, code=0 IP: Ethernet0 to Loopback0 10.0.1.2 NAT: s=10.0.0.12->192.168.2.1, d=177.10.1.3 [53] IP: s=192.168.2.1 (Ethernet0), d=177.10.1.3 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=0, code=0 IP: s=192.168.2.1 (Loopback0), d=177.10.1.3 (Ethernet0), g=192.168.1.1, Len 100, forward ICMP type=0, code=0 IP: NAT enab = 1 trans = 0 flags = 0

テスト 2

もう 1 つの要件として、各ホストがインターネットと通信できるようにすることがあります。このテストでは、ホスト 1 からインターネット装置に対して ping を発行します。その結果得られる show および debug コマンドの出力を次に示します。

初期状態では、NAT ルータの NAT 変換テーブルは次のようになっています。

NAT-router#show ip Nat translation

 Pro Inside global      Inside local       Outside local      Outside global

 --- 192.168.2.1        10.0.0.12          ---                ---

 NAT-router#

ホスト 1 から ping を発行すると、次の結果が得られます。

Host-1#ping 177.10.1.3

 

 Type escape sequence to abort.

 Sending 5, 100-byte ICMP Echos to 177.10.1.3, timeout is 2 seconds:

 !!!!!

 Success rate is 100 percent (5/5), round-trip min/avg/max = 92/92/96 ms

 Host-1#

上の結果から ping が成功したことがわかります。NAT ルータの NAT テーブルは次のようになります。

NAT-router#show ip Nat translation

 Pro Inside global      Inside local       Outside local      Outside global

 icmp 192.168.2.2:434   10.0.0.11:434      177.10.1.3:434     177.10.1.3:434

 icmp 192.168.2.2:435   10.0.0.11:435      177.10.1.3:435     177.10.1.3:435

 icmp 192.168.2.2:436   10.0.0.11:436      177.10.1.3:436     177.10.1.3:436

 icmp 192.168.2.2:437   10.0.0.11:437      177.10.1.3:437     177.10.1.3:437

 icmp 192.168.2.2:438   10.0.0.11:438      177.10.1.3:438     177.10.1.3:438

 --- 192.168.2.1        10.0.0.12          ---                ---

 NAT-router#

上の NAT 変換テーブルが示す追加のトランスレーションは(スタティックな NAT コンフィギュレーションではなく)ダイナミックな NAT コンフィギュレーションの結果です。

次の debug 出力は、NAT ルータでどんな処理が行われているのかを示しています。

IP: NAT enab = 1 trans = 0 flags = 0

 IP: s=10.0.0.11 (Ethernet0), d=177.10.1.3, Len 100, policy match

     ICMP type=8, code=0

 IP: route map Nat-loop, item 10, permit

 IP: s=10.0.0.11 (Ethernet0), d=177.10.1.3 (Loopback0), Len 100, policy routed

     ICMP type=8, code=0

 IP: Ethernet0 to Loopback0 10.0.1.2

 !--- 上の出力は ホスト 1 から発信された ICMP エコー要求パケットを示しています。
!--- このパケットはループバック インターフェースからポリシー ルーティングされます。
NAT: s=10.0.0.11->192.168.2.2, d=177.10.1.3 [8] IP: s=192.168.2.2 (Ethernet0), d=177.10.1.3 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=8, code=0 IP: s=192.168.2.2 (Loopback0), d=177.10.1.3 (Ethernet0), g=192.168.1.1, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 !--- ポリシー ルーティングによるルーティングが決定された後、上に示すような変換が
!--- 実行され、ホスト 1 の IP アドレス 10.0.0.11 が「external」プールからのアドレス 192.168.2.2 に
!--- 変換されます。 !--- それから、パケットが Loopback 0 から転送され、最後に Ethernet 0 からインターネット装置に
!--- 転送されます。
IP: s=177.10.1.3 (Ethernet0), d=192.168.2.2, Len 100, policy match ICMP type=0, code=0 IP: route map Nat-loop, item 10, permit IP: s=177.10.1.3 (Ethernet0), d=192.168.2.2 (Loopback0), Len 100, policy routed ICMP type=0, code=0 IP: Ethernet0 to Loopback0 10.0.1.2 IP: s=177.10.1.3 (Ethernet0), d=192.168.2.2 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=0, code=0 !--- インターネット装置は ICMP エコー応答を送信します。この応答はポリシーに一致し、
!--- ポリシー ルーティングされて、Loopback 0 インターフェースから転送されます。
IP: NAT enab = 1 trans = 0 flags = 0 NAT: s=177.10.1.3, d=192.168.2.2->10.0.0.11 [8] IP: s=177.10.1.3 (Loopback0), d=10.0.0.11 (Ethernet0), g=10.0.0.11, Len 100, forward ICMP type=0, code=0 !--- パケットはループバック インターフェースにループバックされます。この時点で、アドレスの
!--- 宛先部分が 192.168.2.2 から 10.0.0.11 に変換され、Ethernet 0 インターフェースから
!--- ローカル ホストに転送されます。 !--- 残りの ICMP パケットについて ICMP 交換が繰り返されます。それらの一部を
!--- 次に示します。
IP: NAT enab = 1 trans = 0 flags = 0 IP: s=10.0.0.11 (Ethernet0), d=177.10.1.3, Len 100, policy match ICMP type=8, code=0 IP: route map Nat-loop, item 10, permit IP: s=10.0.0.11 (Ethernet0), d=177.10.1.3 (Loopback0), Len 100, policy routed ICMP type=8, code=0 IP: Ethernet0 to Loopback0 10.0.1.2 NAT: s=10.0.0.11->192.168.2.2, d=177.10.1.3 [9] IP: s=192.168.2.2 (Ethernet0), d=177.10.1.3 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=8, code=0 IP: s=192.168.2.2 (Loopback0), d=177.10.1.3 (Ethernet0), g=192.168.1.1, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 IP: s=177.10.1.3 (Ethernet0), d=192.168.2.2, Len 100, policy match ICMP type=0, code=0 IP: route map Nat-loop, item 10, permit IP: s=177.10.1.3 (Ethernet0), d=192.168.2.2 (Loopback0), Len 100, policy routed ICMP type=0, code=0 IP: Ethernet0 to Loopback0 10.0.1.2 IP: s=177.10.1.3 (Ethernet0), d=192.168.2.2 (Loopback0), g=10.0.1.2, Len 100, forward ICMP type=0, code=0 IP: NAT enab = 1 trans = 0 flags = 0 NAT: s=177.10.1.3, d=192.168.2.2->10.0.0.11 [9] IP: s=177.10.1.3 (Loopback0), d=10.0.0.11 (Ethernet0), g=10.0.0.11, Len 100, forward ICMP type=0, code=0

例 2 ネットワーク ダイアグラムと設定

この項では、この文書に記載されている機能を設定するための情報を示します。

注:この文書で使用されているコマンドの詳細を調べるには、IOS Command Lookup ツールを使用してください。このツールへのリンクは、この文書の「ツール情報」の項にあります。

ネットワーク ダイアグラム

要件

ここでは、通信相手となる 2 か所のサイト(R1 および R3)のバックに、なんらかの装置が必要になります。2 か所のサイトでは未登録の IP アドレスを使用しているため、互いに通信するときにアドレスを変換する必要があります。この例では、ホスト 10.10.10.1 が 100.100.100.1 に、ホスト 20.20.20.1 が 200.200.200.1 に、それぞれ変換されます。したがって、双方向に変換される必要があります。便宜上、これら 2 か所のサイト間を流れるトラフィックは必ず R2 を経由するとします。要件をまとめると次のようになります。

  • R1 のバックにあるホスト 10.10.10.1 と R3 のバックにあるホスト 20.20.20.1 とで、それぞれのグローバル アドレスを使用して通信を行う必要があること。

  • これらのホスト間のトラフィックが必ず R2 経由で送信されること。

  • この例では、次の設定に示すように「スタティック」な NAT 変換が必要になります。

NAT ルータの設定

NAT ルータの設定
interface Loopback0

  ip address 4.4.4.1 255.255.255.0

  ip Nat inside

 !--- Loopback 0 という名前の仮想インターフェースを作成し、それに IP アドレス 4.4.4.1 を
!--- 割り当てます。また、そのための NAT 内部インターフェースも定義します。
! Interface Ethernet0/0 ip address 1.1.1.2 255.255.255.0 no ip redirects ip Nat outside ip policy route-map Nat !--- IP アドレス 1.1.1.1/24 を e0/0 に割り当てます。
!--- リダイレクトを無効にし、発信元が R1(または R3)で宛先が R3(または R1)のパケットが
!--- R3(または R1)にリダイレクトされないようにします。
インターフェースを NAT 外部インターフェースとして定義します。
!--- ポリシーベース ルーティングに使用される route-map「Nat」を割り当てます。
. ! ip Nat inside source static 10.10.10.1 200.200.200.1 !--- スタティック トランスレーションを作成し、内部インターフェースで受信されるパケットのうち
!--- 発信元アドレスが 10.10.10.1 のものを発信元アドレス 200.200.200.1 に変換するように
!--- します。:これにより、外部インターフェースで受信されるパケットのうち
!--- 宛先アドレスが 200.200.200.1 のものは、宛先が 10.10.10.1 に変換されることに
!--- なります。
ip Nat outside source static 20.20.20.1 100.100.100.1 !--- スタティック トランスレーションを作成し、外部インターフェースで受信されるパケットのうち
!--- 発信元アドレスが 20.20.20.1 のものを発信元アドレス 100.100.100.1 に変換するように
!--- します。注:これにより、内部インターフェースで受信されるパケットのうち
!--- 宛先アドレスが 100.100.100.1 のものは、宛先が 20.20.20.1 に変換されることに
!--- なります。
. ip route 10.10.10.0 255.255.255.0 1.1.1.1 ip route 20.20.20.0 255.255.255.0 1.1.1.3 ip route 100.100.100.0 255.255.255.0 1.1.1.3 ! access-list 101 permit ip host 10.10.10.1 host 100.100.100.1 route-map Nat permit 10 match ip address 101 set ip next-hop 4.4.4.2

例 2 show および debug コマンドの出力

注:一部の show コマンドは、show コマンド出力の分析を表示する Output Interpreter ツールでサポートされています。このツールへのリンクは、この文書の「ツール情報」の項にあります。debug コマンドを発行する前に、「debug コマンドに関する重要な情報」を参照してください。

テスト 1

上の設定に示したように、2 つのスタティック NAT トランスレーションがあり、これらは R2 でコマンド show ip Nat translation を使用して確認できます。

R2#show ip Nat translation

 Pro Inside global      Inside local       Outside local      Outside global

 --- ---                ---                100.100.100.1      20.20.20.1

 --- 200.200.200.1      10.10.10.1         ---                ---

 R2#

このテストでは、R1 のバックにある装置(10.10.10.1)から、R3 のバックにある装置のグローバル アドレス(100.100.100.1)宛てに、ping を発行しました。R2 で debug ip Nat および debug ip packet を実行すると、次の出力結果が得られます。

IP: NAT enab = 1 trans = 0 flags = 0

 IP: s=10.10.10.1 (Ethernet0/0), d=100.100.100.1, Len 100, policy match

     ICMP type=8, code=0

 IP: route map Nat, item 10, permit

 IP: s=10.10.10.1 (Ethernet0/0), d=100.100.100.1 (Loopback0), Len 100, policy

 routed

     ICMP type=8, code=0

 IP: Ethernet0/0 to Loopback0 4.4.4.2

 !--- 上の出力は、E0/0 に着信した、発信元が 10.10.10.1 で宛先が 100.100.100.1 の
!--- パケットを示しています。E0/0 は NAT 外部インターフェースとして定義されて
!--- います。この時点では NAT を実行する必要はありませんが、ルータでは
!--- E0/0 のためのポリシー ルーティングも有効になって
!--- います。出力は、パケットが、ポリシー ルーティング文で定義されているポリシーに一致することを
!--- 示しています。
IP: s=10.10.10.1 (Ethernet0/0), d=100.100.100.1 (Loopback0), g=4.4.4.2, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 !--- 上の出力は、Loopback0 インターフェースからポリシー ルーティングされるパケットを示しています。
!--- ループバックは NAT 内部インターフェースとして定義されていることに注意してください。
NAT: s=10.10.10.1->200.200.200.1, d=100.100.100.1 [26] NAT: s=200.200.200.1, d=100.100.100.1->20.20.20.1 [26] !--- 上の出力は、パケットが Loopback0 インターフェースに着信していることを
!--- 示しています。これは NAT 内部インターフェースです。
!--- そのため、上に示した変換が起こる前に、ルータはルーティング テーブルで
!--- 宛先への経路を探すことに注意してください。変換前のため、この宛先はまだ
!--- 100.100.100.1 です。この経路参照が完了すると、ルータは上に示すように
!--- 引き続き変換を実行します。 !--- この経路参照は debug 出力には現れません。
IP: s=200.200.200.1 (Loopback0), d=20.20.20.1 (Ethernet0/0), g=1.1.1.3, Len 100, forward ICMP type=8, code=0 IP: NAT enab = 1 trans = 0 flags = 0 !--- 上の出力は、変換後のパケットが E0/0 から転送されたことを
!--- 示しています。

次の出力は、ルータ 3 のバックにある装置を発信元とし、ルータ 1 のバックにある装置を宛先とする、応答パケットの結果です。

NAT: s=20.20.20.1->100.100.100.1, d=200.200.200.1 [26]

 NAT: s=100.100.100.1, d=200.200.200.1->10.10.10.1 [26]

 !--- 戻りパケットは NAT 外部インターフェースである e0/0 インターフェースに
!--- 着信しています。この方向(外部から内部へ)では、ルーティングの前に変換が
!--- 実行されます。上の出力は変換が実行されていることを示しています。
IP: s=100.100.100.1 (Ethernet0/0), d=10.10.10.1 (Ethernet0/0), Len 100, policy rejected -- normal forwarding ICMP type=0, code=0 IP: s=100.100.100.1 (Ethernet0/0), d=10.10.10.1 (Ethernet0/0), g=1.1.1.1, Len 100, forward ICMP type=0, code=0 !--- E0/0 インターフェースではさらにポリシー ルーティングが有効になっているため、上に示すように
!--- パケットがポリシーに対してチェックされます。パケットはポリシーと一致せず、通常どおり
!--- 転送されます。
要約

この文書では、「NAT の役割」シナリオの作成に使用できる、NAT とポリシーベース ルーティングの使用方法を説明しました。この設定では、パケットがルータを通じてプロセス交換されることがあるため、NAT を実行しているルータのパフォーマンスが低下する可能性があることに留意してください。

ツール情報

その他のリソースについては、シスコの「ルーティング プロトコル テクノロジー用の TAC ツール」を参照してください。


関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 6505