NAT

NAT (fra engelsk.  Network Address Translation - "netværksadresseoversættelse") er en mekanisme i TCP /IP-netværk , der giver dig mulighed for at konvertere IP-adresser på transitpakker . Kaldes også IP Masquerading , Network Masquerading og Native Address Translation .

Fungerer

Adresseoversættelse ved hjælp af NAT-metoden kan udføres af næsten enhver routingenhed - en router [1] , adgangsserver , firewall . Den mest populære er SNAT, hvor essensen af ​​mekanismen er at erstatte kildeadressen ( engelsk  kilde ), når pakken passerer i én retning og omvendt erstatte destinationsadressen ( engelsk  destination ) i svarpakken. Sammen med kilde-/destinationsadresserne kan kilde- og destinationsportnumrene også erstattes .

Når routeren modtager en pakke fra den lokale computer, ser den på destinations-IP-adressen. Hvis det er en lokal adresse, videresendes pakken til en anden lokal computer. Hvis ikke, så skal pakken sendes ud på internettet. Men når alt kommer til alt, angiver returadressen i pakken den lokale adresse på computeren, som ikke vil være tilgængelig fra internettet. Derfor oversætter (erstatter) routeren "on the fly" pakkens retur-IP-adresse til dens eksterne (synlig fra internettet) IP-adresse og ændrer portnummeret (for at skelne mellem svarpakker adresseret til forskellige lokale computere). Den kombination, der er nødvendig for omvendt substitution, gemmer routeren i sin midlertidige tabel. Nogen tid efter, at klienten og serveren er færdig med at udveksle pakker, vil routeren slette posten om den n'te port i sin tabel for forældelsesfristen.

Ud over kilde-NAT (forsyner brugere af et lokalt netværk med interne adresser for at få adgang til internettet ), bruges destinations-NAT også ofte, når opkald udefra udsendes af en firewall til en brugers computer på et lokalt netværk, der har en intern adresse og er derfor ikke direkte tilgængelig uden for netværket (uden NAT).

Der er 3 grundlæggende begreber for adresseoversættelse: statisk ( Statisk netværksadresseoversættelse ), dynamisk ( dynamisk adresseoversættelse ), maskerade (NAPT, NAT Overload, PAT).

Statisk NAT  - Kortlægning af en uregistreret IP-adresse til en registreret IP-adresse på en-til-en-basis. Især nyttig, når enheden skal være tilgængelig uden for netværket.

Dynamisk NAT  - Mapper en uregistreret IP-adresse til en registreret adresse fra en gruppe af registrerede IP-adresser. Dynamic NAT etablerer også en direkte mapping mellem uregistrerede og registrerede adresser, men kortlægningen kan ændre sig afhængigt af den registrerede adresse, der er tilgængelig i adressepuljen under kommunikation.

Overbelastet NAT (NAPT, NAT Overload, PAT, masquerading) er en form for dynamisk NAT, der kortlægger flere uregistrerede adresser til en enkelt registreret IP-adresse ved hjælp af forskellige porte. Også kendt som PAT (Port Address Translation). Når den er overbelastet, oversættes hver computer på det private netværk til den samme adresse, men med et andet portnummer.

NAT-mekanismen er defineret i RFC 1631 , RFC 3022 .

NAT-typer

En NAT-klassificering, man ofte støder på i forbindelse med VoIP . [2] Udtrykket "forbindelse" bruges i betydningen "seriel udveksling af UDP-pakker".

Symmetrisk NAT (Symmetrisk NAT) - oversættelse, hvor hver forbindelse initieret af parret "intern adresse: intern port" konverteres til et gratis unikt tilfældigt udvalgt par "offentlig adresse: offentlig port". Det er dog ikke muligt at starte en forbindelse fra et offentligt netværk.

Cone NAT, Full Cone NAT  - entydig (gensidig) oversættelse mellem parrene "intern adresse: intern port" og "offentlig adresse: offentlig port". Enhver ekstern vært kan starte en forbindelse til en intern vært (hvis det er tilladt i firewallreglerne).

Address-Restricted cone NAT, Restricted cone NAT  - permanent oversættelse mellem parret "intern adresse: intern port" og "offentlig adresse: offentlig port". Enhver forbindelse initieret fra en intern adresse gør det muligt for ham at modtage pakker fra enhver port på den offentlige vært, hvortil han tidligere sendte pakken/pakkerne.

Port-Restricted cone NAT  - oversættelse mellem parret "intern adresse: intern port" og "public address: public port", hvor indgående pakker går til den interne vært fra kun én port på den offentlige vært - den, som den interne værten har allerede sendt pakken.

Fordele

NAT udfører tre vigtige funktioner.

  1. Giver dig mulighed for at gemme IP-adresser (kun ved brug af NAT i PAT-tilstand) ved at oversætte flere interne IP-adresser til én ekstern offentlig IP-adresse (eller flere, men færre end interne). De fleste netværk i verden er bygget på dette princip: 1 offentlig (ekstern) IP-adresse allokeres til et lille område af en lokal udbyders hjemmenetværk eller til et kontor, bag hvilken interfaces med privat (intern) IP adresser fungerer og få adgang.
  2. Giver dig mulighed for at forhindre eller begrænse adgang udefra til interne værter, hvilket giver mulighed for adgang indefra og udefra. Når en forbindelse startes inde fra netværket, oprettes en oversættelse. Svarpakker, der kommer udefra, matcher den oprettede oversættelse og springes derfor over. Hvis der ikke er en tilsvarende oversættelse for pakker, der ankommer udefra (og den kan oprettes, når forbindelsen er påbegyndt eller statisk), springes de ikke over.
  3. Giver dig mulighed for at skjule visse interne tjenester fra interne værter/servere. Faktisk udføres den samme oversættelse ovenfor på en specifik port , men det er muligt at erstatte den interne port på en officielt registreret tjeneste (for eksempel TCP -port 80 ( HTTP -server) med ekstern port 54055). Udenfor, på den eksterne IP-adresse, efter adresseoversættelse til webstedet (eller forum) for kyndige besøgende, vil det således være muligt at komme til http://example.org:54055, men på den interne server bag NAT, vil fungere på normal port 80. Øge sikkerheden og skjule "ikke-offentlige" ressourcer.

