Zum Hauptinhalt springen

IPv6 (Internet Protocol Version 6)

Überblick

IPv6 ist der Nachfolger von IPv4 und wurde eingeführt, um die Erschöpfung des 32-Bit-Adressraums von IPv4 zu überwinden. Eine IPv6-Adresse ist 128 Bit lang, was 2¹²⁸ (etwa 3,4 x 10³⁸) mögliche Adressen ergibt.

Die Adresse wird als 8 Gruppen zu je 16 Bit geschrieben (oft Hextets oder Gruppen genannt), jeweils durch 4 Hexadezimalziffern dargestellt und durch Doppelpunkte (:) getrennt.

2001:0db8:0000:0000:0000:ff00:0042:8329
  • 8 Gruppen x 16 Bit = 128 Bit
  • Hexadezimalziffern unterscheiden nicht zwischen Groß- und Kleinschreibung (ff00 entspricht FF00); Aber Kleinschreibung ist die empfohlene kanonische Form

Adressaufbau

Eine typische IPv6-Unicast-Adresse wird in zwei Hälften zu je 64 Bit aufgeteilt:

TeilLängeZweck
Netzwerkpräfix64 BitIdentifiziert das Netzwerk (Routing-Präfix + Subnetz-ID).
Interface-ID64 BitIdentifiziert die einzelne Schnittstelle innerhalb des Netzwerks.

Die Präfixlänge wird in CIDR-Notation angegeben, z.B. 2001:db8:abcd:1234::/64. Ein /64 ist die Standardgröße für ein einzelnes Subnetz.

Kürzen (Komprimierung)

Zwei Regeln erlauben es, eine IPv6-Adresse kompakter zu schreiben. Sie lassen sich auch kombinieren.

Regel 1: Führende Nullen entfernen

Innerhalb jeder Gruppe dürfen führende Nullen weggelassen werden. Pro Gruppe muss mindestens eine Ziffer erhalten bleiben.

2001:0db8:0000:0000:0000:ff00:0042:8329
2001:db8:0:0:0:ff00:42:8329

Regel 2: Eine Folge von Nullgruppen zusammenfassen (::)

Eine einzelne zusammenhängende Folge aus einer oder mehreren reinen Nullgruppen darf durch einen doppelten Doppelpunkt :: ersetzt werden.

2001:db8:0:0:0:ff00:42:8329
2001:db8::ff00:42:8329

Wichtig: :: darf in einer Adresse nur einmal vorkommen, da die Länge sonst mehrdeutig wäre. Existieren zwei gleich lange Nullfolgen, sollte die am weitesten links liegende komprimiert werden.

fe80:0:0:0:1:0:0:1 => fe80::1:0:0:1 (korrekt)
fe80:0:0:0:1:0:0:1 => fe80::1::1 (ungültig, zwei „::“)

Erweitern

Das Erweitern kehrt die Komprimierung um, um die vollständige 128-Bit-Form wiederherzustellen. Das ist für Vergleiche oder die manuelle Subnetzberechnung nützlich.

  1. :: wiederherstellen – Die vorhandenen Gruppen zählen und so viele 0-Gruppen einfügen, bis insgesamt 8 Gruppen erreicht sind.
  2. Jede Gruppe auffüllen – Führende Nullen ergänzen, bis jede Gruppe 4 Hexadezimalziffern hat.
2001:db8::ff00:42:8329

Schritt 1 (Nullgruppen wiederherstellen, 5 Gruppen vorhanden => 3 einfügen):
2001:db8:0:0:0:ff00:42:8329

Schritt 2 (auf je 4 Ziffern auffüllen):
2001:0db8:0000:0000:0000:ff00:0042:8329

Adresstypen

IPv6 kennt keinen Broadcast. Dessen Aufgabe übernimmt Multicast.

TypBedeutung
UnicastEins-zu-eins. Identifiziert eine einzelne Schnittstelle; ein Paket wird genau an diese zugestellt.
MulticastEins-zu-viele. Zustellung an alle Schnittstellen, die der Multicast-Gruppe beigetreten sind.
AnycastEins-zu-nächstem. Von mehreren Schnittstellen geteilt; Zustellung an die topologisch nächste.

Scopes

Der Scope legt den Bereich des Netzwerks fest, in dem eine Adresse gültig und routbar ist. Die beiden wichtigsten Unicast-Scopes sind:

  • Link-Local – Nur auf dem direkt angeschlossenen Link (einem Segment) gültig. Nicht geroutet. Wird auf jeder IPv6-Schnittstelle automatisch konfiguriert.
  • Global – Weltweit eindeutig und über das Internet routbar, vergleichbar mit einer öffentlichen IPv4-Adresse.

Multicast-Adressen tragen ein explizites Scope-Feld (z.B. interface-local, link-local, site-local, global).

Da Link-Local-Adressen (fe80::/10) über mehrere Schnittstellen hinweg nicht eindeutig sind, muss die ausgehende Schnittstelle über einen mit % angehängten Zone-Index angegeben werden.

ping fe80::1%eth0 # Linux (Schnittstellenname)
ping fe80::1%12 # Windows (Schnittstellenindex)

Wichtige Adressen

Adresse / PräfixNameBeschreibung
::/128UnspecifiedNur Nullen. Wird als Quelladresse verwendet, bevor eine zugewiesen ist (ähnlich 0.0.0.0).
::1/128LoopbackDer lokale Host, entspricht IPv4 127.0.0.1.
fe80::/10Link-LocalAutomatisch konfiguriert, nur auf dem lokalen Link gültig, nie geroutet.
fc00::/7Unique Local (ULA)Private Adressen für den internen Gebrauch, nicht im Internet geroutet (ähnlich RFC 1918).
2000::/3Global UnicastÖffentliche, weltweit routbare Adressen.
ff00::/8MulticastAlle Multicast-Adressen beginnen mit ff.
ff02::1All Nodes (Link)Multicast an jeden Knoten auf dem Link.
ff02::2All Routers (Link)Multicast an jeden Router auf dem Link.
2001:db8::/32DocumentationReserviert für Beispiele und Dokumentation, nie produktiv verwendet.

IPv6 vs. IPv4

EigenschaftIPv4IPv6
Adresslänge32 Bit128 Bit
NotationDezimal, punktgetrenntHexadezimal, doppelpunktgetrennt
BroadcastJaNein (durch Multicast ersetzt)
Loopback127.0.0.1::1
AutokonfigurationDHCP / APIPASLAAC + Link-Local