NAT

Fra Wikipedia, den frie encyklopedi.

NAT, eller Network Address Translation, er en teknologi innført rundt 1996/97 for å redusere etterspørselen etter IPv4-adresser. På den tiden måtte alle datamaskiner som var tilkoblet Internett ha en unik IP-adresse.

Med NAT kan rutere skrive om IP-adressene fra det interne nettverket og ut mot Internett, slik at datamaskinene på innsiden av nettverket kan ha hvilke IP-adresser som helst – de skjules uansett bak routerens IP-adresse.

Når en pakke fra innsiden av et NATet nettverk når ruteren ut mot Internett, bytter ruteren ut din interne IP-adressen med sin egen offisielle adresse. På denne måten oppdager ikke maskiner på utsiden av nettverket at pakken kommer fra et privat og/eller lukket nettverk. Routeren vil endre adressen tilbake til innside-adressene når svarpakker kommer tilbake.

Et problem med NAT er at bruk av protokoller som FTP kan bli vanskelig. Spesiell oppførsel fra denne protokollen gjør at visse forholdsregler må tas i ruteren, for eksempel ved å aktivere connection tracking (som støttes i iptables). Alternativt kan man bruke FTPs passive modus for å unngå dette problemet.

Innholdsfortegnelse

1 Hvordan sette opp NAT i Linux
2 NAT som sikkerhetsmekanisme
3 Eksterne ressurser

RFC 1918

Man kan ikke uproblematisk velge hvilke IP-adresser man vil for NATede interne nett. Hvis du for eksempel bruker IP-adressen til www.vg.no på ditt nettverk, og senere skal lese VGs nyheter, velger datamaskinen din den lokale adressen istedet. IANA har derfor reservert en serie IP-adresser, såkalte RFC 1918-nett til disposisjon for lokalt bruk:

    10.0.0.0     -   10.255.255.255  (10/8 prefix)
    172.16.0.0   -   172.31.255.255  (172.16/12 prefix)
    192.168.0.0  -   192.168.255.255 (192.168/16 prefix)

Disse IP-adressene finnes ikke på offentlig Internett, så det er ingen sjanse for at det kan oppstå kollisjoner med tjenester på samme IP-adresse.

Hvordan sette opp NAT i Linux

Gjør følgende som root:

# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ethX -j MASQUERADE 

der ethX (f.eks. eth0 eller eth1) er nettverksgrensesnittet på "utsiden", dvs mot Internett, og 192.168.0.0/24 er nettverket. Hvis du bruker PPPoE eller modemethX byttes ut med pppX, og på ISDN må det byttes ut med ipppX.

Har du fast IP-adresse bør du gjøre:

# iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ethX -j SNAT --to dinfasteIP

NAT som sikkerhetsmekanisme

Det anbefales ikke å basere et nettverks sikkerhet sin på NAT. I beste fall oppnår man et snev av "Security through obscurity". Selv om det blir noe vanskeligere å rette angrep direkte mot enkeltmaskiner på det interne nettverket, vil for eksempel klienter som aksesserer ressurser på eksterne nettverk kunne kompromittere sikkerheten. Det fins også verktøy for å traversere en NAT-brannmur utenfra.

Eksterne ressurser


Personal tools