Technical Note #019 Auteur: Gemaakt op: Bijgewerkt op:
Olaf Suchorski 11 juli 2000 11 juli 2000
NAT (Network Address Translation) In deze Technical Note worden de meest voorkomende situaties met NAT doorgelicht. Daarnaast wordt beschreven hoe je NAT moet configureren en hoe je problemen met NAT kan herkennen.
NAT (Network address translation) NAT is een methode waarbij IP adressen worden omgezet van en naar privé IP domeinen om zo te voorzien in een transparante IP verbinding met bijvoorbeeld het internet. NAT apparatuur wordt gebruikt om geïsoleerde, niet geregistreerde IP domeinen te verbinden met wereldwijd geregistreerde unieke IP domeinen. Prive adressen vs Publieke adressen Om gebruik te kunnen maken van NAT is er voor elke IP class een privé IP domein1. Deze IP domeinen zijn zonder het bij de IANA (Internet Assigned Numbers Authority) aan te melden te gebruiken. privé IP domeinen t.b.v NAT: Class A B C
IP netwerk nummer + subnet mask 10.0.0.0 - 10.255.255.255 172.16.0.0 - 172.31.255.255 192.168.x.0 - 192.168.x.255
CDIR notatie (10/8) (172.16/12) (192.168/16)
Publieke IP domeinen: Alle overige IP domeinen kunnen niet zonder registratie bij de IANA gebruikt worden. Er zijn wat uitzonderingen2 maar deze domeinen gebruiken zonder registratie is het risico lopen dat een ander hetzelfde adres gebruikt en er zo dus een IP conflict ontstaat. LET OP bij het gebruik van privé adressen. Maak voor jezelf een IP–plan, hoeveel hosts zijn er nodig, Hoeveel IP domeinen ????. Het heeft weinig zin om 10/8 IP domein toe te kennen aan een netwerk van 8 computers en een server (1 IP domein). Doe je dit wel behoud dan wel het subnet mask wat erbij hoort.
1 2
De Netopia R-Router series hebben default of na een factory-reset het adres 192.168.1.1 Bijvoorbeeld 127.0.0.1 wordt gebruikt t.b.v een loopback test.
Olaf Suchorski
Page 1
09-02-2001
TU Poorten, Server Poorten en Client poorten Een TCP/UDP poort met een IP adres wordt ook wel TU-poort genoemd. Voor de meeste TCP/IP hosts geldt dat de TU-poorten 0 t/m 1023 worden gebruikt door de servers om te luisteren naar binnenkomende gesprekken. Clients die een connectie initialiseren selecteren vaak een TU-poort uit de reeks 1024 t/m 65535. Dit is niet altijd zo, echter uitzondering bevestigt de regel. Er zijn ook clients die een verbinding opbouwen met een TU-poort uit de reeks 0 t/m 1023 en servers die luisteren naar TU poorten groter dan 1023. Zie RFC1700 voor alle toegekende TU-poorten. NAT, MultiNAT en Dynamic NAT
WAN
• Dynamic NAT
• NAT
• MultiNAT
172.16.1.25 • 172.16.1.26 • 172.16.1.27 • 172.16.1.28 •
172.16.1.29 •
172.16.1.30:80 • 172.16.1.30:25 • 172.16.1.35:21 •
192.168.1.2 • 192.168.1.3 • 192.168.1.4 • 192.168.1.5 • 192.168.1.6 •
192.168.1.7 • 192.168.1.8 • 192.168.1.9 • 192.168.1.10 • 192.168.1.12
192.168.1.20 192.168.1.30
NAT
LAN
• Map & Range List
• Server List
• •
P R O F I L E ill.1
• NAT, 1 static of dynamisch, geregistreerd IP-nummer waarmee het LAN met de buitenwereld communiceert. Interne IP adressen worden omgezet met dit IP nummer. In illustratie 1 hierboven is dat 172.16.1.29. • Dynamic NAT, Een pool van geregistreerde publieke adressen t.b.v een pool van interne LAN adressen. Er zijn applicaties3 die niet achter NAT kunnen werken en die voor de buiten wereld een publiek IP nummer moeten hebben. In illustratie 1 staat een pool van publieke nummers (172.16.1.25 t/m 172.16.1.28) en een pool van interne IP adressen (192.168.1.2 t/m 192.168.1.6). Wanneer een van deze interne IP adressen een verbinding initialiseert over de router heen met bijvoorbeeld Timbuktu Pro krijgt hij een van de 3
Applicatie die een vast IP nummer willen hebben zijn o.a. Timbuktu, Netmeeting en sommige streaming pakketen.
Olaf Suchorski
Page 2
09-02-2001
publieke IP nummers uit de pool van publieke IP nummers. Mocht een pool van publieke nummers op zijn, zal de volgende gebruiker moeten wachten tot er een nummer vrij komt. Dit kan zijn wanneer er een verbinding over de router gesloten wordt en er zo weer een publiek IP nummer vrij komt of er moeten extra publieke IP nummers aangevraagd worden bij de provider. • MultiNAT, 1 op 1 koppeling van een publieke TU-poort en een intern LAN adres. Zie illustratie 1
172.16.1.30:80 (http) - 192.168.1.30 (interne Web/intranet server) 172.16.1.30:25 (smtp)- 192.168.1.30 (interne Mail server)
Wanneer de mail of web server vanaf het internet zichtbaar moeten zijn middels een URL zonder IP nummer (www.topit.nl/mail.topit.nl) moeten deze publieke IP nummers dus bekend zijn in de DNS van de provider. De provider zorgt er dan voor dat de rest van de wereld de web/mail server kan vinden. Voorbeeld uit DNS van een provider: Domein Type www.topit.nl A mail.topit.nl MX topit.nl NS
Class IN IN IN
1d 1d 3d
Source 172.16.1.30 172.16.1.30 ns2.knoware.nl
NAT, MultiNAT en Dynamic NAT configureren4 Na het maken van een connectie met de router via een telnet sessie of een serieele verbinding via de serieele kabel (wordt meegeleverd), kom je in een menu gestuurd configuratie scherm terecht. Selecteer de menu onderdelen (volg de pijlen) zoals ze in illustratie 2 met een zwart blok geselecteerd zijn. Wanneer je bij het menu ‘Network Address Translations (NAT)…’ bent kan je verschillende NAT configuraties voorbereiden om ze later aan een ‘profiel’ te hangen. Zie illustratie 2. In het profiel zet je ook NAT aan of uit. NAT: Wanneer je NAT aanzet in een profiel wordt automatisch het WAN IP adres gekoppeld met het LAN. De buitenwereld zit dus een IP verbinding vanuit je browser op je PC met als source adres het WAN IP adres en niet je locale privé IP nummer. Dynamic NAT : Maak eerst een ‘Public Range’. Deze range van publieke IP nummers wordt gebruikt als pool in samenwerking met een ‘Map List”. Dit is een range van interne privé IP nummers die gebruik mogen maken van de pool die we hebben gemaakt in de ‘Public Range’. Je hebt nu voor de buitenwereld een vast publiek IP nummer.
4
Zie ook technote van Netopia www.netopia.com/technotes
Olaf Suchorski
Page 3
09-02-2001
MultiNAT: Ga naar het menu ‘Show/Change Server List…’. Zie ook illustratie 2. Via het ‘Add Server’ of ‘Show/Change Server’ menu kan je uiteindelijk een TUpoort aanmaken. De buitenwereld kan dan via het publieke IP adres 172.16.1.30 en poort 25 (172.16.1.30:25) de interne Mail server benaderen met het privé adres 192.168.1.30.
ill.2 NAT Associations: Na het voorbereiden van een Server List en een Map List moeten ze worden geassocieerd met een profiel. Ga terug naar het menu ‘Network Address Translations (NAT)…’ en selecteer het menu;
Hier kan je elke List koppelen of NAT aan/uit zetten per profiel. Zie ook illustratie 3.
Olaf Suchorski
Page 4
09-02-2001
Wanneer gebruik je NAT?? NAT wordt in de meeste gevallen gebruikt wanneer er een LAN gekoppelt wordt met het Internet. Op deze manier kan je met 1 publiek IP nummer (static of dynamisch) aan de slag. Ben je in het bezit van meerdere IP nummers dan zou je met een Server List een IP dienst aan de buitenwereld kunnen aanbieden (Mail, Web, FTP ……) of een IP pool maken t.b.v applicaties die een vast publiek IP nummer eisen. Een ander voorbeeld met NAT is wanneer je twee netwerken koppeld via bijvoorbeeld ISDN kan je NAT aanzetten, een Server List aanmaken en er zo voor zorgen dat alleen de IP diensten zichtbaar zijn die in de Server List staan en niet de rest van het IP domein. Wanneer gebruik je NAT niet !! Als het LAN draait op een publiek IP domein, zet je NAT uit. Als er een profiel t.b.v een VPN is aangemaakt, zet je NAT uit. Als er een profiel t.b.v een remote access gebruiker, zet je NAT uit. In de meeste gevallen van een LAN2LAN koppeling, zet je NAT uit. Hoe herken je een probleem met NAT !! Wanneer je wel een verbinding hebt, zie het menu ‘WAN Event’. Wanneer je een telnet sessie kan openen met de router aan de overkant. Wanneer je geen contact kan maken met een IP adres achter de router aan de overkant. En wanneer dit ook een LAN2LAN koppeling is dan staat NAT op een van de twee profielen aan. Zet NAT uit. Dezelfde kenmerken heb je ook bij een VPN connectie. Olaf Suchorski
Page 5
09-02-2001