Ulemper

  1. gamle protokoller . Protokoller, der blev udviklet før massevedtagelsen af ​​NAT, virker ikke, hvis der er en adresseoversættelse på vejen mellem kommunikerende værter . Nogle firewalls til oversættelse af IP-adresser kan rette op på denne mangel ved at erstatte IP-adresser korrekt, ikke kun i IP-headere, men også på højere niveauer (f.eks. i FTP -protokolkommandoer ). Se gateway på applikationsniveau .
  2. Bruger identifikation . På grund af oversættelsen af ​​mange-til-én-adresser er der yderligere problemer med brugeridentifikation og behovet for at gemme fulde oversættelseslogfiler.
  3. DoS angreb illusion . Hvis NAT bruges til at forbinde mange brugere til den samme tjeneste, kan dette give illusionen af ​​et DoS -angreb på tjenesten (flere succeser og fiaskoer). For eksempel fører et for stort antal ICQ -brugere bag NAT til et problem med at oprette forbindelse til serveren for nogle brugere på grund af overskridelse af den tilladte forbindelseshastighed. En delvis løsning på problemet er at bruge en pulje af adresser (en gruppe af adresser), for hvilke der udføres oversættelse.
  4. peer-to-peer netværk . I NAT-enheder, der ikke understøtter Universal Plug & Play -teknologi , kræves der i nogle tilfælde yderligere konfiguration (se Port-adresse-oversættelse ), når der arbejdes med peer-to-peer- netværk og nogle andre programmer, hvor det ikke kun er nødvendigt at starte udgående forbindelser, men også at acceptere indbakke.

Eksempel

Oversættelse af et lokalt netværk med et adresseområde på 172.16.14.0 /24 til det globale netværk vil blive udført via én ekstern IP-adresse (adressen på den router, der udfører oversættelsen).

Anvendelse: IP-netværk over en enkelt IP-adresse

• Omkostningsfordele ved at købe en enkelt IP-forbindelse i stedet for et IP-netværk.

• Skjul strukturen af ​​det interne IP-netværk for en ekstern observatør.

• Organisering af et system med en fordelt belastning.

• Deling gennem NAT giver transparent adgang til den beskyttede interne struktur uden brug af en firewall osv.

• Mange netværksprotokoller fungerer korrekt gennem NAT. Designimplementeringer (deling er NAT-forbindelsen) der er en hardwareimplementering af NAT (firewalls er integreret).

NAT loopback

Betydningen af ​​NAT loopback -teknologi (eller NAT hairpinning ) er enkel: Hvis en pakke kommer fra det interne netværk til routerens eksterne IP-adresse, anses den for at være kommet udefra - hvilket betyder, at firewall-reglerne er relateret til eksterne forbindelser virker. Og hvis pakken passerer gennem firewallen, vil NAT fungere og overtage formidlingen mellem de to intranetmaskiner. Dette giver to ting.

  1. Lige fra det lokale netværk kan du kontrollere, hvordan netværkstjenester er konfigureret.
  2. Adgang til en server placeret i det lokale netværk efter domænenavn. Uden NAT loopback ville du skulle redigere værtsfilen på hver maskine for hvert involveret domæne og underdomæne.

Ulempen ved NAT loopback er den øgede belastning på hub'en og routeren (sammenlignet med direkte adgang til serveren).

NAT Traversal

NAT-traversal (NAT-traversal eller auto-konfiguration) er et sæt funktioner, der gør det muligt for netværksapplikationer at bestemme, at de står bag en enhed, der leverer NAT, lære den eksterne IP-adresse på denne enhed og udføre portmapping for at videresende pakker fra en ekstern NAT port til en intern port, der bruges af applikationen; alt dette sker automatisk, det er ikke nødvendigt for brugeren at konfigurere porttilknytninger manuelt eller foretage ændringer i andre indstillinger. Der er dog forholdsregler ved at stole på sådanne applikationer - de får omfattende kontrol over enheden, potentielle sårbarheder opstår.

Softwareimplementering af NAT

Hvis du allerede har en eksisterende server, der kører et server- OS , er det muligt at organisere adresseoversættelse uden at skulle købe yderligere hardwareenheder. Som regel kræver softwareimplementering af NAT mindst to netværksadaptere i serveren (valgmuligheder med én er mulige, men med et trunk- VLAN ).

Alle eksisterende og brugte serveroperativsystemer understøtter den enkleste adresseoversættelse.

Med hensyn til fejltolerance, fleksibilitet og ydeevne bruges operativsystemer af UNIX -familien (de fleste GNU / Linux, *BSD - systemer samt OpenSolaris osv.). I mange af dem er NAT tilgængelig ud af boksen, i andre kan det implementeres ved at tilføje moduler i kombination med firewalls med adresseoversættelsesfunktioner ( IPFW , IPtables osv.). NAT fungerer også ud af boksen på Windows Server -familien af ​​operativsystemer .

Se også

Noter

  1. Håndbog om netværksprotokoller  . - 2. - Javvin Technologies Inc.. - S. 27. - ISBN 9780974094526 .
  2. Andrey Zhukov. Netværksadresseoversættelsestyper (NAT) Arkiveret 8. maj 2020 på Wayback Machine