Dit document legt uit hoe het gebruik van toegangslijsten tegenover routekaarten de functionaliteit van Network Address Translation (NAT) wijzigt. Raadpleeg voor meer informatie over NAT Cisco IOS NAT.
Er zijn geen specifieke vereisten van toepassing op dit document.
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
Cisco 2500 Series routers.
Cisco IOS®-softwarerelease 12.3(3)S.
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u de potentiële impact van elke opdracht begrijpen.
NAT gebruikt alleen toegangslijsten en routekaarten wanneer het een vertaalingang moet maken. Als er al een vertaalingang bestaat die overeenkomt met het verkeer, wordt de vertaalingang gebruikt; toegangslijsten of routekaarten zullen niet worden geraadpleegd. Het verschil tussen het gebruik van een toegangslijst of routekaart is het type vertaalingang dat wordt gemaakt.
Wanneer NAT een routekaart gebruikt om een vertaalingang te creëren, zal het altijd tot een "volledig uitgebreide"vertaalingang leiden. Deze vertaalingang zal zowel de binnen als buiten (lokale en globale) adresingangen en om het even welke TCP of UDP poortinformatie bevatten. Raadpleeg NAT: Lokale en wereldwijde definities voor meer informatie over binnen en buiten (lokale en globale) adressen.
Wanneer NAT een toegangslijst gebruikt om een vertaalingang te creëren, zal het tot een "eenvoudige"vertaalingang leiden. Deze "eenvoudige" ingang zal alleen lokale en globale IP-adresvermeldingen bevatten voor alleen de binnen- of buitenkant, afhankelijk van of de ip Nat binnen of ip Nat buiten opdracht is geconfigureerd. Ook zal het geen TCP- of UDP-poortinformatie bevatten.
Wanneer NAT een toegangslijst gebruikt en ook overload is gespecificeerd, maakt NAT een "volledig uitgebreide" vertaalingang. (Zie noot 1). De operatie is vergelijkbaar met de route-kaart case, behalve dat de route-kaart een aantal extra functies heeft. Zie aantekening 2 voor meer informatie. U kunt een voorbeeld van een eenvoudige NAT vertaalingang en een volledig uitgebreide NAT vertaalingang zien door één van deze verbindingen te selecteren:
Dit is een voorbeeldnetwerkdiagram dat wordt gebruikt om het verschil te illustreren tussen het gebruik van een routekaart en een toegangslijst met NAT:
In dit voorbeeldnetwerkdiagram is het vereist dat hosts op 10.1.1.0 worden vertaald naar het volgende:
131.108.2.0 tot 131.108.1.0
131.118.2.0 tot 131.118.1.0
Met een toegangslijst aanpak, zou u het volgende doen om de hosts op 10.1.1.0 te vertalen:
ip nat pool pool108 131.108.2.1 131.108.2.254 prefix-length 24 !--- Defines a pool of global addresses to be allocated as needed. ip nat pool pool118 131.118.2.1 131.118.2.254 prefix-length 24 ip nat inside source list 108 pool pool108 !--- Establishes dynamic source translation, specifying the !--- access list defined below. ip nat inside source list 118 pool pool118 interface ethernet0 ip address 10.1.1.1 255.255.255.0 ip nat inside !--- Marks the interface as connected to the inside. interface ethernet1 ip address 10.1.2.1 255.255.255.0 ip nat outside !--- Marks the interface as connected to the outside. access-list 108 permit ip 10.1.1.0 0.0.0.255 131.108.1.0 0.0.0.255 !--- Defines the access-list mentioning those addresses !--- that are to be translated. access-list 118 permit ip 10.1.1.0 0.0.0.255 131.118.1.0 0.0.0.255
Raadpleeg de opdrachten IP-adressering en -services voor meer informatie over deze opdrachten.
Dit is wat er gebeurt wanneer Host 1 Telnet naar Host 2.
Packet on (Network 1) s:10.1.1.2(1024) d:131.108.1.2(23) Packet on (Network 2) s:131.108.2.1(1024) d:131.108.1.2(23) (after NAT)
Omdat een toegangslijst door NAT werd gebruikt om dit verkeer aan te passen, wordt een eenvoudige vertaalingang gemaakt, die alleen interne vertaalinformatie en geen protocol- of poortinformatie bevat:
inside outside local global global local 10.1.1.2 131.108.2.1 ---- ----
Pakket retourneren: Host 2 naar host 1:
Packet on (Network 2) s:131.108.1.2(23) d:131.108.2.1(1024) Packet on (Network 1) s:131.108.1.2(23) d:10.1.1.2(1024) (after NAT)
Met de bovengenoemde eenvoudige vertaling op zijn plaats, is hier wat gebeurt wanneer Host 1 ook Telnets aan Host 3:
Packet on (Network 1) s:10.1.1.2(1025) d:131.118.1.2(23) Packet on (Network 2) s:131.108.2.1(1025) d:131.118.1.2(23) (after NAT)
Je ziet dat er een probleem is. Pakketten die gaan van 10.1.1.0 hosts naar 131.118.1.0 hosts moeten worden vertaald naar 131.118.2.0, niet naar 131.108.2.0. De reden dat dit gebeurt is omdat er al een NAT-vertaalingang voor 10.1.1.2 <—> 131.108.2.1 is die ook overeenkomt met het verkeer tussen host 1 en host 3. Daarom wordt deze vertaalingang gebruikt en zijn toegangslijsten 108 en 111 8 zijn niet ingeschakeld.
Terwijl de eenvoudige vertaalingang op zijn plaats in de NAT vertaallijst is, kan het door om het even welke buitengebruiker op om het even welke buitengastheer worden gebruikt om een pakket naar Gastheer 1 te verzenden zolang de buitengebruiker het binnen globale adres (131.108.2.1) voor Gastheer 1 gebruikt. Normaal is een statische NAT vertaling nodig om dit toe te staan.
De juiste manier om het voorbeeld in dit document te vormen is routekaarten te gebruiken. Met een routekaartbenadering, zou u het volgende doen om de gastheren op 10.1.1.0 te vertalen:
ip nat pool pool-108 131.108.2.1 131.108.2.254 prefix-length 24 ip nat pool pool-118 131.118.2.1 131.118.2.254 prefix-length 24 ip nat inside source route-map MAP-108 pool pool-108 !--- Establishes dynamic source translation, specifying !--- the route-map MAP-108 which is defined below. ip nat inside source route-map MAP-118 pool pool-118 !--- Establishes dynamic source translation, specifying the route-map MAP-118. !--- Here, the route-maps are consulted instead of !--- access-lists (as in the previous case). interface ethernet0 ip address 10.1.1.1 255.255.255.0 ip nat inside interface ethernet1 ip address 10.1.2.1 255.255.255.0 ip nat outside access-list 108 permit ip 10.1.1.0 0.0.0.255 131.108.1.0 0.0.0.255 access-list 118 permit ip 10.1.1.0 0.0.0.255 131.118.1.0 0.0.0.255 route-map MAP-108 permit 10 !--- Defines the Route-map MAP-108. match ip address 108 !--- Specifies the criteria for translation. Here, the IP !--- address mentioned in the access-list 108 is translated. !--- The translation is defined in the !--- ip nat inside source route-map MAP-108 pool pool-108 command. route-map MAP-118 permit 10 !--- Defines the Route-map MAP-108. match ip address 118 !--- The IP address mentioned in the access-list 118 is translated. !--- The translation is defined in the !--- ip nat inside source route-map MAP-118 pool pool-118 command.
Raadpleeg de opdrachten IP-adressering en -services voor meer informatie over deze opdrachten.
Dit is wat er gebeurt wanneer Host 1 Telnet naar Host 2:
Packet on (Network 1) s:10.1.1.2(1024) d:131.108.1.2(23) Packet on (Network 2) s:131.108.2.1(1024) d:131.108.1.2(23) (after NAT)
In dit geval, omdat een routekaart door NAT werd gebruikt om het te vertalen verkeer aan te passen, zal NAT een volledig uitgebreide vertaalingang creëren, die zowel binnen als buiten vertaalinformatie omvat:
inside outside local global global local 10.1.1.2:1024 131.108.2.1:1024 131.108.1.2:23 131.108.1.2:23
Pakket retourneren: Host 2 naar host 1:
Packet on (Network 2) s:131.108.1.2(23) d:131.108.2.1(1024) Packet on (Network 1) s:131.108.1.2(23) d:10.1.1.2(1024) (after NAT)
Nu wanneer Host 1 een pakket naar Host 3 verzendt, is dit wat verschijnt:
Packet on (Network 1) s:10.1.1.2(1025) d:131.118.1.2(23) Packet on (Network 2) s:131.118.2.1(1025) d:131.118.1.2(23) (after NAT)
De vertaling werkte correct omdat het pakket aan (N1) niet de volledig uitgebreide vertaalingang aanpast die voor Host 1 aan Host 2 verkeer werd gebruikt. Omdat de bestaande vertaling niet overeenkomt, creëert NAT een andere vertaalingang voor Host 1 naar Host 3 verkeer.
Dit zijn de volledig uitgebreide vertaalingangen op de NAT router:
inside outside local global global local 10.1.1.2:1024 131.108.2.1:1024 131.108.1.2:23 131.108.1.2:23 10.1.1.2:1025 131.118.2.1:1025 131.118.1.2:23 131.118.1.2:23
Omdat de NAT vertaallijst twee volledige ingangen heeft, zal het correct verkeer vertalen dat naar de twee verschillende bestemmingen van de zelfde bron gaat.
Anders dan de eenvoudige vertaalingang die via de toegangslijst werd gemaakt, kan de volledig uitgebreide vertaalingang die via de routekaart wordt gemaakt niet door een andere externe gebruiker worden gebruikt om een pakket naar host 1 te verzenden. Om dit mogelijk te maken is een statische NAT-vertaling nodig.
In het geval van toegang-lijst met overbelasting, is de configuratie gelijkaardig aan de toegang-lijst zonder overbelastingsgeval. De uitzondering is dat u de keyword overload moet toevoegen aan de commando ip Nat binnen bronlijst 108 pool pool pool108 en ip Nat binnen bronlijst 118 pool118.
Het voordeel van het gebruik van routekaarten is dat je onder de match commando meer opties kunt hebben dan het IP-bronadres. Bijvoorbeeld, onder de route-kaart, kunnen de gelijkeinterface of de gelijkeip volgende-hop worden gespecificeerd. Door route-kaarten te gebruiken, kunt u het IP adres evenals de interface of het volgende-hopadres specificeren waaraan het pakket moet worden door:sturen. Daarom worden routekaarten met NAT gebruikt in een scenario waarbij de abonnee meerdere keren naar verschillende ISP’s stuurt.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
10-Dec-2001
|
Eerste vrijgave |