Network address translation

Network address translation (skratka NAT; doslova preklad sieťovej adresy/preklad sieťových adries; iné názvy: network masquerading – doslova sieťové maskovanie/sieťová maškaráda, native address translation – doslova natívny preklad adries, IP masquerading – doslova IP maskovanie) je spôsob úpravy sieťovej prevádzky cez smerovač prepisom východiskovej a/alebo cieľovej IP adresy, často i zmenu čísla TCP/UDP portu pri prichádzajúcich IP paketoch. K tomu patrí i zmena kontrolného súčtu (pri IP i TCP/UDP) aby boli zmeny akceptované. NAT sa väčšinou používa pre prístup viacerých počítačov z lokálnej siete na Internet pod jedinou verejnou adresou. NAT však môže spôsobiť problémy v komunikácii medzi klientmi a znížiť rýchlosť prenosu.

 Definícia 
Preklad sieťových adries je funkcia, ktorá umožňuje prekladanie adries. Znamená to, že adresy z lokálnej siete sa preložia na jedinečnú adresu, ktorá slúži pre vstup do inej siete (napr. Internetu), prekladanú adresu si uloží do tabuľky pod náhodným portom, pri odpovedi si v tabuľke vyhľadá port a pošle pakety na IP adresu priradenú k danému portu. NAT je vlastne jednoduchým proxy serverom. NAT môže byť softwarového typu (Nat32, Kerio Winroute firewall) alebo hardwarového typu (router s implementáciou NAT).

 Vlastná komunikácia 
Klient odošle požiadavku na komunikáciu, smerovač (router) sa pozrie do tabuľky a zistí, či ide o adresu lokálnu alebo vonkajšiu adresu. V prípade externej adresy si do tabuľky uloží číslo náhodného portu, pod ktorým bude vysielať a k nemu si priradí IP adresu.

 Výhody 
 umožňuje pripojiť viac počítačov na jednu verejnú IP adresu – rieši sa tak nedostatok pridelených verejných IP adries
 zvyšuje bezpečnosť počítačov pripojených za NATom ( potencionálny útočník nepozná ozajstnú IP adresu)

 Druhy sieťového prekladu 
NAT môže byť implementované v rôznych podobách prekladaných adries a portov. Každá z týchto podôb rôzne ovplyvňuje komunikačné protokoly aplikácií. Pri niektorých aplikačných protokoloch, ktoré používajú informáciu IP adresy, aplikácia bežiaca na uzle v maskovanej sieti potrebuje zistiť externú adresu NAT. Niekedy dokonca potrebuje vyšetriť a kategorizovať typ používaného mapovania. Z tohto dôvodu bol vyvinutý Simple traversal of UDP over NATs (STUN) protocol (RFC 3489).
Klasifikuje NAT implementácie na:
1. full cone NAT
2. (address) restricted cone NAT
3. port restricted cone NAT
4. symmetric NAT a súčasne navrhuje metodológiu pre testovanie zariadení. Nakoľko sa jeho metodológia stala nepostačujúcou a v niektorých prípadoch chybnou boli vytvorené nové metódy a ich štandardy RFC 5389 (2008). STUN acronym dnes prezentuje nový názov pre špecifikáciu: Session Traversal Utilities for NAT.

Prvé 3 typy NAT uchovávajú to isté mapovanie pre danú privátnu IP adresu nezávisle od cieľovej IP adresy. Avšak symetrické NAT alokuje nové mapovania ktoré sú závislé od cieľovej adresy.
 Full cone NAT,, tiež nazývané NAT 1-to-1
 Keď už je interná (iAddr:iPort) adresa namapovaná na externú adresu (eAddr:ePort), každý paket z adresy iAddr:iPort bude poslaný cez adresu Addr:ePortOnce
 Každý externý host môže posielať pakety na adresu iAddr:iPort prostredníctvom poslania na adresu eAddr:ePort.
 V tomto prípade, po vykonaní mapovania na dosiahnutie klienta za NAT, je potrebné vedieť len mapovaciu schému aby mohol byť paket doručený. right|400px (Address) Restricted cone NAT
 Keď už je interná (iAddr:iPort) adresa namapovaná na externú adresu (eAddr:ePort), každý paket z adresy iAddr:iPort bude poslaný cez adresu Addr:ePort.
 Externý host môže posielať pakety iAddr:iPort posielaním na adresu eAddr:ePort a to len v prípade ak iAddr:iPort poslal predtým paket na hAddr:any. „any“ znamená, že číslo portu nie je podstatné
 V tomto prípade je teda potrebné aby komunikáciu začal klient ktorý je za NAT a až potom môže klient mimo NAT plnohodnotne komunikovať s daným klientom. V prípade ak klient mimo NAT pošle dáta klientovi za NAT ako prvý, tieto dáta nebudú doručené. right|400px Port-Restricted cone NAT

Podobný (Address) Restricted cone NAT, ale sú obmedzené čísla portov.
 Keď je už interná (iAddr:iPort) adresa namapovaná na externú adresu (eAddr:ePort), každý paket z adresy iAddr:iPort bude poslaný cez adresu Addr:ePort.
 Externý host môže posielať pakety iAddr:iPort posielaním na adresu eAddr:ePort a to len v prípade ak iAddr:iPort poslal predtým paket
 Ak klient za NAT začína komunikáciu, posiela klientovi mimo NAT dáta na jeho IP adresu a číslo portu. Po prijatí dát, môže klient mimo NAT posielať dáta späť len na to číslo portu, na ktorom dáta prijal. right|400px Symmetric NAT

 Každá požiadavka z internej IP adresy a portu na špecifickú cieľovú adresu a port je namapovaná na unikátnu externú zdrojovú adresu a port
 Aj keď ten istý interný host pošle paket s tou istou zdrojovou adresou a portom, ale inému cieľu, je použité nové mapovanie.
 Iba externý host, ktorý dostane paket z interného hostu môže poslať paket späť. right|400px

 Iné projekty 

 Externé odkazy 
 Jak funguje NAT 
 Skryté sítě a NAT 
 Přelez, přeskoč a podlez NAT
 RFC 4008 – Standards Track – Definitions of Managed Objects for Network Address Translators (NAT)
 RFC 3022 – Traditional IP Network Address Translator (Traditional NAT)
 RFC 1631 – Obsolete – The IP Network Address Translator (NAT)
 RFC 3489 - STUN - Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)

Kategória:Internet
Kategória:Smerovanie