In der modernen Kommunikationstechnologie ist die Network Address Translation, kurz NAT, eine der fundamentalen Techniken, die das Internet in seiner heutigen Form überhaupt erst funktionsfähig halten. Obwohl fast jeder Internetnutzer täglich auf diese Technologie angewiesen ist, arbeitet sie meist unsichtbar im Hintergrund. Vereinfacht ausgedrückt handelt es sich bei NAT um ein Verfahren, das in Routern eingesetzt wird, um Adressinformationen in Datenpaketen auszutauschen. Diese Übersetzung ist notwendig, da das Internet und lokale Netzwerke unterschiedliche Adressräume verwenden. Ohne diesen Mechanismus wäre die Kommunikation zwischen den Milliarden von Geräten weltweit längst zusammengebrochen, da die Anzahl der verfügbaren öffentlichen Adressen im alten Standard IPv4 schlichtweg nicht ausreicht.
Das Problem der knappen Adressen
Um die Notwendigkeit von NAT zu verstehen, muss zunächst das zugrundeliegende Adressierungsproblem betrachtet werden. Jedes Gerät, das am Internet teilnimmt, benötigt eine eindeutige IP-Adresse. Das ursprüngliche Protokoll IPv4 bietet jedoch nur rund 4,3 Milliarden Adressen. Angesichts der Tatsache, dass heute nicht nur Computer, sondern auch Smartphones, Fernseher und Haushaltsgeräte vernetzt sind, war dieser Vorrat schnell erschöpft. Die Lösung liegt in der Trennung von öffentlichen und privaten Netzen. Innerhalb eines Heim- oder Firmennetzwerks werden sogenannte private IP-Adressen verwendet, die im öffentlichen Internet nicht geroutet werden. Diese privaten Adressen können weltweit millionenfach in verschiedenen lokalen Netzwerken gleichzeitig existieren, ohne dass es zu Konflikten kommt. Die Schnittstelle zur Außenwelt bildet der Router, der meist nur eine einzige, weltweit eindeutige öffentliche IP-Adresse vom Internetanbieter zugewiesen bekommt.
Die Funktionsweise der Übersetzung
Hier kommt die Network Address Translation ins Spiel. Wenn ein Computer aus dem lokalen Netzwerk eine Anfrage an eine Webseite im Internet sendet, passiert das Datenpaket den Router. Dieser erkennt, dass die Anfrage von einer privaten Adresse kommt, mit der der Webserver im Internet nichts anfangen kann. Der Router entfernt daher die private Absenderadresse aus dem Datenpaket und ersetzt sie durch seine eigene öffentliche Adresse. Gleichzeitig merkt er sich in einer Übersetzungstabelle genau, welcher interne Rechner welche Anfrage gestellt hat. Antwortet der Webserver nun, sendet er die Daten an die öffentliche Adresse des Routers zurück. Der Router schaut in seiner Tabelle nach, tauscht die Zieladresse wieder gegen die private Adresse des ursprünglichen Absenders aus und leitet das Paket ins interne Netzwerk weiter. Für den Webserver sieht es so aus, als würde er nur mit dem Router kommunizieren, während der interne Rechner gar nicht bemerkt, dass seine Adresse zwischendurch ausgetauscht wurde.
Varianten und Port Address Translation
In der Praxis kommt meist eine spezielle Form von NAT zum Einsatz, die als Port Address Translation oder PAT bezeichnet wird. Da oft viele Geräte gleichzeitig über nur eine öffentliche IP-Adresse kommunizieren wollen, reicht der bloße Austausch der IP-Adresse nicht aus, um die Antwortpakete korrekt zuzuordnen. Der Router nutzt daher zusätzlich Portnummern zur Unterscheidung. Jede ausgehende Verbindung erhält einen eigenen Quell-Port. Kehrt ein Datenpaket zurück, erkennt der Router anhand der Portnummer, zu welchem internen Gerät und zu welcher spezifischen Anwendung das Paket gehört. Dies ermöglicht es, dass Dutzende oder gar Hunderte von Geräten über einen einzigen Internetanschluss gleichzeitig surfen können. Neben dieser dynamischen Variante gibt es auch statisches NAT, bei dem eine feste öffentliche IP eins zu eins auf eine interne IP abgebildet wird, was jedoch meist nur für Serverdienste relevant ist.
Sicherheitsaspekte und Grenzen
Ein oft willkommener Nebeneffekt der Network Address Translation ist ein gewisser Sicherheitsgewinn. Da die internen Strukturen und IP-Adressen nach außen hin verborgen bleiben, sind die Geräte im lokalen Netzwerk nicht direkt aus dem Internet adressierbar. Ein Angreifer, der das Netzwerk von außen scannt, sieht nur den Router und dessen öffentliche Adresse. Ein direkter Zugriff auf einen Rechner hinter dem NAT-Router ist ohne explizite Freigaben, wie etwa Port-Forwarding, nicht möglich. Dennoch darf NAT nicht mit einer vollwertigen Firewall verwechselt werden. Es verschleiert zwar die Topologie, bietet aber keinen Schutz vor Schädlingen, die von innen heraus Verbindungen aufbauen, oder vor Angriffen auf Anwendungsebene. Mit der langsamen Einführung des neuen Standards IPv6, der praktisch unbegrenzt viele Adressen bietet, könnte die Notwendigkeit von NAT langfristig abnehmen, doch aktuell bleibt es das unverzichtbare Bindeglied der globalen Vernetzung.