Wszystko o NAT – mechanizmy translacji adresów sieciowych
- Kamil Folga,
- 09.09.2013
Mechanizm NAT jest nierozerwalnie związany z rozwojem internetu. To powszechnie wykorzystywany mechanizm umożliwiający dostęp wewnętrznej prywatnej adresacji do zasobów sieci. Zwiększająca się liczba urządzeń sieciowych, a jednocześnie ograniczona liczba publicznych adresów IP, powoduje implementację NAT w różnych technologiach i urządzeniach.
Network Address Translation został zdefiniowany jako mechanizm pozwalający przyłączyć do internetu sieć lokalną, posługującą się blokiem adresacji prywatnej (RFC 1918). W sieci internet globalnie osiągalne są adresy publiczne, które są unikalne. Prywatne klasy adresowe nie komunikują się bezpośrednio w ramach sieci internet. Mogą komunikować się między sobą w ramach sieci lokalnej, ale już do internetu wychodzą z wykorzystaniem opisywanego mechanizmu. Mechanizm NAT jest właśnie pośrednikiem pomiędzy adresami z pul prywatnych a zasobami globalnymi osiągalnymi za pomocą adresacji publicznej. Specyfikacje NAT są rozwijane od ponad 15 lat. W rzeczywistości odpowiednia implementacja NAT pozwala na dowolną zamianę dowolnej puli adresowej na inną pulę adresową, także pomiędzy zakresami adresacji publicznej.
NAT w dokumentach i terminologii
Historycznie NAT (RFC 1931) pojawił się w latach 90. ubiegłego wieku, wraz z innymi rozwiązaniami optymalizującymi zmniejszającą się pulę adresów IPv4 – DHCP, adresacja prywatna zgodnie z RFC1918, CIDR. Gdy technologia była nazywana po prostu NAT, nie istniała jeszcze adresacja IPv6. Po pojawieniu się adresacji IPv6 i nowych mechanizmów migracji z IPv4 do IPv6 powstały nowe formy znanej translacji adresów. I tak, standardowy NAT określa się obecnie nazwą NAT44. Ten mechanizm dokonuje translacji adresacji IPv4 na IPv4. Z kolei NAT46 tłumaczy adresację IPv4 na IPv6 oraz odwrotnie (NAT64). Pozostałe formy NAT (przykładowo NAT464) dokonują bardziej skomplikowanych – wielokrotnych – translacji pomiędzy adresacjami IPv6 i IPv4.
Podstawy translacji adresów
NAT (Network Address Translation) jest procesem modyfikującym informację o adresie IP w nagłówku pakietu IP, w momencie przesyłania ruchu przez urządzenie sieciowe. W większości konfiguracji, NAT podmienia prywatne adresy wewnątrz sieci na adresy IP publiczne, udostępniane przez dostawcę usługi dostępu do internetu. Taki zabieg pozwala komputerom w sieci domowej czy firmowej współdzielić połączenie internetowe. Dodatkowo, uzyskuje się zwiększony poziom bezpieczeństwa sieci, ponieważ dostęp do sieci wewnętrznej z zewnątrz jest mocno ograniczony.