Es folgt ein kleiner Artikel in dem ich auf Adressierung innerhalb des Internet Protokolls eingehe und damit DS-lite mit verbundenen Problemen erkläre.
IP
Ein wesentlicher Bestandteil der Datenübertragung im Internet bildet IP – das Internet Protokoll. IP ist dabei vor allem für das Routing verantwortlich. Kurz gesagt bedeutet Routing, die Entscheidung zu fällen auf welchem Weg ein Datenpaket von Computer zu Computer schließlich zu seinem Ziel gelangt. Um das zu realisieren wird unter anderem den Netzwerkteilnehmern jeweils eine eindeutige Adresse zugewiesen. Um diese Adressen soll es in diesem Artikel gehen.
IPv4
In den Anfängen des Internets wurde von IP die Version IPv4 entwickelt. Mit dieser Version erreichte das Internet große Verbreitung und sie wird auch heute noch zu einem großen Teil genutzt. Eine IPv4 Adresse besteht aus 4 8-bit Blöcken, die mit Punkten von einander getrennt werden. Ein Beispiel wäre 87.142.36.2. Jeder Block kann, aufgrund der 8-bit Größe, einen Wert zwischen 0 und 255 annehmen. Die Gesamtgröße des Adressraums ergibt 32-bit. Daraus folgt, dass 2^32=4.294.967.296 verschiedene Adressen in IPv4 existieren. Das mag viel erscheinen, doch wenn man dies der Anzahl an Menschen gegenüber stellt (über 7.000.000.000), dann wird klar, dass der Adressraum von IPv4 in den heutigen Dimensionen des Internets an seine Grenzen stößt. Das gilt besonders, falls auch jede Lampe mal ans Internet angeschlossen werden sollte (siehe auch IoT). Zudem sind bei weitem nicht alle dieser 2^32 Adressen als globale individuelle Adressen verwendbar, da in dem IPv4 Standard auch einige Adressen mit Spezialanwendung vorgesehen sind.
Im folgenden Graph ist die Anzahl der verfügbaren IPv4 Adressen über die Zeit aufgetragen.
Von Mro – Eigenes Werk, CC BY-SA 4.0, https://commons.wikimedia.org/w/index.php?curid=10593349
IPv6
Aufgrund der Begrenzung von IPv4 wurde eine neue Version von IP entwickelt: IPv6. In dieser Version besteht eine Adresse aus 8 16-bit Blöcken, die durch Doppelpunkte getrennt werden, z.B. also: 2001:0db8:85a3:08d3:1319:8a2e:0370:7344. Die Adresse ist damit 128-bit lang. Damit sind 2^128 verschiedene Adressen möglich, das sind 2^96 mal mehr Adressen im Vergleich zu IPv4. Eine unvorstellbar große Menge. Trotz dessen, das IPv6 bereits 1998 eingeführt wurde, ist die Verbreitung von IPv6 noch nicht besonders groß, sie liegt bei etwa 23% (vgl. hier, Stand 2.1.18) Und genau darin liegt auch das Problem bei dem nun in Folge beschriebenen DS-Lite.
DS-Lite
Dein Internet Anbieter ist im Endeffekt die Stelle, die bestimmt mit welcher IP Version du im Internet unterwegs bist. Dabei hat dein ISP verschiedene Möglichkeiten, dir IP Adressen zu zuweisen:
- nur eine IPv4 Adresse: Als Nutzer wirst du hierbei keine Einschränkungen erfahren, da es wahrscheinlich noch(!) keine Dienste gibt, die nur über IPv6 erreichbar sind. Das Problem: IPv4 Adressen gehen zur Neige und sind möglicherweise nicht mehr günstig für deinen ISP zu reservieren.
- eine IPv6 und eine IPv4 Adresse (dual stack): Dir steht hier als Nutzer die volle Funktionalität beider Internetprotokolle zur Verfügung. Es gilt jedoch das selbe Problem für die IPv4 Adressen.
- eine IPv6 Adresse + eine getunnelte IPv4 Verbindung (dual stack-lite): Einige ISP in Deutschland gehen mittlerweile zu dieser Methode über. Dein ISP umgeht damit das Problem, dass sie für jeden Kunden eine IPv4 Adresse benötigen. Stattdessen werden Anfragen die du an einen Server stellst, der nur IPv4 verarbeiten kann, über deinen ISP getunnelt. Das Problem hierbei: du bist für das IPv4 Protokoll nicht mehr öffentlich verfügbar.
Das schöne an der Internet-Infrastruktur ist, dass auf der niedrigsten Ebene keine Hierarchie wie z.B. eine Client-Server Hierarchie etabliert wird. Es ist theoretisch damit jedem möglich mit einer IP-Adresse einen Computer im Internet für alle öffentlich verfügbar zu machen. Diese Möglichkeit wird jedoch in DS-lite begrenzt. Es ist dir zwar noch möglich IPv4 Adressen zu erreichen, da sie für dich getunnelt werden, aber du besitzt keine IPv4 Adresse mehr, mit der du für Anfragen aus dem Internet erreichbar bist. Falls du jedoch einen kleinen Server von deinem Heim-Internetanschluss betreiben willst, ist es eigentlich genau das was du brauchst. Denn von vielen Internetanschlüssen aus, insbesondere aus dem mobilen Internet deines Handys, wirst du noch keine IPv6 Verbindung zu deinem Server herstellen können.
Genau vor diesem Problem stand ich, da ich meinen Raspberry Pi aus dem Internet erreichbar machen wollte. Wie ich erreicht habe, dass mein Raspberry Pi aus dem Internet erreichbar ist und das sogar für das IPv4 Protokoll, werde ich bald in einem Artikel beschreiben.