Funktionsweise von NAT

In dieser interaktiven Lerneinheit verstehst du die grundlegende Funktionsweise von Network Address Translation (NAT) und wie private IP-Adressen in öffentliche übersetzt werden. Du lernst die verschiedenen NAT-Varianten kennen und erfährst, wie NAT in der Praxis zur effizienten Nutzung von IP-Adressen und zur Netzwerksicherheit beiträgt. Die erworbenen Kenntnisse wendest du direkt bei der Konfiguration und Fehlersuche in NAT-Systemen an.

Einführung

Du weißt wahrscheinlich, dass dein Heimnetzwerk viele Geräte (Laptop, Smartphone, etc.) hat, aber dein Internetanschluss oft nur über eine einzige öffentliche IP-Adresse verfügt. Wie ist es möglich, dass alle diese Geräte gleichzeitig das Internet nutzen können und die Datenpakete aus dem Netz immer korrekt beim richtigen Gerät landen?

Die Antwort ist Network Address Translation (NAT), eine Technik, die dein Router anwendet. Aber wie genau funktioniert dieser Übersetzungsprozess? Wie unterscheidet der Router die Datenströme und leitet sie korrekt weiter? Genau diese Funktionsweise der Adressübersetzung schauen wir uns jetzt im Detail an.

Lernziele

Nach dieser Lerneinheit kannst du:

  • Den detaillierten Ablauf einer NAT-Übersetzung für ausgehende Verbindungen (Outbound) vom internen Gerät bis zum externen Server und zurück beschreiben.
  • Erklären, warum Port Forwarding notwendig ist, um Dienste im privaten Netzwerk aus dem Internet erreichbar zu machen, und dessen Funktionsweise erläutern.
  • Unterscheiden, wie NAT die Zuordnung von Antwortpaketen für die Protokolle TCP, UDP (mittels Ports) und ICMP (mittels Identifier) handhabt.

Prinzip der Adressübersetzung

NAT übersetzt private IP-Adressen, die nur innerhalb eines lokalen Netzwerks (LAN) gültig sind, in öffentliche IP-Adressen, die im Internet eindeutig sind. Diese Übersetzung findet in der Regel an einem Netzwerkrouter oder einer Firewall statt, die den Zugang zum Internet regeln.

Private IP-Adressbereiche sind:

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16

Eine öffentliche IP-Adresse ist weltweit eindeutig und wird von deinem Internet Service Provider (ISP) vergeben.

NAT-Vorgang: Wie die Übersetzung passiert

Wenn ein Gerät im LAN eine Verbindung ins Internet aufbaut, läuft der Vorgang so ab:

  1. Ein internes Gerät sendet ein IP-Paket (z. B. Quelle: 192.168.1.10:12345).
  2. Der NAT-Router ersetzt Quell-IP/Quell-Port durch seine eigene öffentliche IP und einen neuen Port.
  3. Diese Zuordnung speichert er in einer NAT-Tabelle (interne Adresse/Port ↔ öffentliche Adresse/Port).
  4. Das Paket gelangt mit der öffentlichen Absenderadresse ins Internet.
  5. Antworten treffen beim NAT-Router ein.
  6. Der Router nutzt die NAT-Tabelle, um IP und Port zurückzusetzen und leitet das Paket an das ursprüngliche Gerät weiter.

Diese Abfolge stellt sicher, dass interne Geräte ohne eigene öffentliche Adressen kommunizieren können.

NAT-Vorgang: Visuelle Darstellung

Wenn ein Gerät aus einem lokalen Netzwerk eine Verbindung zum Internet aufbaut, ersetzt der NAT-fähige Router die private Absender-IP-Adresse im IP-Paketkopf durch seine eigene öffentliche IP-Adresse. Diese Veränderung ermöglicht es, dass das Paket korrekt durch das Internet geroutet und die Antwort schließlich zurück zum ursprünglichen Absender im LAN geleitet werden kann.

Typen der NAT-Adressabbildung

Je nach Bedarf wählst du unterschiedliche NAT-Verfahren:

  • Statische NAT (1:1‑Zuordnung) Jedem internen Host weist du eine feste öffentliche IP zu. Das eignet sich für Server, die dauerhaft von außen erreichbar sein müssen.

  • Dynamische NAT Ein interner Host erhält bei jeder Verbindung eine öffentliche IP aus einem Pool. Ist der Pool leer, kann kein Gerät mehr ins Internet.

