Doppeltes NAT: doppelte Probleme
Wenn etwas gut ist, dann macht es eine Verdoppelung in der Regel sogar noch besser. Im Falle des Network Address Translation (NAT) verkompliziert die Verdoppelung des NATs jedoch nur die Netzkonfiguration und kann zu unvorhersagbaren Problemen führen.
Druckversion Doppeltes NAT: doppelte Probleme
Das Network Address Translation (NAT) ist definitiv ein guter Mechanismus. Durch NAT teilen sich mehrere Geräte eine einzige IP-Adresse und es lassen sich am Übergang zwischen dem internen Netz und dem Internet die internen IP-Geräte verstecken. Je nach Art des Internetzugangs kann ein Betreiber eines internen „privaten“ Netzwerks in die Situation eines doppelten NATs geraten. In der Regel hat das doppelte NAT keinerlei Auswirkungen auf die klassischen Datenanwendungen, wie beispielsweise das Surfen im Web, die E-Mail oder das Instant Messaging (IM). Aber NAT kann ein großes Hindernis für den Fernzugriff auf Geräte im internen Netzwerk darstellen.
NAT vs Double-NAT
Die einfachste Form der Adressumwandlung wird als statisches NAT bezeichnet. Bei der Adressübersetzung wird eine private IP-Adresse beim Übermitteln vom privaten in den öffentlichen Adressraum in eine öffentliche IP-Adresse umgewandelt. Beim Antwortpaket erfolgt die Wandlung in umgekehrter Reihenfolge.
Die Adressübersetzung erfolgt über feste Tabellen (Von -> zu-Tabellen) die vom Netzadministrator per Konfiguration angelegt werden. Empfängt die NAT-Komponente ein Datenpaket vom inneren Netz werden folgende Funktionen erbracht:
- Empfang eines Datenpakets vom privaten IP-Netz
- Überprüfung der privaten IP-Adresse anhand der Von-Tabelle.
- Selektion der öffentlichen IP-Adresse anhand der Zu-Tabelle
- Austausch der Adressen im IP-Header
- Neuberechnung der TTL-Werte und Prüfsummen im IP-Header
- Generieren des neuen IP-Headers
- Übermittlung des Datenpakets auf das öffentliche IP-Netz
Diese Übersetzung der IP-Pakete wird bei jedem IP-Paket individuell vorgenommen und es wird nicht registriert, ob das IP-Paket zu einem IP-Datenstrom gehört. Aus diesem Grund spricht man auch von einer zustandslosen Adressübersetzung. Bei dieser Form der Adressumwandlung werden keine zusätzlichen Sicherheitsmaßnahmen getroffen. Es wird lediglich der IP-Header mit den privaten Adressen an die Bedingungen der öffentlichen IP-Adressen angepasst.
Diese Art der Adressumwandlung wird auch als 1:1-Adresswandlung bezeichnet. Da jeder privaten IP-Adresse eine öffentliche IP-Adresse gegenübersteht, werden keine Adressen eingespart.
Beim statischen NAT werden die IP-Adressen entsprechend der Tabellen direkt (1:1) umgewandelt. Bei der dynamischen Adressumwandlung spricht man von einer X:Y-Wandlung. Die dynamische Adresswandlung ist in der Lage, die Anzahl der erforderlichen öffentlichen IP-Adressen zu reduzieren. Somit wird eine Vielzahl von internen (privaten) IP-Adressen auf einer geringen Anzahl externer IP-Adressen abgebildet. Die Adresszuordnungen erfolgt nach Bedarf und der gesamte Datenverkehr wird zeitlich überwacht um die externe IP-Adressen gegebenenfalls wieder freizugeben.
Der Port and Address Translation (PAT) Mechanismus bildet alle IP-Adressen eines privaten Netzes auf eine einzige öffentliche IP-Adresse ab. Auf diese Weise benötigt ein komplettes privates Netz nur eine einzige registrierte öffentliche IP-Adresse. Einige Hersteller bezeichnen die PAT-Funktion auch als verborgenes NAT.
Teilen sich in der Praxis zwei interne Rechner auf der Basis der privaten IP-Adressen eine externe IP-Adresse, kommt es unweigerlich zu einem Adresskonflikt. Kommunizieren beide interne Rechner gleichzeitig mit externen Kommunikationspartnern, muss die NAT-Komponente die Entscheidung treffen, an welchen internen Rechner das empfangene Paket weiterzuleiten ist. Da die Routing- bzw. Weiterleitungsentscheidung nur anhand der im IP-Header integrierten IP-Adressen erfolgt, ist dieses Problem nicht zu lösen.
Wie beim dynamischen Adressmapping muss die NAT-Komponente nur beim Verbindungsaufbau eine entsprechende Mapping-Tabelle anlegen und ist somit in der Lage, die einzelnen Verbindungen den richtigen IP-Adressen zuzuordnen. Der NAT-Prozess durchsucht einfach die Mapping-Tabelle nach der Verbindung, zu der das betreffende Paket gehört. Bei einer Übereinstimmung wird die Adresse gewandelt und an den betreffenden IP-Rechner im internen Netz weitergeleitet.
In einem typischen Heimnetzwerk wird dem Nutzer vom ISP eine einzige öffentliche IP-Adresse zugeteilt. Diese Adresse (in der Regel aus dem 192.168.xx Adressbereich) wird an den Zugangs-Router zum ISP-Netz vergeben. Der Router konfiguriert anschließend per DHCP die im internen Netzwerk angeschlossenen PCs und andere Geräte. Das NAT sorgt dabei auf dem Router für die korrekte Verbindungen zwischen dem öffentlichen Internet und dem privaten Netzwerk.
Arbeitet das NAT nicht nur auf dem Router, sondern auch auf einem anderen dem Router vorgeschalteten Gerät, ergibt sich zwangsläufig ein doppeltes NAT. Im Ergebnis werden alle aus- und eingehenden Verbindungen doppelt getauscht. In der Praxis kann dies zu erheblichen Problemen führen.
Um zu überprüfen, ob es sich bei einem NAT-Scenario um eine Doppel-NAT-Lösung handelt, muss man sich am lokalen Netzwerk-Router anmelden und dessen IP-Adresse am WAN-Port überprüfen. Stellt man eine private IP-Adresse aus dem 10er oder 192.168.xx-Bereich fest, bedeutet dies, dass selbst die WAN-Verbindung per NAT an das Internet angebunden ist. In diesem Fall besteht ein doppeltes NAT.
Zur Korrektur des Doppel-NATs gibt es mehrere Optionen. Liegt das Problem im dem vom ISP gelieferten Netzzugangsgerät, kann dieses über die Konfigurationsoberfläche eventuell in den "Brückenmodus“ gesetzt werden. Dadurch wird das NAT auf dem Netzzugangsgerät deaktiviert und arbeitet transparent. Die Netzzugangskomponente erhält nur noch die öffentliche IP-Adresse und führt keine NAT-Funktionen mehr aus.
Wird das Doppel-NAT jedoch von einer Komponente (beispielsweise einem VoIP-Adapter) auf der Innenseite – also im privaten Netzwerk – verursacht, kann die Beseitigung des DoppelNATs zu unvorhersehbaren Problemen führen. Eine Möglichkeit zur Kompensierung des Doppel-NATs besteht darin, zu kompensieren separate Port-Forwarding Regeln auf jedem Gerät einzurichten. Der Datenverkehr in der Empfangsrichtung wird dadurch durch beide NATs individuell durchgeleitet. Müssen eine Menge Ports durch dieses Konstrukt durchgeleitet werden, dann ist die manuelle Weiterleitung der individuell Adressen ein bisschen umständlich. Einfacher ist es, das erste NAT-Gerät so zu konfigurieren, dass die IP-Adresse des Routers als DMZ agiert. Dadurch wird der gesamte Datenverkehr in der Empfangsrichtung durch die erste NAT-Schicht geschleust und im nachfolgenden Router werden die Daten entsprechend gefiltert oder gegebenenfalls weitergeleitet.
