Inleiding
Dit document beschrijft hoe u NAT-serverbelasting (Network Address Translation) kunt configureren door TCP-verkeer te verdelen op Cisco IOS® routers.
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. Dit document is van toepassing op alle routers en switches van Cisco IOS.
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.
Achtergrondinformatie
doel
Gebruikers die toegang hebben tot de lokale server van buiten Internet hebben toegang tot de server met behulp van één URL of IP adres, echter het NAT-apparaat wordt gebruikt om het gebruikersverkeer te laden met meerdere identieke servers met gespiegelde inhoud.
Beschrijving
Buiten gebruikers A en B hebben toegang tot de inhoud van de webserver met het buiten zichtbare IP-adres 172.16.2.3 (virtueel IP-adres van de servers). De NAT-router vertaalt het verkeer dat voor 172.16.1.3 is bestemd naar de interne IP-adressen 10.1.1.1, 10.1.1.2 en 10.1.1.3 in een routekaart en zendt het naar de betreffende server. Elke nieuwe sessie die van de externe gebruiker wordt geïnitieerd, wordt vertaald naar het volgende fysieke server-IP-adres.
Configureren
Netwerkdiagram
Stappen
- Gebruiker-A initieert een TCP-verbinding met het IP-adres van de virtuele server 172.16.2.3.
- De NAT-router maakt, na het ontvangen van het verbindingsverzoek, een NAT-vertaalingang aan die het volgende beschikbare IP-adres van de server toewijzen (bijvoorbeeld 10.1.1.1).
- De NAT router vervangt het IP-adres van de bestemming met het toegewezen echte IP-adres en stuurt het pakket door.
- De server ontvangt het pakket en antwoordt terug naar de bron.
- De NAT router ontvangt het pakket dat van de server is geretourneerd en voert de NAT-tabelraadpleging uit. De router vertaalt dan het bronadres naar het virtuele server-IP-adres (172.16.2.3) en stuurt het pakket door.
- Gebruiker-B initieert een TCP-sessie met server virtueel IP-adres 172.16.2.3. Na het ontvangen van de verbindingsaanvraag vertaalt de NAT-router dit naar het volgende beschikbare IP-adres van de server (bijvoorbeeld 10.1.1.2) en stuurt het pakket naar de server door.
Aangezien statische NAT in de andere richting bidirectioneel is, wordt de bestemming van het pakket vertaald. Wanneer u deze vorm van NAT doet, wordt deze geactiveerd door het verzenden van TCP-pakketten. Het verzenden van Internet Control Message Protocol (ICMP) kan niet tot de NAT-vertaling leiden.
Non-TCP verkeer wordt gericht aan het eerste adres in de pool.
In tegenstelling tot statische binnenbron NAT en statische binnenbron PAT, reageert de router niet op ARP vragen over het mondiale adres, tenzij dat adres niet is toegewezen aan zijn interface. Daarom kan het nodig zijn om het toe te voegen aan een interface zoals het secundaire. Het is niet mogelijk om poorten met deze vertaalmethode (bijvoorbeeld, 80 en 1087) te herrichten. De havens moeten overeenkomen.
Opmerking: Het NAT pool IP-adres hoeft niet hetzelfde te zijn als het externe interface-IP-adres. Om het zelfde te illustreren, gebruikt het voorbeeld een IP adres van een verschillend blok 172.16.2.x dan het eigenlijke interfaceIP Subnet 172.16.1.x.
- Stel een pool van adressen in die de adressen van de echte servers bevatten.
ip nat pool NATPOOL 10.1.1.1 10.1.1.3 prefix-length 24 type rotary
- Stel een toegangslijst in die het adres van de virtuele server mogelijk maakt.
access-list 1 permit host 172.16.2.3
- Schakel een dynamische vertaling van binnendoeladressen in.
ip nat inside destination list
pool
ip nat inside destination list 1 pool NATPOOL
- Definieer NAT binnen en buiten interfaces.
Interface gig0/0
ip address 10.1.1.4 255.255.255.0
Ip nat inside
Interface gig0/1
ip address 172.16.1.1 255.255.255.248
Ip nat outside
IP-adressen 10.1.1.1, 10.1.1.2 en 10.1.1.3 worden nu op vrijwillige basis uitgereikt wanneer iemand probeert om toegang te krijgen tot IP-adres 172.16.2.3
Verifiëren
Om dit te verifiëren, initieer meerdere TCP sessies van externe hosts naar het virtuele IP-adres. Debug IP NAT tvoor verificatie kan de ip - nat - vertaaloutput worden vertaald/getoond .
Router#
Router#
*Jul 24 13:27:41.193: NAT*: s=192.168.1.1, d=172.16.2.3->10.1.1.3 [22864]
*Jul 24 13:27:41.196: NAT*: s=10.1.1.3->172.16.2.3, d=192.168.1.1 [18226]
Router#
*Jul 24 13:27:44.329: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35533]
*Jul 24 13:27:44.331: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14573]
*Jul 24 13:27:44.332: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35534]
*Jul 24 13:27:44.332: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35535]
*Jul 24 13:27:44.332: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35536]
*Jul 24 13:27:44.333: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14574]
*Jul 24 13:27:44.365: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14575]
*Jul 24 13:27:44.365: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14576]
*Jul 24 13:27:44.368: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35537]
Router#
*Jul 24 13:27:44.369: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35538]
*Jul 24 13:27:44.369: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35539]
*Jul 24 13:27:44.369: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35540]
*Jul 24 13:27:44.371: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14577]
*Jul 24 13:27:44.574: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14578]
Router#
*Jul 24 13:27:46.474: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14579]
*Jul 24 13:27:46.478: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35541]
*Jul 24 13:27:46.478: NAT*: s=192.168.2.1, d=172.16.2.3->10.1.1.1 [35542]
*Jul 24 13:27:46.479: NAT*: s=10.1.1.1->172.16.2.3, d=192.168.2.1 [14580]
Router#sh ip nat tr
Pro Inside global Inside local Outside local Outside global
tcp 172.16.2.3:23 10.1.1.1:23 192.168.2.1:49703 192.168.2.1:49703
tcp 172.16.2.3:23 10.1.1.2:23 192.168.2.1:50421 192.168.2.1:50421
tcp 172.16.2.3:80 10.1.1.3:80 192.168.1.1:26621 192.168.1.1:26621
Router#
Problemen oplossen
Er is momenteel geen specifieke troubleshooting-informatie beschikbaar voor deze configuratie.
Beperkingen
- Het kan niet detecteren of een interne server in de groep mislukt. Dit betekent dat Cisco IOS altijd verkeer naar servers in de groep zal doorsturen, ongeacht hun operationele status.
- Het kan de werkelijke lading van de interne servers niet bepalen, dus het kan de taakverdeling niet efficiënt uitvoeren.