Port Address Translation (PAT) – NAT Overloading

Bei PAT teilen sich alle internen Geräte eine einzige öffentliche IP. Die Unterscheidung erfolgt über Portnummern. Beispiel:

Interne IPInterner PortÖffentliche IPÖffentlicher Port
192.168.1.10012345203.0.113.7710001
192.168.1.10112345203.0.113.7710002

Der Router verwaltet diese Einträge in seiner NAT-Tabelle und leitet eingehende Pakete korrekt weiter.

NAT-Typen nach Port-Handling

Verschiedene NAT-Implementierungen definieren, welche eingehenden Verbindungen erlaubt sind:

  • Full Cone NAT: Eine interne Adresse/Port wird immer auf dieselbe öffentliche Adresse/Port abgebildet. Alle Antworten sind erlaubt.
  • Restricted Cone NAT: Antworten sind nur von externen Hosts erlaubt, an die zuvor Daten gesendet wurden.
  • Port Restricted Cone NAT: Zusätzlich zum Host muss auch der Port mit der ursprünglichen Verbindung übereinstimmen.
  • Symmetric NAT: Für jede Zieladresse und jeden Zielport erstellt der Router eine eigene Portzuordnung. Das erschwert Peer-to-Peer-Verbindungen.

Herausforderungen und Lösungsansätze

NAT erschwert direkte Verbindungen zwischen Geräten hinter verschiedenen Routern. Das trifft VoIP und Peer‑to‑Peer‑Dienste besonders:

  • STUN (Session Traversal Utilities for NAT): Ermittelt die von außen sichtbare IP/Port.
  • TURN (Traversal Using Relays around NAT): Leitet Kommunikation über einen Relay-Server, wenn direkte Verbindungen scheitern.
  • UPnP und NAT‑PMP: Protokolle, mit denen Clients dynamisch Portweiterleitungen anfordern.

Anwendungsbeispiel: Spieleserver im Heimnetz

Du möchtest einen Spieleserver (TCP-Port 27015) unter 192.168.1.50 betreiben. So richtest du Portweiterleitung ein:

  • Öffentliche IP: 203.0.113.5
  • Router-Portweiterleitung: 203.0.113.5:27015 → 192.168.1.50:27015

Damit leitet der NAT-Router alle Anfragen an Port 27015 auf dein internes Spielgerät weiter.

⏳ Lädt Dataview-Inhalt...

Ablauf einer NAT-Verbindung

NAT (Network Address Translation) ermöglicht die Kommunikation zwischen Geräten in einem privaten Netzwerk und dem Internet. Die Funktionsweise kann in zwei Hauptprozesse unterteilt werden: Outbound und Inbound.

Der Ablauf einer Outbound-Verbindung (Von Innen nach Außen)

Dies ist der häufigste Anwendungsfall für NAT, zum Beispiel wenn du mit deinem Computer eine Webseite aufrufst.

  1. Initiierung der Verbindung: Dein Computer (z.B. mit der privaten IP-Adresse 192.168.1.10) möchte Daten an einen Server im Internet senden (z.B. den Webserver mit der öffentlichen IP 93.184.216.34). Dein Computer sendet ein Datenpaket mit seiner privaten IP als Quelle und der öffentlichen IP des Servers als Ziel. Er verwendet dabei auch einen zufälligen Quell-Port (z.B. 12345).

2. Adressübersetzung durch den NAT-Router

Das Paket erreicht deinen Router. Der Router ersetzt die private Quell-IP (192.168.1.10) durch seine eigene öffentliche IP-Adresse (z.B. 203.0.113.5).

Um später die Antwort wieder zuordnen zu können, ändert er oft auch den Quell-Port (z.B. auf 54321) und merkt sich diese Zuordnung (Original-IP/Port zu neuer IP/Port) in seiner NAT-Tabelle.

3. Routing ins Internet

Der Router leitet das modifizierte Paket mit seiner öffentlichen IP als Absender ins Internet weiter. Für den Zielserver sieht es so aus, als käme die Anfrage direkt vom Router.

4. Empfang der Antwort

