Was ist die Network Address Translation?
NAT ist eine Technik, die in Computernetzwerken verwendet wird, um die IP-Adressen, die von Geräten innerhalb eines Netzwerks verwendet werden, zu verändern, wenn sie mit anderen Netzwerken, z.B. dem Internet, kommunizieren. Der Hintergrund ist, dass eine private IP-Adresse in öffentlichen Netzen nicht gültig ist und somit nicht mit externen Netzwerken kommunizieren kann. Das entsprechende Verfahren wurde bereits in den 90er Jahren entwickelt und im RFC 1631 beschrieben.
Network Address Translation: Eine Schlüsseltechnologie des modernen Internets
Mit der zunehmenden Verbreitung des Internets in den 1990er Jahren wurde schnell deutlich, dass die verfügbaren öffentlichen IPv4-Adressen nicht ausreichen würden, um jedem Gerät eine eigene routbare Adresse zuzuweisen. Hier kam NAT (Network Address Translation) ins Spiel. Dies ist eine Technologie, die es ermöglicht, dass mehrere Geräte in einem lokalen Netzwerk über eine einzige öffentliche Adresse mit dem Internet miteinander kommunizieren können. NAT bezeichnet den Prozess, bei dem der Router die privaten IP-Adressen aus dem lokalen Netzwerk in öffentliche IPv4-Adressen übersetzt. Dabei funktioniert NAT so, dass der Router die Quelladresse in den IP-Paketen modifiziert: Ersetzt der Router die private Adresse durch seine öffentliche, können die Hosts im internen Netz dennoch auf Internet Service Provider und andere externe Dienste zugreifen. NAT verwendet dabei verschiedene Techniken wie SNAT und DNAT, um ausgehende und NAT eingehende Verbindungen zu verwalten. Besonders wichtig ist die Port Address Translation (PAT), bei der zusätzlich zur Adressübersetzung auch Portnummern im Header des IP-Pakets angepasst werden, sodass mehrere interne Geräte gleichzeitig über dieselbe öffentliche Adresse kommunizieren können. Die Unterscheidung zwischen privaten und öffentlichen IP-Adressen ist dabei zentral: Während private Adressen nicht routbar im Internet sind, ermöglichen externe Adressen die globale Erreichbarkeit. NAT bietet neben der Adresseinsparung auch einen gewissen Sicherheitsvorteil, da es wie ein Paketfilter wirkt und interne Netzwerkstrukturen verbirgt, auch wenn es keine vollwertige Firewall ersetzt. Allerdings bringt NAT auch Herausforderungen mit sich, etwa bei NAT Traversal-Techniken, die notwendig sind, damit bestimmte Anwendungen trotz der Adressübersetzung zwischen privaten und öffentlichen Netzwerken funktionieren können.
Source NAT (SNAT) und Destination NAT (DNAT)
Innerhalb der NAT kann zwischen zwei Arten unterschieden werden, die sich auf den Ort beziehen, an dem die Adresskonvertierung stattfindet. Diese beiden Techniken dienen unterschiedlichen Zwecken und werden in verschiedenen Szenarien eingesetzt.
Source NAT
Wenn private IP-Adressen in die öffentliche IP-Adresse des Routers übersetzt werden, so bezeichnet man dies als SNAT, da die Adresse des Absenders beziehungsweise des sendenden Computers umgeschrieben wird. Die Datenpakete werden anschließend an das Internet versendet und erhalten neben der IP-Adresse eine Portnummer. Durch die Veränderung der Adressinformationen des Absenders wird eine Antwort an diesen jedoch erschwert.
Destination NAT
Damit im Falle einer Antwort die Datenpakete dem richtigen Gerät zugeordnet werden können, gibt es eine sogenannte NAT-Tabelle, auf die der Router zurückgreifen kann. Dort sind Informationen wie die IP-Adresse, Ports oder Time-Outs enthalten, sodass das jeweilige Paket an das richtige Ziel weitergeleitet werden kann. Da ein offener Port jedoch auch ein gewisses Sicherheitsrisiko darstellt, werden die Informationen nur für einen bestimmten Zeitraum gespeichert. Erfolgt eine Antwort außerhalb dieser Zeit, so wird der eingehende Datenverkehr blockiert.
Statisches und dynamisches NAT
Neben SNAT und DNAT kann zwischen dem statischen und dynamischen NAT unterschieden werden. Durch ein statisches NAT wird jede interne IP-Adresse einer öffentlichen IP-Adresse zugeordnet. In der dynamischen Adresskonvertierung im Netzwerk werden hingegen mehrere IP-Adressen aus einem internen Netzwerk einer einzigen IP-Adresse des externen Netzwerks zugeordnet.
Vor- und Nachteile der Netzwerkadressübersetzung
Es gibt eine Reihe verschiedener Vorteile und Nachteile, die die Nutzung von NAT mit sich bringt. Positiv sind unter anderem folgende Aspekte:
- Reduzierter Bedarf öffentlicher IP-Adressen: Da durch NAT mehrere Geräte in einem privaten Netzwerk über eine einzige öffentliche IP-Adresse mit dem Internet verbunden werden, wird der Bedarf von öffentlichen Internet Protocol-Adressen verringert. Dies ist vor allem hinsichtlich der begrenzten IPv4-Adressen relevant.
- Sicherheitsvorteile: NAT fungiert als eine Art Firewall, da private IP-Adressen vor dem öffentlichen Internet verbergen. So erhalten Nutzer einen gewissen Grad an Privatsphäre.
Neben den genannten Vorteilen gibt es jedoch auch einige Nachteile:
- Leistungsbeeinträchtigungen: Die Übersetzung von IP-Adressen erfordert zusätzliche Verarbeitung auf dem Router, wodurch gewisse Beeinträchtigungen hinsichtlich der Leistung und Latenz entstehen können.
- Verletzung des Ende-zu-Ende-Prinzips: Durch den Router werden die gesendeten Datenpakete verändert, obwohl dieser nicht deren Absender ist.
- Informationsverlust: Da Informationen innerhalb eines LAN nur eine gewisse Zeit gespeichert werden, können diese nach Ablauf der Session verloren gehen.
- Port-Forwarding: Bei einer nicht ausreichenden Konfiguration können die offenen Ports eine potenzielle Sicherheitslücke schaffen.
Ablösung durch IPv6 IP-Adressen und die Bedeutung von NAT
Durch das Internetprotokoll IPv6 wird NAT und damit verbundene Protokolle wie STUN überflüssig, was den Netzwerkbetrieb weiter verbessert. Ohnehin galt NAT lediglich als Übergangslösung für IPv4, da der Nachteil der Adressbegrenzung so umgangen werden konnte.
Durch IPv6 kann eine IP-Adresse mit bis zu 32 Zeichen generiert werden, was die zur Verfügung stehenden Kombinationen erheblich erweitert. Gleichermaßen wird durch den Wegfall von NAT eine gut konfigurierte Firewall noch relevanter.
NAT und IP-Telefonie
Im Rahmen von VoIP-Telefonie kann die Verwendung von NAT problematisch sein. So werden ausgehende Pakete beziehungsweise Anrufe zwar durch den NAT-Router durchgelassen, eingehende Anrufe jedoch blockiert. Diese Problematik kann durch bestimmte Einstellungen, beispielsweise der Portweiterleitung, umgangen werden.
