Private und öffentliche IP-Adressen: Was sie unterscheidet und wie NAT funktioniert
Dein Rechner hat die Adresse 192.168.10.77. Gibst du bei einer Suchmaschine „Wie ist meine IP“ ein, erscheint eine völlig andere Zahl, etwa 198.51.100.7. Beide Adressen gehören zu dir, und beide sind richtig. Wie geht das?
Der Grund: Es gibt zwei Arten von IPv4-Adressen, und dein Router vermittelt zwischen ihnen. Das Prinzip erklärt, wie Milliarden von Geräten das Internet nutzen können, obwohl es nur rund 4,3 Milliarden Adressen gibt. Im Beitrag IPv4 verstehen haben wir das als Lösung gegen die Adressknappheit angekündigt. Jetzt schauen wir uns an, wie es funktioniert.
Öffentliche IP-Adressen
Eine öffentliche IP-Adresse ist weltweit eindeutig und im Internet erreichbar. Router im Internet leiten Pakete zu ihr. Es gibt jede öffentliche Adresse nur einmal.
Vergeben werden sie in einer Kette: Die zentrale Verwaltung (IANA) gibt große Blöcke an regionale Registrierungsstellen weiter, in Europa ist das RIPE NCC. Diese teilen sie an Internetanbieter auf, und die Anbieter weisen sie ihren Kunden zu. Bei Heimanschlüssen ändert sich die öffentliche Adresse häufig, etwa nach einem Neustart des Routers oder nach einer Zwangstrennung. Firmen mieten für Server oft feste Adressen.
Private IP-Adressen
Private Adressen sind für interne Netze reserviert. Sie sind im Standard RFC 1918 festgelegt und werden im Internet nicht geroutet. Router der Provider verwerfen Pakete mit solchen Adressen. Dafür kann jeder sie kostenlos nutzen, und derselbe Bereich darf in beliebig vielen Netzen gleichzeitig vorkommen.
Es gibt genau drei Bereiche:
| Bereich | Adressen | Anzahl | Typische Verwendung |
|---|---|---|---|
| 10.0.0.0/8 | 10.0.0.0 bis 10.255.255.255 | 16.777.216 | Große Firmennetze |
| 172.16.0.0/12 | 172.16.0.0 bis 172.31.255.255 | 1.048.576 | Mittlere Netze |
| 192.168.0.0/16 | 192.168.0.0 bis 192.168.255.255 | 65.536 | Heimnetze und kleine Büros |
Die Anzahl ergibt sich aus den Hostbits: Beim /8 sind es 24 Hostbits, also 224 = 16.777.216 Adressen. Beim /12 sind es 20 Hostbits, 220 = 1.048.576. Beim /16 sind es 16 Hostbits, 216 = 65.536. Das Rechnen mit Präfixen kennst du aus dem Beitrag Netzmaske verstehen.
Warum nur 172.16 bis 172.31?
Beim mittleren Bereich stolpern viele. Er heißt 172.16.0.0/12, nicht „172.x.x.x“. Das Präfix /12 bedeutet Maske 255.240.0.0. Im zweiten Oktett stehen die ersten vier Bit fest, die restlichen vier sind frei:
16 = 00010000
31 = 00011111
Die ersten vier Bit (0001) sind festgelegt,
die letzten vier laufen von 0000 bis 1111
→ zweites Oktett von 16 bis 31
Die Adresse 172.32.5.1 liegt damit schon außerhalb und ist eine öffentliche Adresse. Ebenso 172.15.0.1. Wer pauschal „172.x ist privat“ annimmt, liegt falsch.
Weitere Bereiche, die weder privat noch öffentlich sind
- 169.254.0.0/16 (Link-Local): Selbstvergebene Adresse, wenn kein DHCP-Server antwortet.
- 127.0.0.0/8 (Loopback): Das Gerät selbst.
- 100.64.0.0/10: Ein gemeinsamer Adressbereich für Provider, die ihre Kunden hinter einem zentralen NAT zusammenfassen (CGNAT, siehe unten).
Vergleich auf einen Blick
| Private Adresse | Öffentliche Adresse | |
|---|---|---|
| Eindeutigkeit | Nur im eigenen Netz | Weltweit |
| Erreichbar aus dem Internet | Nein | Ja, wenn nicht gefiltert |
| Kosten | Keine | Über den Provider, oft Teil des Anschlusses |
| Vergeben von | Dem Netzbetreiber selbst | Registrierungsstellen und Provider |
| Beispiel | 192.168.10.77 | 203.0.113.50 (Dokumentationsbeispiel) |
NAT: Der Übersetzer zwischen innen und außen
Ein Gerät mit privater Adresse kann nicht direkt mit dem Internet sprechen, denn Antworten an eine private Adresse würden nie zurückfinden. Dafür gibt es NAT, Network Address Translation. Der Router am Rand des Netzes ersetzt die private Absenderadresse durch seine eigene öffentliche. Für die Außenwelt sieht es so aus, als käme der ganze Datenverkehr vom Router.
Weil mehrere interne Geräte dieselbe öffentliche Adresse teilen, braucht der Router etwas, womit er die Antworten wieder richtig zuordnet. Das sind die Portnummern. Die Technik heißt PAT (Port Address Translation) oder auch NAT Overload und ist in Heim- und Firmennetzen der Normalfall. Der Router merkt sich in einer NAT-Tabelle, welche interne Verbindung zu welcher äußeren gehört.
Ablauf Schritt für Schritt
Der Rechner mit 192.168.10.77 ruft den Server 203.0.113.50 auf Port 443 auf. Sein Browser nutzt dabei den Quellport 50432. Der Router hat die öffentliche Adresse 198.51.100.7.
- Der PC sendet sein Paket an den Router (Standardgateway). Quelle: 192.168.10.77:50432, Ziel: 203.0.113.50:443.
- Der Router ersetzt die Quelle durch seine öffentliche Adresse und einen eigenen Port, etwa 40001. Außerdem trägt er die Zuordnung in die NAT-Tabelle ein. Das Paket geht mit der Quelle 198.51.100.7:40001 ins Internet.
- Der Server antwortet an die Adresse, die er kennt: 198.51.100.7:40001.
- Der Router schlägt den Eintrag in der NAT-Tabelle nach, setzt Ziel 192.168.10.77:50432 ein und gibt das Paket ins interne Netz weiter.
Eine zweite Verbindung, zum Beispiel von einem anderen PC, bekommt einen neuen Eintrag mit einem anderen äußeren Port:
| Intern (privat) | Extern (öffentlich) | Ziel |
|---|---|---|
| 192.168.10.77:50432 | 198.51.100.7:40001 | 203.0.113.50:443 |
| 192.168.10.78:50432 | 198.51.100.7:40002 | 203.0.113.50:443 |
Beide PCs nutzen intern denselben Quellport, doch außen sind die Verbindungen über die verschiedenen Ports 40001 und 40002 eindeutig getrennt. Ein Eintrag entsteht, wenn ein internes Gerät eine Verbindung beginnt, und verfällt nach einer gewissen Zeit ohne Verkehr.
Die Arten von NAT
| Art | Was passiert? | Typischer Einsatz |
|---|---|---|
| Source NAT / PAT | Viele interne Geräte teilen sich eine öffentliche Adresse, Unterscheidung über Ports | Internetzugang aus dem Heim- und Firmennetz |
| Destination NAT (Portweiterleitung) | Anfragen von außen auf einen bestimmten Port werden an ein internes Gerät weitergeleitet | Dienst aus dem Internet erreichbar machen |
| Statisches NAT (1:1) | Eine interne Adresse wird immer genau einer öffentlichen zugeordnet | Server mit eigener öffentlicher Adresse |
Portweiterleitung: Ein Dienst nach außen
Normalerweise wird eine Verbindung von außen zu einem internen Gerät vom Router abgewiesen, weil es keinen NAT-Eintrag dafür gibt. Willst du einen Dienst nach außen anbieten, richtest du eine Portweiterleitung ein: „Alles, was an der öffentlichen Adresse auf Port 8443 ankommt, geht an 192.168.10.10 Port 443.“
Das ist eine bewusste Öffnung des Netzes. Jeder im Internet kann diesen Port ansprechen. Der Dienst dahinter muss deshalb aktuell, passwortgeschützt und überwacht sein. Für den Zugriff auf interne Daten von außen ist ein VPN in der Regel die bessere Wahl als eine Portfreigabe.
Ist NAT eine Sicherheitsfunktion?
Teilweise, aber nicht absichtlich. NAT hat Nebenwirkungen, die wie Schutz wirken: Unaufgeforderte Verbindungen von außen finden im Router keinen Eintrag und laufen ins Leere. Das ersetzt aber keine Firewall. NAT wurde erfunden, um Adressen zu sparen, nicht um zu filtern. Ob ein Paket durchkommt, entscheiden Firewall-Regeln, wie wir sie im Beitrag Switch, Router, Access Point und Firewall besprochen haben.
Probleme mit NAT
- Doppeltes NAT. Hängt hinter dem Router ein zweiter Router, der ebenfalls NAT macht, wird zweimal übersetzt. Das erschwert Portweiterleitungen, Online-Spiele und VPN-Verbindungen.
- CGNAT (Carrier-Grade NAT). Weil IPv4-Adressen knapp sind, stecken manche Provider mehrere Kunden hinter einer gemeinsamen öffentlichen Adresse. Dein Router bekommt dann selbst eine Adresse aus dem Bereich 100.64.0.0/10 oder eine andere private. Eine Portweiterleitung kann in dem Fall nicht funktionieren, weil der Provider sie nicht durchlässt.
- Protokolle mit Adressen in den Nutzdaten. Einige Dienste wie FTP oder SIP schreiben IP-Adressen in die Daten selbst. NAT muss dann zusätzlich eingreifen, damit sie funktionieren.
- Direkte Erreichbarkeit fehlt. Geräte hinter NAT sind von außen nicht ohne Weiteres ansprechbar. Ursprünglich war das Internet für Ende-zu-Ende-Verbindungen gedacht.
IPv6 löst das Problem an der Wurzel: Mit seiner riesigen Zahl an Adressen bekommt jedes Gerät eine eigene global gültige Adresse. NAT ist dort nicht mehr nötig. Eine Firewall bleibt aber trotzdem wichtig.
Praxisbeispiel: Standorte und Adressbereiche
Greifen wir die Firma mit zwei Standorten aus dem Beitrag LAN, WLAN und WAN auf. Der Hauptsitz nutzt 192.168.10.0/24. Die Filiale wurde ohne Absprache ebenfalls mit 192.168.10.0/24 eingerichtet, denn das war die Voreinstellung des Routers. Jetzt soll ein VPN-Tunnel beide Standorte verbinden.
Das Problem: Ein Rechner in der Filiale mit 192.168.10.5 möchte den Server am Hauptsitz mit 192.168.10.10 erreichen. Er hält diese Adresse für ein Gerät im eigenen Netz und schickt die Anfrage gar nicht erst zum Router. Beide Standorte haben denselben Adressbereich, das Routing zwischen ihnen kann nicht funktionieren.
Die Lösung ist ein sauberer Plan, in dem jedes Netz seinen eigenen Bereich bekommt, zum Beispiel:
| Netz | Bereich |
|---|---|
| Hauptsitz intern | 192.168.10.0/24 |
| Gäste-WLAN Hauptsitz | 192.168.20.0/24 |
| Filiale intern | 192.168.30.0/24 |
Solche Überschneidungen sind einer der häufigsten Gründe, warum VPN-Verbindungen zwischen Standorten nicht klappen. Plane Adressbereiche deshalb schon beim ersten Netz so, dass sie sich nie überschneiden, auch wenn zu Beginn nur ein Standort existiert.
Private und öffentliche Adresse selbst prüfen
Die private Adresse deines Rechners siehst du mit ipconfig oder ip addr. Deine öffentliche Adresse verrät dir ein externer Dienst, der zurückmeldet, von wo die Anfrage kam. Unter Windows (mit dem Programm curl.exe, das ab Windows 10 mitgeliefert wird) und unter Linux funktioniert das so:
curl.exe ifconfig.me # Windows
curl ifconfig.me # Linux
Beachte, dass du bei so einer Abfrage Daten an einen fremden Anbieter sendest. Für einen Test ist das in Ordnung. Alternativ zeigt dir die Oberfläche deines Routers die Adresse auf der WAN-Seite.
Der Vergleich ist aufschlussreich: Stimmt die WAN-Adresse im Router mit der Adresse überein, die der externe Dienst meldet, ist alles in Ordnung. Unterscheiden sie sich, oder beginnt die WAN-Adresse mit einem privaten Bereich oder 100.64 bis 100.127, steckt dein Anschluss hinter CGNAT oder einem zweiten NAT-Router.
Mit Python prüfst du, ob eine Adresse privat ist:
import ipaddress
for a in ["192.168.10.77", "172.16.5.1", "172.32.5.1", "8.8.8.8"]:
print(a, ipaddress.ip_address(a).is_private)
Die Ausgabe lautet True, True, False und False. Beachte die dritte Zeile: 172.32.5.1 liegt knapp außerhalb des privaten Bereichs.
Typische Fehler und Missverständnisse
- „172.x.x.x ist immer privat.“ Nur 172.16 bis 172.31.
- „Meine IP-Adresse“ ohne Zusatz. Es gibt die private Adresse im LAN und die öffentliche am Router. Frag immer nach, welche gemeint ist.
- „NAT ist eine Firewall.“ NAT übersetzt Adressen. Gefiltert wird durch Firewall-Regeln.
- Portweiterleitung als harmlos betrachten. Sie öffnet das Netz für das ganze Internet. Wo möglich, nimm ein VPN.
- Gleiche Netze an mehreren Standorten. Das ist die klassische Stolperstelle bei VPN-Verbindungen.
- Private Adressen im Internet erwarten. Sie lassen sich von außen nicht erreichen, auch nicht per Ping.
- Die WAN-Adresse im Router für öffentlich halten. Prüfe, ob sie wirklich außerhalb der privaten Bereiche und von 100.64.0.0/10 liegt.
Zum Üben
- Ordne zu (privat, öffentlich, Sonderbereich): 10.20.30.40, 172.16.5.1, 172.32.5.1, 192.168.0.254, 8.8.4.4, 169.254.1.1, 100.64.1.1.
- Wie viele Adressen umfasst der Bereich 192.168.0.0/16?
- Erkläre mit der Netzmaske, warum der private Bereich 172.16.0.0/12 bis 172.31.255.255 reicht.
- Was macht ein Router bei NAT mit der Quelladresse eines ausgehenden Pakets?
- Was ist der Unterschied zwischen NAT und PAT?
- Zwei Standorte nutzen beide 192.168.1.0/24 und sollen per VPN verbunden werden. Welches Problem tritt auf, und wie behebst du es?
- Dein Router zeigt als WAN-Adresse 100.64.5.9, ein externer Dienst meldet 203.0.113.9. Was bedeutet das?
- Laut NAT-Tabelle im Text kommt eine Antwort an 198.51.100.7:40002 an. An welches interne Gerät geht sie?
Lösungen: (1) Privat: 10.20.30.40, 172.16.5.1, 192.168.0.254. Öffentlich: 172.32.5.1, 8.8.4.4. Sonderbereich: 169.254.1.1 (Link-Local) und 100.64.1.1 (CGNAT-Bereich). (2) 216 = 65.536 Adressen. (3) /12 bedeutet Maske 255.240.0.0, im zweiten Oktett sind die ersten vier Bit festgelegt (0001), die letzten vier frei. Das ergibt 00010000 bis 00011111, also 16 bis 31. (4) Er ersetzt sie durch seine öffentliche Adresse und einen eigenen Port und trägt die Zuordnung in die NAT-Tabelle ein. (5) NAT bezeichnet die Adressübersetzung allgemein. PAT übersetzt zusätzlich die Ports, sodass viele interne Geräte eine einzige öffentliche Adresse nutzen können. (6) Die Adressbereiche überschneiden sich, ein Gerät hält Ziele am anderen Standort für lokal. Lösung: einen Standort auf einen anderen Bereich umstellen, zum Beispiel 192.168.2.0/24. (7) Der Anschluss liegt hinter CGNAT oder einem zweiten NAT-Router. Portweiterleitungen funktionieren so nicht. (8) An 192.168.10.78 auf Port 50432.
Das solltest du dir merken
- Öffentliche Adressen sind weltweit eindeutig und im Internet erreichbar. Private Adressen gelten nur im eigenen Netz.
- Die privaten Bereiche sind 10.0.0.0/8, 172.16.0.0/12 (172.16 bis 172.31) und 192.168.0.0/16.
- NAT übersetzt private in öffentliche Adressen. PAT nutzt dafür zusätzlich Ports und erlaubt vielen Geräten eine gemeinsame Adresse.
- Eine Portweiterleitung macht einen internen Dienst von außen erreichbar. Sie ist ein Sicherheitsrisiko, ein VPN ist meist besser.
- NAT ist keine Firewall.
- Bei Standortverbindungen dürfen sich die Adressbereiche nie überschneiden.
- IPv6 braucht kein NAT, weil es genug Adressen gibt.
Jetzt hast du alles beisammen, um ein Netz in kleinere Teile zu zerlegen. Warum man das tut und wie es funktioniert, zeigt der nächste Beitrag: Subnetting verstehen.