Der Webserver sendet seine Antwort zurück an die öffentliche IP-Adresse und den Port deines Routers (203.0.113.5:54321).

5. Rückübersetzung und Zustellung

Dein Router empfängt die Antwort. Er schaut in seine NAT-Tabelle, sieht, dass der Ziel-Port 54321 zur ursprünglichen Verbindung von 192.168.1.10:12345 gehört. Er ersetzt die öffentliche Ziel-IP/Port wieder durch die private IP/Port deines Computers und leitet das Paket an deinen Computer im lokalen Netzwerk weiter.

Du siehst die Webseite.

Übersicht: Outbound-Verbindung

SchrittAkteurAktionWichtige Paket-Informationen (Beispiel)
1Internes GerätSendet Paket an Ziel im Internet.Quelle: 192.168.1.10:12345 (Privat)
Ziel: 93.184.216.34:80 (Öffentlich)
2NAT-RouterEmpfängt Paket, ersetzt private Quell-IP/Port durch öffentliche IP/neuen Port. Speichert Zuordnung.Änderung: Quelle wird zu 203.0.113.5:54321 (Öffentlich)
Ziel bleibt 93.184.216.34:80
3NAT-RouterLeitet modifiziertes Paket ins Internet weiter.Paket mit öffentlicher Quelle wird gesendet.
4Externer ServerVerarbeitet Anfrage, sendet Antwort an öffentliche IP/Port des Routers.Quelle: 93.184.216.34:80
Ziel: 203.0.113.5:54321
5NAT-RouterEmpfängt Antwort, prüft NAT-Tabelle, ersetzt öffentliche Ziel-IP/Port durch private IP/Port und leitet Paket weiter.Erkennt: Port 54321 gehört zu 192.168.1.10:12345.
Änderung: Ziel wird zu 192.168.1.10:12345

Der Ablauf einer Inbound-Verbindung (Von Außen nach Innen)

Standardmäßig blockiert ein NAT-Router alle Verbindungsversuche, die aus dem Internet kommen und nicht als Antwort auf eine vorherige Anfrage von innen gesendet wurden.

Das ist ein wichtiger Sicherheitsaspekt! Was aber, wenn du gezielt einen Dienst in deinem Netzwerk (z.B. einen eigenen Webserver oder einen Gameserver) aus dem Internet erreichbar machen möchtest? Hier hilft uns die Portweiterleitung (Port Forwarding)

1. Konfiguration der Portweiterleitung

Du konfigurierst auf deinem Router eine Regel.

Zum Beispiel:

Alle Anfragen, die an meiner öffentlichen IP auf Port 8080 ankommen, sollen an die interne IP 192.168.1.20 auf Port 80 weitergeleitet werden.

2. Initiierung der Verbindung von außen

Jemand aus dem Internet sendet ein Datenpaket an die öffentliche IP-Adresse deines Routers und den konfigurierten externen Port (z.B. 203.0.113.5:8080).

3. Prüfung der Weiterleitungsregeln:

Der Router empfängt das Paket. Er prüft seine Portweiterleitungsregeln und findet den Eintrag für Port 8080.

4. Adressübersetzung und Weiterleitung

Der Router ändert die Ziel-IP von seiner öffentlichen IP auf die konfigurierte private IP (192.168.1.20) und passt ggf. den Ziel-Port an (hier von 8080 auf 80). Anschließend leitet er das Paket an den entsprechenden Server in deinem lokalen Netzwerk weiter.

Ohne eine solche explizite Portweiterleitungsregel würde der Router das eingehende Paket einfach verwerfen.

Übersicht: Inbound-Verbindung

(Voraussetzung: Port Forwarding Regel ist auf dem NAT-Router konfiguriert, z.B. Extern Port 8080 Intern 192.168.1.20:80)

SchrittAkteurAktionWichtige Paket-Informationen (Beispiel)
1Externes GerätInitiierung: Sendet Paket an öffentliche IP und konfigurierten externen Port des NAT-Routers.Quelle: [Externe IP]:[Zufallsport]
Ziel: 203.0.113.5:8080 (Öffentliche IP, konfigurierter Port)
2NAT-RouterPrüfung: Empfängt Paket, prüft Port Forwarding Regeln für Ziel-Port 8080.Findet Regel: Port 8080 192.168.1.20:80.
3NAT-RouterÜbersetzung & Weiterleitung: Ersetzt öffentliche Ziel-IP/Port durch private IP/Port und leitet Paket weiter.Änderung: Ziel wird zu 192.168.1.20:80 (Privat)
Quelle bleibt [Externe IP]:[Zufallsport]

