はじめに
このドキュメントでは、ネットワークアドレス変換(NAT)とTwice NATを設定および確認する方法について説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
- NAT
- NXOSプラットフォーム
- Ethanalyzerの理解
使用するコンポーネント
[名前(Name)] |
プラットフォーム |
バージョン |
N9K1 |
N9K-C93108TC-EX |
9.3(10) |
N9K2 |
N9K-C93108TC-EX |
9.3(10) |
N9K3 |
N9K-C93108TC-EX
|
9.3(10)
|
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
ネットワーク図
グローバル内部IPアドレスの変換の設定
内部グローバルIP:10.1.1.1
内部ローカルIP:192.168.1.1
N9K1 |
N9K2 |
N9K3 |
interface Ethernet1/1
ip address 10.10.10.10/24
no shut
interface loopback 0
ip address 10.1.1.1/32
ip route 0.0.0.0/0 10.10.10.1
|
feature nat
ip access-list tac-nat-inside
permit ip host 10.1.1.1 any
ip nat pool tac-nat-inside-pool 192.168.1.1 192.168.1.1 prefix-length 32
ip nat inside source list tac-nat-inside pool tac-nat-inside-pool dynamic add-route
interface Ethernet1/1
ip nat inside
ip address 10.10.10.11/24
no shut
interface Ethernet1/2
ip nat outside
ip address 10.20.20.21/24
no shut
ip route 10.3.3.3/32 10.20.20.20
ip route 10.1.1.1/32 10.10.10.10
|
interface Ethernet1/2
ip address 10.20.20.20/24
no shut
interface loopback 0
ip address 10.3.3.3/32
ip route 0.0.0.0/0 10.20.20.21
|
注:IP 192.168.1.1は物理的にいずれのデバイスにも存在しないため、このIPにトラフィックを転送するにはNexusに有効なルートが必要です。手動スタティックルートエントリは、NATリストの最後にある「ルートの追加」を設定できます。Nexusは、変換されていないIPのネクストホップを指す、変換されたIPへのルートを自動的に生成します。
グローバル内部IPアドレスの変換の確認
N9K1 |
N9K2 |
N9K3 |
ethanalyzer local interface inband display-filter icmp limit-captured-frames 0
Capturing on inband
1 2023-09-09 00:34:03.617811110 10.3.3.3 → 10.1.1.1 ICMP 158 Echo (ping) request id=0xd923, seq=0/0, ttl=254
|
sh ip nat translations
Pro Inside global Inside local Outside local Outside global
any 192.168.1.1 10.1.1.1 --- ---
show ip route 192.168.1.1
192.168.1.1/32, ubest/mbest: 1/0
via 10.10.10.10 [1/0], 00:48:06, NAT
|
HOST2# ping 192.168.1.1 source 10.3.3.3
PING 192.168.1.1 (192.168.1.1) from 10.3.3.3: 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=0 ttl=253 time=1.175 ms
|
N9K1が10.1.1.1宛ての変換されたパケットを受信します。 |
N9K2は、内部ローカルIP(192.168.1.1)を内部グローバルIP(10.1.1.1)に変換します。 コマンド「add route」で、変換されたルートへのルートが自動生成される Nexusには内部コンフィギュレーションしかないため、Nexusは内部コンフィギュレーションのみを表示します。 |
N9K2が内部ローカルIP 192.168.1.1へのpingを開始します。 |
グローバル外部IPからの変換の設定
外部グローバルIP:10.3.3.3
外部ローカルIP:172.16.3.3
N9K1 |
N9K2 |
N9K3 |
interface Ethernet1/1
ip address 10.10.10.11/24
no shut
interface loopback 0
ip address 10.1.1.1/32
ip route 0.0.0.0/0 10.10.10.11
|
feature nat
ip access-list tac-nat-outside
permit ip host 10.3.3.3 any
ip nat pool tac-nat-outisde-pool 172.16.3.3 172.16.3.3 prefix-length 32
ip nat outside source list tac-nat-outside pool tac-nat-outisde-pool dynamic add-route
interface Ethernet1/1
ip nat inside
ip address 10.10.10.11/24
no shut
interface Ethernet1/2
ip nat outside
ip address 10.20.20.21/24
no shut
ip route 10.3.3.3/32 10.20.20.20
ip route 10.1.1.1/32 10.10.10.10
|
interface Ethernet1/2
ip address 10.20.20.20/24
no shut
interface loopback 0
ip address 10.3.3.3/32
ip route 0.0.0.0/0 10.20.20.21
|
注:注:IP 172.16.3.3は物理的にいずれのデバイスにも存在しないため、NexusはこのIPにトラフィックを転送するために有効なルートを持つ必要があります。手動スタティックルートエントリは、NATリストの最後にある「ルートの追加」を設定できます。Nexusは、変換されていないIPのネクストホップを指す、変換されたIPへのルートを自動的に生成します。
グローバル外部IPからの変換の確認
N9K1 |
N9K2 |
N9K3 |
ping 172.16.3.3 source 10.1.1.1
PING 172.16.3.3 (172.16.3.3) from 10.1.1.1: 56 data bytes
64 bytes from 172.16.3.3: icmp_seq=0 ttl=253 time=1.103 ms
|
sh ip nat translations
Pro Inside global Inside local Outside local Outside global
any --- --- 172.16.3.3 10.3.3.3
show ip route 172.16.3.3
172.16.3.3/32, ubest/mbest: 1/0
via 10.20.20.20 [1/0], 00:48:06, NAT
|
ethanalyzer local interface inband display-filter icmp limit-captured-frames 0
Capturing on 'ps-inb'
1 2023-09-09 00:34:03.617811110 10.1.1.1 → 10.3.3.3 ICMP 158 Echo (ping) request id=0xd923, seq=0/0, ttl=254
|
N9K1がOutside ilocal ip 172.16.3.3へのpingを開始します。 |
N9K2は外部ローカルIP(192.168.3.3)を外部グローバルIP(10.3.3.3)に変換する コマンド「add route」で、変換されたルートへのルートが自動生成される NexusにはOutsideの設定しかないため、NexusにはOutsideの情報だけが表示されます。 |
N9K3は、10.3.3.3を宛先とする変換されたパケットを受信します。 |
変換グローバル内部/外部IPの設定(Twice Nat)
外部グローバルIP:10.3.3.3
外部ローカルIP:172.16.3.3
内部グローバルIP:10.1.1.1
内部ローカルIP:192.168.1.1
N9K1 |
N9K2 |
N9K3 |
interface Ethernet1/1
ip address 10.10.10.11/24
no shut
interface loopback 0
ip address 10.1.1.1/32
ip route 0.0.0.0/0 10.10.10.11
|
feature nat
ip access-list tac-nat-outside
permit ip host 10.3.3.3 any
ip access-list tac-nat-inside
permit ip host 10.1.1.1 any
For Outside Twice translation nexus need 2 source list, one static Inside and one Dynamic Outside.
Both of them needs to match the same group.
ip nat pool tac-nat-outisde-pool 172.16.3.3 172.16.3.3 prefix-length 32
ip nat outside source list tac-nat-outside pool tac-nat-outisde-pool group 2 dynamic add-route
ip nat inside source static 10.1.1.1 192.168.1.1 group 2 dynamic add-route
For Inside Twice translation nexus need 2 source list, one static Outside and one Dynamic Inside.
Both of them needs to match the same group.
ip nat pool tac-nat-inside-pool 192.168.1.1 192.168.1.1 prefix-length 32
ip nat inside source list tac-nat-inside pool tac-nat-inside-pool group 1 dynamic add-route
ip nat outside source static 10.3.3.3 172.16.3.3 group 1 dynamic add-route
interface Ethernet1/1
ip nat inside
ip address 10.10.10.11/24
no shut
interface Ethernet1/2
ip nat outside
ip address 10.20.20.21/24
no shut
ip route 10.3.3.3/32 10.20.20.20
ip route 10.1.1.1/32 10.10.10.10
|
interface Ethernet1/2
ip address 10.20.20.20/24
no shut
interface loopback 0
ip address 10.3.3.3/32
ip route 0.0.0.0/0 10.20.20.21
|
注:注:IP 172.16.3.3も192.168.1.1もデバイスに物理的に存在しないため、nexusはこのIPにトラフィックを転送するために有効なルートを持つ必要があります。手動スタティックルートエントリは、NATリストの最後にある「ルートの追加」を設定できます。Nexusは、変換されていないIPのネクストホップを指す、変換されたIPへのルートを自動的に生成します。
変換グローバル内部/外部IPの確認(Twice Nat)
N9K1 |
N9K2 |
N9K3 |
ethanalyzer local interface inband display-filter icmp limit-captured-frames 0
Capturing on inband
1 2023-09-09 00:34:03.617811110 172.16.3.3 → 10.1.1.1 ICMP 158 Echo (ping) request id=0xd923, seq=0/0, ttl=254
|
sh ip nat translations
Pro Inside global Inside local Outside local Outside global
icmp 192.168.1.1:0 10.1.1.1:0 172.16.3.3:37734 10.3.3.3:37734
show ip route 192.168.1.1
192.168.1.1/32, ubest/mbest: 1/0
via 10.10.10.10 [1/0], 00:48:06, NAT
show ip route 172.16.3.3
172.16.3.3/32, ubest/mbest: 1/0
via 10.20.20.20 [1/0], 00:48:06, NAT
|
HOST2# ping 192.168.1.1 source 10.3.3.3
PING 192.168.1.1 (192.168.1.1) from 10.3.3.3: 56 data bytes
64 bytes from 192.168.1.1: icmp_seq=0 ttl=253 time=1.175 ms
|
N9K1は10.1.1.1(S,G)を宛先とする変換パケットを受信します。 |
N9K2は、内部ローカルIP(192.168.1.1)を内部グローバルIP(10.1.1.1)に変換します。 N9K2は外部ローカルIP(192.168.3.3)を外部グローバルIP(10.3.3.3)に変換する コマンド「add route」で、変換されたルートへのルートが自動生成される Nexusには内部コンフィギュレーションしかないため、Nexusは内部コンフィギュレーションのみを表示します。 |
N9K2が内部ローカルIP 192.168.1.1へのpingを開始します。 |