In diesem Artikel möchte ich mich mit einem Effekt beschäftigen, den man sich manchmal zu selten vor Augen hält. Ich spreche von dem begrenzten Raum an öffentlichen IPv4 Adressen.
Wer über seinen privaten Internetanschluss Dienste wie VPN hosten will, oder einen Kunden hat, der über eine gewöhnliche Consumer Line online geht, sollte sich dieses Effektes bewusst sein.
Um dem Problem mit den mit den begrenzten IP Adressen Herr zu werden, bedienen sich die Internetanbieter einer Technik namens NAT. Wenn ein Internet Service Provider, auch Carrier genannt, mehrere IP Adressen seiner Kunden auf eine Öffentliche IP Adresse “nattet”, spricht man hier von Carrier Grade NAT. Dies bedeutet, dass dem großen Pool an IP (v4 oder v6) Adressen die der Carrier seinen Kunden gibt, ein kleinerer öffentlicher Adresspool gegenübersteht.
Es sind also unter einer öffentlichen IP Adresse immer mehrere Kunden gleichzeitig im Internet. Der ISP merkt sich dann über die geöffneten ports, welche Session welchem Kunden hinter seinem NAT zuzuordnen sind. Viele IP Anschlüsse für Endkunden laufen heute nur noch auf IPv6. Um es den Kunden mit IPv6 Adressen zu ermöglichen IPv4 Dienste zu nutzen, setzen die ISPs sogenannte DS (Dual Stack) Lite Tunnel ein. Diese setzen der IPv6 Adresse des Kundenanschlusses eine öffentliche IPv4 Adresse des ISP gegenüber. Die IPv4 Pakete werden dann in IPv6 verkapselt, an den ISP geschickt welcher sie wiederum auspackt und an den IPv4 Dienst im Internet weiterleitet. Die IPv4 Antwortpakete werden vor dem Weiterleiten und an den Kunden wieder in IPv6 verpackt.
Soweit, so theoretisch. Nehmen wir an ich prüfe nun welches meine aktuelle öffentliche IPv4 Adresse ist und versuche diese auf Port 8080 anzusprechen. Weder erwartet mein ISP momentan eine Antwort auf 8080 (da er dort vermutlich aktuell keine Session hält), noch kann er meine Anfrage einem bestimmten Kunden zuordnen. Die Pakete werden also entweder rejected oder dropped.
Ihr muss also euren Internetanbieter darüber informieren, dass Ihr vorhabt Dienste im Internet anzubieten. Dieser muss dann das Carrier grade NAT für diesen Anschluss abzuschalten bzw. es eher in ein 1:1 NAT verwandeln. Die Kundenhotlines kennen das meist unter “den DS Lite Tunnel anpassen” oder “Portweiterleitungen aktivieren”.
Ob der ISP das macht, hängt davon ab, wie groß sein Pool an öffentliche IPv4 Adressen noch ist. Einen Anspruch darauf, dass ihr eine 1:1 Zuweisung eurer IP mit einer der öffentlichen IPs des ISP erhaltet, gibt es meines Wissens nach nicht. Da aber relativ wenige Kunden dies beantragen, sind die ISPs dort meist recht entspannt.
Anschließend kann der öffentlichen IP auch direkt eine Interne IP zugeordnet werden.
Bitte behaltet außerdem noch im Hinterkopf, dass Ihr die Portweiterleitungen auch noch auf dem Router hinter der consumer line einrichten müsst. Dieser macht schließlich auch ein NAT und versteckt eure internen IPs. Zusätzlich zu den Portweiterleitungen (oder “Port-Freigaben” wie sie manche nennen) haben machen end-user Router noch “Filter” oder “Parenting controlls”. Diese können trotz aktiviertem Portforwarding verhindern, dass Traffic weitergeleitet wird. Die Konfiguration dieser Geräte ist manchmal sehr ansträngend, um es nett auszudrücken.
Außerdem ändert sich eure öffentliche IP vermutlich täglich. Just saying.
Cheers, Ori