Beispiel: Ablauf einer NAT-Verbindung

Der dargestellte Prozess unterstreicht die grundlegende Funktion von NAT für den Outbound- und Inbound-Verkehr und zeigt die Notwendigkeit von Port Forwarding für eingehende Internetverbindungen.

Wie NAT mit verschiedenen Protokollen umgeht

NAT muss die Adressübersetzung für unterschiedliche Kommunikationsprotokolle durchführen. Je nach Protokoll funktioniert das leicht unterschiedlich, da nicht alle Protokolle gleich aufgebaut sind.

Wichtige Protokolle sind: TCP, UDP und ICMP

TCP (Transmission Control Protocol)

TCP baut eine zuverlässige Verbindung auf, bevor Daten gesendet werden. NAT behandelt diese Verbindungen, indem es die private Quell-IP und meist auch den Quell-Port durch die öffentliche IP und einen neuen Port des Routers ersetzt.

  • Der Router merkt sich genau, welche interne IP und welcher interne Port zu welcher externen IP und welchem externen Port gehören, damit die Datenpakete der Verbindung korrekt hin- und hergeleitet werden können.

Beispiel: TCP

Beim Aufruf einer Webseite wird meist das TCP-Protokoll verwendet – etwa für den Zugriff auf einen Webserver über Port 80 (HTTP).

Ausgangssituation

  • Dein PC hat die IP-Adresse: 192.168.1.10
  • Ziel: Verbindung zu einem Webserver auf Port 80
  • Dein PC wählt einen zufälligen Quell-Port, z. B.: 12345
  • Ursprüngliche Verbindung: 192.168.1.10:12345Webserver-IP:80

NAT-Vorgang beim Ausgehenden Paket

  • Der Router empfängt das TCP-Paket
  • NAT ersetzt:
    • die Quell-IP durch seine öffentliche Adresse 203.0.113.5
    • den Quell-Port durch z. B. 54321
  • Weitergeleitetes Paket: 203.0.113.5:54321Webserver-IP:80
  • Der Router speichert die Zuordnung in der NAT-Tabelle:
203.0.113.5:54321 → 192.168.1.10:12345

NAT-Vorgang beim Eingehenden Paket

  • Die Antwort des Webservers geht an: 203.0.113.5:54321
  • Der Router prüft seine NAT-Tabelle und erkennt:
  • Dieses Paket gehört zu 192.168.1.10:12345
  • Das Paket wird korrekt an den PC weitergeleitet

UDP (User Datagram Protocol)

UDP ist verbindungslos – Pakete werden einfach losgeschickt, ohne eine feste Verbindung aufzubauen (wie Postkarten). NAT behandelt jedes UDP-Paket im Prinzip einzeln.

  • Auch hier übersetzt der Router die Quell-IP und meist den Quell-Port. Er muss sich diese Zuordnung ebenfalls merken, damit eventuelle Antwortpakete (obwohl es keine feste Verbindung gibt) wieder dem richtigen Gerät im internen Netzwerk zugestellt werden können.

Beispiel: UDP

Ein häufiges Beispiel für NAT bei UDP ist eine DNS-Anfrage. Dabei wird ein Domainname in eine IP-Adresse aufgelöst. Dies geschieht typischerweise über UDP-Port 53.

Ausgangssituation

  • Dein PC hat die IP-Adresse: 192.168.1.20
  • Er möchte eine DNS-Anfrage an den Server 8.8.8.8 (Google DNS) senden
  • Verwendeter Quell-Port deines PCs: 23456
  • Ziel-Port des DNS-Servers: 53 (standardmäßig)

NAT-Vorgang beim Ausgehenden Paket

  • Der Router empfängt das UDP-Paket von 192.168.1.20:23456 mit Ziel 8.8.8.8:53
  • NAT ersetzt:
    • die Quell-IP durch 203.0.113.5
    • den Quell-Port durch z. B. 65432
  • Weitergeleitetes Paket: 203.0.113.5:654328.8.8.8:53
  • Der Router speichert diese Zuordnung in seiner NAT-Tabelle:

