Introduzione
Questo documento descrive come configurare e verificare Network Address Translation (NAT) e due volte NAT.
Prerequisiti
Requisiti
Cisco raccomanda la conoscenza dei seguenti argomenti:
- NAT
- Piattaforma NXOS
- Comprensione dell'etanalizzatore
Componenti usati
Nome |
Piattaforma |
Version |
N9K1 |
N9K-C93108TC-EX |
9.3(10) |
N9K2 |
N9K-C93108TC-EX |
9.3(10) |
N9K3 |
N9K-C93108TC-EX
|
9.3(10)
|
Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.
Esempio di rete
Configura traduzione globale interno IP
IP globale interno:10.1.1.1
Interno locale 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
|
Nota: poiché IP 192.168.1.1 non esiste fisicamente su alcun dispositivo, nexus deve avere un percorso valido per inoltrare il traffico a questo indirizzo IP. È possibile configurare una voce di route statica manuale "add route " alla fine dell'elenco NAT. Nexus crea automaticamente un percorso verso l'ip tradotto che punta all'hop successivo dell'IP non tradotto.
Verifica della traduzione Globale nell'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 riceve il pacchetto tradotto destinato a 10.1.1.1. |
N9K2 converte l'indirizzo IP locale interno (192.168.1.1) nell'indirizzo IP globale interno (10.1.1.1). Con il comando "aggiungi route" viene generata automaticamente una route verso la route tradotta Poiché nexus dispone solo della configurazione Inside, nexus visualizza solo le informazioni Inside. |
N9K2 avvia il ping verso l'indirizzo ip locale 192.168.1.1. |
Configura traduzione da IP esterno globale
Esterno IP globale:10.3.3.3
Esterno IP locale: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
|
Nota: poiché IP 172.16.3.3 non esiste fisicamente su alcun dispositivo, nexus deve avere un percorso valido per inoltrare il traffico a questo IP. È possibile configurare una voce di route statica manuale "add route " alla fine dell'elenco NAT. Nexus crea automaticamente un percorso verso l'IP tradotto che punta all'hop successivo dell'IP non tradotto.
Verifica della traduzione dall'indirizzo IP esterno globale
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 avvia il ping verso l'indirizzo ip 172.16.3.3 locale esterno. |
N9K2 converte IP locale esterno (192.168.3.3) in IP globale esterno (10.3.3.3). Con il comando "aggiungi route" viene generata automaticamente una route verso la route tradotta Poiché nexus dispone solo della configurazione Esterna, nexus visualizza solo le informazioni Esterne. |
N9K3 riceve il pacchetto tradotto destinato a 10.3.3.3 . |
Configurazione della traduzione IP globale interno/esterno (due Nat)
Esterno IP globale:10.3.3.3
Esterno IP locale:172.16.3.3
IP globale interno:10.1.1.1
Interno locale 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
|
Nota: poiché gli indirizzi IP 172.16.3.3 e 192.168.1.1 non esistono fisicamente su alcun dispositivo, per inoltrare il traffico a questo indirizzo IP è necessario che nexus disponga di un percorso valido. È possibile configurare una voce di route statica manuale "add route " alla fine dell'elenco NAT. Nexus crea automaticamente un percorso verso l'ip tradotto che punta all'hop successivo dell'IP non tradotto.
Verifica della traduzione IP globale interno/esterno (due 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 riceve il pacchetto tradotto destinato a 10.1.1.1 . |
N9K2 converte l'indirizzo IP locale interno (192.168.1.1) nell'indirizzo IP globale interno (10.1.1.1). N9K2 converte IP locale esterno (192.168.3.3) in IP globale esterno (10.3.3.3). Con il comando "aggiungi route" viene generata automaticamente una route verso la route tradotta Poiché nexus dispone solo della configurazione Inside, nexus visualizza solo le informazioni Inside. |
N9K2 avvia il ping verso l'indirizzo ip locale 192.168.1.1. |