Inhoud

Inleiding

Voorwaarden

Vereisten

Gebruikte componenten

Netwerkdiagram

Conventies

Bijvoorbeeld scenario

Gerelateerde informatie

Inleiding

Dit document beschrijft een scenario waarin de pakketlijnen tussen de NAT-router en de naburige router op de externe interface worden beschreven wanneer u dynamische netwerkadresomzetting (NAT) gebruikt vanwege verkeer dat bestemd is voor een ongebruikt ip-adres in een NAT-pool en de aanwezigheid van een standaardroute op de NAT-router die deze pakketten naar buiten routeert.

Voorwaarden

Vereisten

Er zijn geen specifieke vereisten van toepassing op dit document.

Gebruikte componenten

Dit document is niet beperkt tot specifieke software- en hardware-versies.

De informatie in dit document is gebaseerd op apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als u in een levend netwerk werkt, zorg er dan voor dat u de potentiële impact van om het even welke opdracht begrijpt alvorens het te gebruiken.

Netwerkdiagram

De volgende topologie werd gebruikt om het voorbeeldscenario te creëren.

Conventies

Zie de Cisco Technical Tips Convention voor meer informatie over documentconventies.

Bijvoorbeeld scenario

In de bovenstaande topologie wordt Router-A met NAT geconfigureerd zodat het pakketten vertaalt die zijn afkomstig van netwerk 171.68.200.0/24 naar een reeks adressen die door de NAT pool "testlus" worden gedefinieerd. De configuratie van de router-A is als volgt (alle andere routers worden geconfigureerd met statische routes om connectiviteit te verkrijgen):

hostname Router-A

!

!

ip nat pool test-loop 172.16.47.161 172.16.47.165 prefix-length 28

ip nat inside source list 7 pool test-loop

!

interface Loopback0

ip address 1.1.1.1 255.0.0.0

!

interface Ethernet0

ip address 135.135.1.2 255.255.255.0

shutdown

!

interface Serial0

ip address 171.68.200.49 255.255.255.0

ip nat inside

no ip mroute-cache

no ip route-cache

no fair-queue

!

interface Serial1

ip address 172.16.47.146 255.255.255.240

ip nat outside

no ip mroute-cache

no ip route-cache

!

ip classless

ip route 0.0.0.0 0.0.0.0 172.16.47.145

access-list 7 permit 171.68.200.0 0.0.0.255

!

!

line con 0

exec-timeout 0 0

line aux 0

line vty 0 4

login

!

end

Met NAT vertaling debugging en IP pakketzuiveringsopdrachten, genereerden we een ping van de router op het interne apparaat. De ping werkte en er werd een vertaaltabel gegenereerd. In de hieronder weergegeven uitvoer zien we dat IP-pakketdebugging en IP NAT-debugging ingeschakeld zijn en dat er op dit moment geen items in de vertaaltabel zijn.

Opmerking: de opdrachten debug genereren een aanzienlijke hoeveelheid output. Gebruik deze uitsluitend wanneer het verkeer op het IP-netwerk laag is, zodat de andere activiteit op het systeem niet ongunstig wordt beïnvloed.

Router-A# show debug

Generic IP:

IP packet debugging is on (detailed)

IP NAT debugging is on

Router-A# show ip nat translations

Router-A#

De binnenrouter (binnenapparaat) begint een ICMP-pakket met een bronadres van 171.68.200.48 en een doeladres van 171.68.191.1 (het adres van het externe apparaat). De volgende debug-uitvoer toont een IP-pakket met een bronIP-adres van 171.68.200.48 dat wordt vertaald naar 172.16.47.161. Het pakket komt in de seriële0-interface en is bestemd voor de seriële1 interface.

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [401]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

De volgende debug-uitvoer toont het IP-retourpakket met een IP-adres van de bestemming van 172.16.47.161 dat wordt vertaald naar 171.68.200.48. Het pakket komt in de seriële1 interface en is voorzien van de seriële0-interface.

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [401]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=0, code=0

De debug uitvoer toont het succesvolle pingelen uitwisseling tussen het binnenapparaat en het buitenapparaat:

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [402]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [402]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=0, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [403]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [403]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=0, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [404]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [404]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=0, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [405]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [405]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=0, code=0

Met de opdracht toonaangevende ip nat vertalingen zien we een ingang in de vertaaltabel voor het binnenapparaat.

Router-A# show ip nat translations

Pro Inside global      Inside local       Outside local      Outside global

--- 172.16.47.161      171.68.200.48      ---                ---

Nu een vertaling voor het binnenapparaat in de vertaaltabel bestaat, kunnen we met succes pingelen van het buitenapparaat tot het mondiale adres van het binnenapparaat, zoals getoond in de debug uitvoer die door router-A hieronder gegenereerd wordt.

Opmerking: Het pakje dat door het externe apparaat is aangemaakt, heeft een bronadres van 171.68.191.1 en een doeladres van 172.16.47.161 (het globale interne adres in de vertaaltabel).

Router-A#

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [108]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=8, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [108]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=0, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [109]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=8, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [109]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=0, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [110]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=8, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [110]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=0, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [111]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=8, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [111]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=0, code=0

NAT*: s=171.68.191.1, d=172.16.47.161->171.68.200.48 [112]

IP: s=171.68.191.1 (Serial1), d=171.68.200.48 (Serial0), g=171.68.200.48, len 100, forward

ICMP type=8, code=0

NAT: s=171.68.200.48->172.16.47.161, d=171.68.191.1 [112]

IP: s=172.16.47.161 (Serial0), d=171.68.191.1 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=0, code=0

De volgende debug uitvoer demonstreert wat kan gebeuren wanneer een extern apparaat probeert de communicatie met een bestemmingsadres te openen dat een ongebruikt IP adres in de test-loop pool is. De heldere ip nat vertaling opdracht werd gebruikt om de vertaaltabel te vereffenen en er werd een ping naar een ongebruikt IP-adres in de testlus pool gestuurd.

Het externe apparaat stuurt een ICMP-pakket dat bestemd is voor het interne mondiale adres van 172.16.47.161. De uitvoerinterface is echter hetzelfde als de invoerinterface voor dit pakket.

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

IP: s=171.68.191.1 (Serial1), d=172.16.47.161 (Serial1), g=172.16.47.145, len 100, forward

ICMP type=8, code=0

NAT vertaalt pakketten die van buiten naar binnen gaan voordat u het pakket verstuurt. In dit geval, is er geen ingang in de vertaallijst, zodat router-A het pakket slechts kan leiden. De router-A is van zijn standaardroute om de pakketten te leiden, het verzenden van de pakketten terug uit de seriële1 interface, die een lijn veroorzaakt die uiteindelijk de serielijn kon brengen.

Om dit soort routing loop te vermijden, moet u nooit pakketten van de buitenapparaten aan de binnenkant van mondiale adressen aanmaken. Echter, omdat dit moeilijk te afdwingen is, kunt u een statische route voor de binnenglobale adressen met een volgende hop van nul in router-A toevoegen. Op deze manier, wanneer een extern apparaat pakketten verstuurt die voor een binnen mondiaal adres bestemd zijn, en er geen ingang in de vertaallijst is, leidt router-A het pakket om 0 te nul, vermijdt de lus. Met behulp van het bovenstaande voorbeeld ziet de statische route er als volgt uit:

ip route 172.16.47.160 255.255.255.252 null0.

Gerelateerde informatie

- NAT-ondersteuningspagina

- Ondersteuningspagina voor IP-routeringsprotocollen

- Ondersteuningspagina voor IP-routing

- Technische ondersteuning - Cisco-systemen