Dit document legt uit hoe het gebruik van toegangslijsten versus routekaarten de functionaliteit van Network Address Translation (NAT) verandert. 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)E
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 als het nodig is om een vertaalopdracht te maken. Indien er al een vertaalpost bestaat die overeenkomt met het verkeer, wordt de vertaalvermelding gebruikt; toegangslijsten of routekaarten zullen niet worden geraadpleegd . Het verschil tussen het gebruiken van een toegangslijst of routekaart is het type vertaalingang dat zal worden gecreëerd.
Wanneer NAT een routekaart gebruikt om te besluiten een vertaalingang te maken, zal het altijd een "volledig uitgebreide" vertaalingang maken. Deze vertaalingang zal zowel de binnen als buiten (lokale en mondiale) adresingangen en om het even welke TCP of UDP haveninformatie bevatten. Raadpleeg NAT: Lokale en mondiale definities voor meer informatie over zowel binnen- als buitenkant (lokale en mondiale) adressen.
Wanneer NAT een toegangslijst gebruikt om te besluiten een vertaalopdracht te maken, wordt er een "eenvoudige" vertaalopdracht gemaakt. Dit "eenvoudige" item zal alleen lokale en mondiale IP-adresangen voor alleen de binnen- of buitenkant bevatten, afhankelijk van of het ip nationaal binnen of ip nationaal buiten opdracht is ingesteld. Ook zal het geen TCP- of UDP poortinformatie bevatten.
Wanneer NAT een toegangslijst gebruikt en er ook overload is gespecificeerd, zal NAT een "volledig uitgebreide" vertaalopdracht maken. (Zie aantekening 1). De verrichting is gelijkaardig aan de route-kaart zaak behalve dat de route-kaart een paar extra eigenschappen heeft. Zie aantekening 2 voor meer informatie. U kunt een voorbeeld zien van een eenvoudige NAT-vertaling en een volledig uitgebreide NAT-vertaalingang door een van deze links te selecteren:
Dit is een voorbeeldnetwerkdiagram dat wordt gebruikt om het verschil tussen het gebruiken van een routekaart en een toegangslijst met NAT te illustreren:
In dit voorbeeld netwerkdiagram, is het vereist dat de gastheren op 10.1.1.0 in het volgende worden vertaald:
131.108.2.0, indien van toepassing tot 13.108.1.0
131.118.2.0, indien van toepassing tot 13.118.1.0
Met een benadering van toegangslijsten 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 IP-adressering en -servicesopdrachten voor meer informatie over deze opdrachten.
Hier is wat er gebeurt wanneer Host 1 Telnetjes aan 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 NAT een toegangslijst heeft gebruikt om dit verkeer aan te passen, wordt er een eenvoudige vertaalopdracht gemaakt, die alleen ingesloten vertaalinformatie bevat en geen protocol- of poortinformatie:
inside outside local global global local 10.1.1.2 131.108.2.1 ---- ----
Pakket teruggeven: Host 2 to 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)
Als de bovenstaande eenvoudige vertaling is geïmplementeerd, is dit wat er gebeurt als Host 1 ook Telnetjes 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. Packets die van 10.1.1.0 hosts naar 131.118.1.0 hosts worden vertaald naar 131.118.2.0 niet 131.108.2.0. Dit komt omdat er al een NAT-vertaalartikel voor 10.1.1.2 is —> 131.108.2.1, dat ook het verkeer tussen host 1 en host 3 aansluit. Daarom wordt deze vertaling gebruikt en worden de toegangslijsten 108 en 118 niet gecontroleerd.
Hoewel de eenvoudige vertaalingang in de NAT-vertaaltabel is geïnstalleerd, kan deze door elke externe gebruiker op een externe host worden gebruikt om een pakket naar Host 1 te verzenden zolang de externe gebruiker het interne mondiale adres (131.108.2.1) voor Host 1 gebruikt. Normaal is een statische NAT-vertaling nodig om dit mogelijk te maken.
De juiste manier om het voorbeeld in dit document te vormen is door routekaarten te gebruiken. Met een benadering van de routekaart, 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 IP-adressering en -servicesopdrachten voor meer informatie over deze opdrachten.
Hier is wat er gebeurt wanneer Host 1 Telnetjes aan 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 zal NAT, omdat NAT een routekaart heeft gebruikt die overeenkomt met het te vertalen verkeer, een volledig uitgebreide vertaalopdracht creëren, die zowel informatie over de interne als externe vertaling bevat:
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 teruggeven: Host 2 to 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)
Wanneer Host 1 een pakket naar Host 3 verstuurt, verschijnt deze informatie:
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 op (N1) niet overeenkomt met de volledig uitgebreide vertaalingang die voor het Host 1 tot Host 2-verkeer werd gebruikt. Omdat de bestaande vertaling niet overeenkomt, creëert NAT een andere vertaalopdracht voor Host 1 tot Host 3 Traffic.
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-vertaaltabel twee volledige items bevat, zal deze tabel het verkeer naar de twee verschillende bestemmingen vanuit dezelfde bron correct vertalen.
Anders dan de eenvoudige vertaalingang die via de toegangslijst werd gemaakt, kan de volledig uitgebreide vertaalingang die via de routekaart is gemaakt, niet door een andere externe gebruiker worden gebruikt om een pakket naar Host 1 te verzenden. Een statische NAT-vertaling is nodig om dit toe te staan.
In het geval van toegang-lijst met overload is de configuratie gelijk aan de access-list zonder overload geval. De uitzondering is dat u het sleutelwoord overload moet toevoegen aan de opdracht ip nat binnen bronlijst 108 pool pool108 en ip nat binnen bronlijst 118 pool pool18.
Het voordeel van het gebruiken van route-maps is dat onder de overeenkomende opdracht u meer opties dan bron IP adres kunt hebben. Bijvoorbeeld, onder de route-kaart, de interface van de match of de a.p.v. volgende-hop kan worden gespecificeerd. Door route-maps te gebruiken, kunt u het IP-adres evenals de interface of het volgende-hopadres specificeren waarop het pakket moet worden doorgestuurd. Daarom worden de routekaarten met NAT gebruikt in een scenario waar de abonnee naar verschillende ISP's multicalibreren.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
10-Aug-2005 |
Eerste vrijgave |