Doppelt hält Besser (IPv4/IPv6): Dual Stack mit neuem Server

Seit nun fast 5 Jahren testen wir unsere Webseiten auch mit IPv6, heute ist es dann nun auch soweit, dass unsere Webseite https://www.coding-pioneers.com über IPv6 endlich verfügbar ist. Ebenso können alle unsere Hosting-Kunden ebenfalls ihre Webseite im Dual Stack-Betrieb mit IPv4 und IPv6 auf unseren Servern betreiben.

Doch der Reihe nach: Was ist eigentlich dieses IPv6 und was macht das im Web?

Mit der Protokollerneuerung von IPv6 ändern sich grundsätzliche Abläufe der Netzwerkkommunikation. Die Erweiterung des Adressraums von 32 auf 128 Bit wirkt dabei zum einen der Verknappung der IPv4-Adressen entgegen. Zum anderen ermöglicht der neue Standard, alle Endgeräte in einem Netzwerk eindeutig zu adressieren. Anders als IPv4 setzt die Version 6 des Internet-Protokolls den Grundgedanken des Ende-zu-Ende-Prinzips konsequent um.


IPv6, noch Fragen?

IPv6 steht für „Internet Protocol Version 6“ und ist ein Verfahren zur Übertragung von Datenpaketen in paketvermittelnden Rechnernetzen, insbesondere dem Internet. Zusammen mit vielen weiteren Netzwerkprotokollen bildet IPv6 die Grundlage für die Kommunikation im Internet der Zukunft. Zentrale Funktionen von IPv6 sind die Adressierung von Netzwerkelementen über die IPv6-Adressen sowie die Paketweiterleitung zwischen Teilnetzen (Routing). Dazu setzt IPv6 an der Vermittlungsschicht (dem Layer 3 des OSI-Schichtenmodells) an.

Die Vergabe von IP-Adressen erfolgt über sogenannte RIRs (Regional Internet Registries), die von der IANA (Internet Assigned Numbers Authority) jeweils eigene IP-Adressbereiche zugeteilt bekommen. Die zuständige RIR für Europa, den Nahen Osten und Zentralasien ist das RIPE NCC (Réseaux IP Européens Network Coordination Centre).

IPv6 vs. IPv4

Das neue Adressformat der 6. Protokoll-Version unterscheidet sich auf den ersten Blick deutlich von dem des Vorgängers IPv4.

  • IPv4-Adresse: 62.108.36.46
  • IPv6-Adresse: 2a00:0f70:abcd:0102:0000:0000:245:0002

Während bei IPv4 32 Bit-Adressen zum Einsatz kommen, setzt der Nachfolger IPv6 auf 128 Bit-Adressen, die aufgrund der besseren Lesbarkeit hexadezimal dargestellt werden.

So wird das zentrale Anliegen des neuen IP-Standards umgesetzt: Mit 128 Bit lassen sich deutlich mehr einzigartige IP-Adressen generieren als mit 32 Bit.

  • Adressbereich von IPv4: 32 Bit = 232 Adressen ≈ 4,3 Milliarden Adressen
  • Adressbereich von IPv6: 128 Bit = 2128 Adressen ≈ 340 Sextillionen Adressen

Wer sich nun darunter kaum etwas vorstellen kann: Der Adressbereich von IPv4 mit ca. 4,3 Milliarden IPs reicht nicht einmal, um jeden Menschen auf der Welt mit einer einzigartigen Adresse zu versorgen, während sich mit dem 128 Bit-System theoretisch jedem Sandkorn der Erde gleich mehrere IP-Adressen zuweisen lassen würden. Die Einführung von IPv6 ist somit als Investition in die Zukunft zu betrachten. Durch das Internet der Dinge (engl. „Internet of Things“, oder kurz: IoT) wird die Zahl der Geräte, die eindeutig identifizierbar mit dem Internet verbunden werden müssen, in den nächsten Jahren deutlich zunehmen.

Aufbau einer IPv6-Adresse

Die 128 Bit einer IPv6-Adresse sind in acht Blöcke à 16 Bit geteilt. Durch hexadezimale Schreibweise lässt sich ein 16-Bit-Block mit vier Ziffern (0-9) bzw. Buchstaben (A-F) notieren. Als Trennzeichen dient der Doppelpunkt:

  • 2a00:0f70:abcd:0102:0000:0000:245:0002

Um eine IPv6-Adresse lesbarer zu gestalten, gibt es Verkürzungen: Führende Nullen innerhalb eines Hexadezimalblocks dürfen weggelassen werden (dezimal zu vergleichen mit 0100 ist 100). Besteht ein Block nur aus Nullen, muss die letzte Null erhalten bleiben:

  • 2a00:0f70:abcd:0102:0000:0000:245:0002
  • 2a00:f70:abcd:0102:0:0:245:0002

Einmal je IPv6-Adresse dürfen aufeinanderfolgende Null-Blöcke gestrichen werden:

  • 2a00:f70:abcd:0102:0:0:245:0002
  • 2a00:f70:abcd:0102::245:0002


Die aufeinanderfolgenden Doppelpunkte (im Beispiel oben nach dem 5. Block) zeigen diese Streichung an.