ICMP (Internet Control Message Protocol):

ICMP wird für Kontroll- und Fehlermeldungen genutzt, zum Beispiel vom bekannten ping-Befehl, um die Erreichbarkeit eines anderen Geräts zu testen. ICMP verwendet keine Ports wie TCP oder UDP.

  • Damit der Router eine ICMP-Antwort (z.B. die Antwort auf einen Ping) dem richtigen internen Gerät zuordnen kann, muss er sich andere Informationen aus der ursprünglichen Anfrage merken. Beim Ping ist das typischerweise eine eindeutige Nummer, der Identifier.

Beispiel: ICMP

Beim Befehl ping wird das ICMP-Protokoll (Internet Control Message Protocol) verwendet. Dabei sendet dein PC eine sogenannte Echo-Anfrage und erwartet eine Echo-Antwort vom Ziel.

Ausgangssituation

  • Dein PC hat die IP-Adresse: 192.168.1.10
  • Du führst aus: ping 8.8.8.8
  • Die Echo-Anfrage enthält einen eindeutigen Identifier, z. B.: 1001

NAT-Vorgang beim Ausgehenden Paket

  • Der Router empfängt das ICMP-Paket (Echo-Anfrage)
  • NAT ersetzt:
    • die Quell-IP durch die öffentliche Adresse: 203.0.113.5
  • Weitergeleitetes Paket: 203.0.113.58.8.8.8
  • Der Identifier 1001 bleibt im Paket enthalten

NAT-Vorgang beim Eingehenden Paket

  • Die Echo-Antwort kommt von 8.8.8.8 zurück an: 203.0.113.5
  • Enthalten ist wieder der Identifier 1001
  • Der Router erkennt anhand des gespeicherten Zusammenhangs (z. B. durch ICMP-Identifier oder intern geführte Tabelle), dass diese Antwort zu:
192.168.1.10

gehört

  • Das Paket wird korrekt an deinen PC weitergeleitet
⏳ Lädt Dataview-Inhalt...

Zusammenfassung und Ausblick

Zusammenfassung

In dieser Lerneinheit hast du die essenzielle Rolle von Network Address Translation (NAT) im heutigen Internet verstanden. Du weißt jetzt, dass NAT die primäre Lösung für die Knappheit öffentlicher IPv4-Adressen ist, indem es deinem Router ermöglicht, viele Geräte mit privaten IP-Adressen (wie 192.168.x.x) über eine einzige öffentliche IP-Adresse mit dem Internet zu verbinden.

Der Kernmechanismus ist die Adressübersetzung: Bei Outbound-Verbindungen (von deinem Netzwerk ins Internet) ersetzt der Router die private Quell-IP und meist auch den Quell-Port durch seine öffentliche IP und einen neuen Port. Diese Zuordnung speichert er in seiner NAT-Tabelle, um Antworten korrekt zurückleiten zu können. Die häufigste Form ist Port Address Translation (PAT) oder NAT Overloading, bei der die unterschiedlichen Ports entscheidend sind, um gleichzeitige Verbindungen vieler Geräte über dieselbe öffentliche IP zu ermöglichen.

Für Inbound-Verbindungen (aus dem Internet zu einem Gerät in deinem Netzwerk) hast du gelernt, dass NAT standardmäßig als Schutzmechanismus wirkt und diese blockiert. Um Dienste wie einen Web- oder Gameserver intern zu betreiben und extern erreichbar zu machen, ist die explizite Konfiguration von Port Forwarding auf dem Router notwendig.

Zudem verstehst du nun, dass NAT je nach Kommunikationsprotokoll leicht unterschiedlich agiert: Bei TCP und UDP werden IP-Adressen und Ports übersetzt und über die NAT-Tabelle verfolgt, während bei ICMP (z.B. Ping), das keine Ports nutzt, andere Merkmale wie der Identifier zur Zuordnung herangezogen werden.

Ausblick

Aufbauend auf diesen Grundlagen werden wir uns in der nächsten Lerneinheit spezifischere NAT-Varianten ansehen, die z.B. von Internetanbietern eingesetzt werden. Außerdem werfen wir einen Blick auf typische Konfigurationsmöglichkeiten.