Network Address Translation (NAT)

Damian Stelmach

Skoro nasze klienty działają już w domenie Active Directory, mają poprawnie skonfigurowane parametry karty sieciowej, no to przyszła wreszcie pora, aby dać im możliwość korzystania z Internetu. Potrzebna nam będzie do tego rola – usługa routingu’u, która na serwerach windowsowych pełni klika funkcji. Routing tak w ogóle to proces przesyłania pakietów pomiędzy ruterami w sieciach rozległych, a przy okazji wybór najlepszej trasy dla tych pakietów. Funkcję typowego rutera możemy na serwerze windowsowym spokojnie skonfigurować, ale zazwyczaj nie stosuje się go do takich zadań. Zwyczajnie nie jest to system zoptymalizowany do takich działań, które jak by nie było są dość specyficzne.

Natomiast Windowsa można skonfigurować jako serwer VPN czy też ruter dostępowy dla sieci lokalnej, czyli porostu ruter, który łączy komputery w LAN’ie z Internetem. Dokładnie taką funkcję realizują rutery w naszych domach. Usługa NAT (ang. Network Address Translation), bo to za jej pomocą klienty naszego serwera korzystać będą z neta, ma na celu zamianę adresów prywatnych stosownych w sieciach lokalnych na adresy publiczne stosowane w sieciach rozległych. Windowsowe serwery stosują NAT’a, który pozwala wielu hostom lokalnym korzystać z jednego, publicznego adresu IP, który przydzielił usługodawca internetowy (w naszym przypadku program VirtualBox).

NAT

Kiedy klient sieci lokalnej, będzie chciał skorzystać z Internetu, to jego pakiety najpierw trafią do serwera, adresy lokalne zapisane w tych pakietach zostaną zamienione na adres publiczny i serwer dalej wyśle je w świat. W drodze powrotnej, adres publiczny zostanie zamieniony przez serwer na adres prywatny hosta i jemu przekazany. Dlatego tak ważne jest skonfigurowanie adresu bramy domyślniej na klientach. Bez tego nie będą one mogły z Internetu korzystać. Musicie też wiedzieć o tym, że translacji NAT nie używa się tylko na styku sieci lokalnych i rozległych, ale również na styku różnych sieci lokalnych, czy też podczas wirtualizacji.

W przypadku mojej sieci, ruter znajduje się bezpośrednio na styku sieci lokalnej i Internetu, na tym ruterze jest już pierwszy NAT, a komputery w mojej sieci mają adresację prywatną. Potem jest program VirtualBox, który po wyborze karty sieciowej w trybie NAT dla serwerowej maszyny wirtualnej staje się kolejnym, tym razem wirtualnym ruterem. Mamy więc drugiego NAT’a. Dalej kiedy konfigurujemy translacje adresów na serwerze pojawia nam się trzeci NAT. Hosty w naszej wirtualnej sieci, chcąc komunikować się z Internetem przechodzą przez te trzy NAT’y i za każdym razem następuje translacja adresów, dwóch miejscach jest to translacja adresu prywatnego na prywatny, a w jednym następuje translacja z adresu prywatnego na publiczny.

Translacja