Praktisch stehen dem Internet weniger Adressen zur Verfügung, als das 128 Bit-Format vermuten lässt (ähnlich wie bei IPv4). Der Grund ist das Gestaltungsprinzip: Der neue Standard soll eine echte Ende-zu-Ende-Verbindung ermöglichen und die Übersetzung von privaten in öffentliche IP-Adressen auf Basis von NAT (Network Address Translation) überflüssig machen (wie es bei IPv4 noch der Fall ist). Grundsätzlich ließe sich auch mit IPv4 einen Ende-zu-Ende-Verbindung realisieren; da der IPv4-Adressraum jedoch zu klein ist, um jedes Gerät mit einer einzigartigen Adresse zu versorgen, wurde ein System mit getrennten Adressbereichen und der vermittelnden Komponente NAT entwickelt. Mit dem neuen Standard lässt sich jetzt jedes Endgerät, das an ein Netzwerk angeschlossen ist, über eine eigene IP logisch adressieren. IPv6-Adressen beinhalten daher zusätzlich zu dem Abschnitt zur Netzwerkadressierung (auch Netzadresse oder Routing-Präfix genannt) einen eindeutigen Interface-Identifier, der sich aus der MAC-Adresse der Netzwerkkarte des Endgeräts ergibt oder manuell erzeugt wird. Das Routing-Präfix als auch der Interface-Identifier umfassen dabei je 64 Bit einer IPv6-Adresse.

Aufbau: Routing-Präfix

Das Routing-Präfix einer IPv6-Adresse ist in der Regel in ein Netzwerkpräfix und ein Subnetzpräfix gegliedert. Dargestellt wird dies in der sogenannten CIDR-Notation (Classless Inter-Domain Routing). Dazu wird die Präfixlänge, sprich die Länge des Präfixes in Bits, mit einem Slash (/) an die Netzwerkadresse angehängt.

Die Notation 2a00:f70:abcd:0102::/64 beschreibt beispielsweise ein Subnetzwerk mit den Adressen 2a00:f70:abcd:0102:0000:0000:0000:0000:0000 bis 2a00:f70:abcd:0102:FFFF:FFFF:FFFF:FFFF:FFFF.

In der Regel bekommen Internetprovider (ISP) von der RIR /32er-Netze zugeteilt, die diese wiederum in Subnetze gliedern. An Endkunden werden entweder /48-Netze oder /56-Netze vergeben.

Das Paketformat von IPv6

Gegenüber IPv4 zeichnet sich IPv6 durch ein vereinfachtes Paketformat aus. Um die Verarbeitung der Pakete zu erleichtern, wurde für den Header eine Standardlänge von 40 Bytes (320 Bits) festgelegt. Optionale Informationen, die nur in Ausnahmefällen notwendig sind, werden in den Extension-Headers (EH) (dt.: Paketkopf-Erweiterungen) ausgelagert, die zwischen dem Header und der eigentlichen Nutzlast (Payload) eingebettet werden. So lassen sich Optionen einfügen, ohne dass der Header verändert werden muss.

Der IPv6-Paketkopf umfasst so nur noch acht Kopffelder, wohingehend bei IPv4 noch dreizehn Felder zum Einsatz kommen.

Jedes Feld im IPv6-Header enthält bestimmte Informationen, die für die Paketvermittlung über IP-Netze benötigt werden:

FeldErklärung
Version Beinhaltet die Version des IP-Protokolls, nach der das IP-Paket erstellt wurde (4 Bit)
Traffic Class Dient der Prioritätsvergabe (8 Bit)
Flow Label Pakete mit demselben Flow Label werden gleich behandelt (20 Bit)
Payload Length Gibt die Länge des Paketinhaltes (ohne Header) inklusive Erweiterung an (16 Bit)
Next Header Gibt das übergeordnete Transport-Layer-Protokoll an (8 Bit)
Hop Limit Gibt die maximale Anzahl an Zwischenschritten (Routern) an, die ein Paket passieren darf, bis es verfällt (8 Bit), und ersetzt damit das TTL aus IPv4
Source-IP-Address Beinhaltet die Absender-Adresse (128 Bit)
Destination-IP-Address Beinhaltet die Adresse des Empfängers (128 Bit)

Durch die Einführung der Extension-Header lassen sich optionale Informationen einfacher implementieren als bei IPv4. Auf dem Zustellungspfad eines Pakets mit IPv6-Extension-Header werden diese nicht vom Router geprüft noch verarbeitet, und so werden diese zumeist erst am Ziel ausgelesen. Somit ergibt sich eine deutliche Verbesserung der Routing-Performance von IPv6 zu IPv4, da diese optionalen Daten nicht mehr untersucht werden müssen.

Die Extension Header können unter anderem folgendes enthalten:

  • Knoten-zu-Knoten-Optionen
  • Zieloptionen
  • Routing-Optionen
  • Optionen zur Fragmentierung
  • Authentifikation und Verschlüsselung

Funktionalitäten von IPv6

Ein Großteil der Internetnutzer bringt IPv6 vor allem mit der Erweiterung des Adressraums in Verbindung. Der neue Standard bietet mehr: Weitere Funktionen, mit denen sich Einschränkungen von IPv4 überwinden lassen. Dazu gehört vor allem die konsequente Umsetzung des Ende-zu-Ende-Prinzips, die den Umweg über NAT überflüssig macht. Eine Implementierung von Sicherheitsprotokollen wie IPsec ist somit deutlich einfacher.

Darüber hinaus ermöglicht IPv6 die automatische Adresskonfiguration mit dem sog. Neighbor Discovery als auch die Vergabe mehrerer eindeutiger IPv6-Adressen pro Host mit unterschiedlichen Geltungsbereichen, um verschiedene Netzwerk-Topologien abzubilden. Neben der optimierten Adresszuordnung sorgen die Vereinfachung des Paketkopfes und die Auslagerung von optionalen Informationen für die Paketvermittlung in Extension-Headers für ein schnelleres Routing.

Mit QoS (Quality of Service) verfügt IPv6 über einen integrierten Mechanismus zur Sicherung der Dienstgüte, der für eine Priorisierung dringlicher Pakete sorgt und das Datenpaket-Handling effizienter gestaltet. Dazu wurden die Felder „Traffic Class“ und „Flow Label“ direkt auf die QoS-Methodik zugeschnitten.