Das InfoTip Kompendium

Ein kostenloser Service der InfoTip Service GmbH

Zum Anfang der
Seite scrollen

IPv6

Internet Protocol Vers. 6

Inhaltsverzeichnis

1. Allgemeines

Das Internet Protokoll Version 6 (IPv6) ist die neueste Version des Internet Protokolls (IP), dem Protokoll, das die Kommunikation zwischen Computern in lokalen Netzwerken und im Internet ermöglicht. IPv6 ist das Nachfolgeprotokoll von IPv4. 1998 wurden die ersten Spezifikationen für IPv4 von der Internet Engineering Task Force (IETF) veröffentlicht. Die Einführung in die Praxis erfolgte schrittweise und ist (im November 2016) noch nicht abgeschlossen. Die Netze einiger Kommunikationsunternehmen sind bereits komplett von IPv4 nach IPv6 migriert, manche Regionen (besonders in Schwellenländern) sind hingegen ausschließlich über IBv4 erreichbar. Die Umstellung einer IT-Infrastruktur von IPv4 nach IPv6 ist für Internet-Provider sehr kostenintensiv, da ältere IPv4-Router IPv6-Datenpakete überhaupt nicht und modernere nur eingeschränkt weiterleiten können. Über viele Jahre hinweg müssen aber beide Protokolle ("Dual Stack") bedient werden können.

2. Gründe für die Einführung von IPv6

Wie im Artikel IPv4 beschrieben, umfasst der IPv4-Adressraum ca. 4,3 Milliarden IP-Adressen. Von denen können ca. 3,7 Milliarden vergeben und somit direkt angesprochen werden. Die restlichen sind für private Netzwerke und spezielle Funktionen reserviert. Zum Beginn des Internet-Zeitalters gab es nur wenige Institutionen und große Firmen, die über vernetzbare Computer verfügten. Mit der Kommerzialisierung des Internets und dem darauf folgenden Internet-Boom entstand ein riesiger Bedarf an Internet-Adressen. Die ursprünglich sehr großzügige Vergabe von großen Adressblöcken rächte sich bald. Schon Ende des 20. Jahrhunderts zeichnete sich eine Verknappung von zusammenhängenden Adressbereichen ab. Die von der IANA und den regionalen Registrierungsorganisationen vergebenen Adressblöcke wurden immer kleiner und hatten nur noch einen geringen oder sogar keinen regionalen Zusammenhang mehr. Die letzten beiden freien Blöcke wies die IANA Anfang 2011 dem asiatischen Regionalregistrar APNIC zu. Ab September 2012 vergibt die europäische Registrierungsstelle RIPE aus dem letzten ihr zur Verfügung stehenden Adressblock nur noch Zuteilungen in Minimalgröße (1024 IPv4-Adressen).

Die aufgrund der allmählig zunehmenden Erschöpfung des Adresspools mehrmals geänderte Vergabepraxis von IPv4-Adressen fragmentierte der IPv4-Adressraum immer mehr. Das führt bei den Routern, neben der Neuberechnung der Prüfsumme für jedes Paket, zu einer starken Belastung, da immer längere Routing- und Forwarding-Tabellen durchsucht werden müssen.

Ein weiterer Grund für die Erweiterung des Adressraums ist das Ziel einer möglichst reinen Ende-zu-Ende-Kommunikation. In diesem, auch Punkt-zu-Punkt (PTP = Point-to-Point) genannten Kommunikationsverfahren, führen nur die Endgeräte in einem Netz aktive Protokolloperationen aus. Das Netz selber ist nur für die Weiterleitung der Daten zuständig. Die Ende-zu-Ende-Kommunikation ist eine der zentralen Voraussetzungen für die Funktion des Internets der Dinge (IoT = Internet of Things).

Da diese Entwicklung schon recht früh absehbar war, begann die Internet Engineering Task Force (IETF) schon 1995 die Arbeiten am dem IPv4 folgenden Protokoll IPv6.

Im Vergleich zu IPv4 steigt der im IPv6 verfügbare Adressraum von 4,3 Milliarden auf 3.4×1038 IP-Adressen. Durch diesen nahezu unendlichen Vorrat an Adressen können Adressräume großzügig mit geografischem Bezug zugewiesen werden, was zu großen Subnetzen führt. Ähnlich wie bei den im den frühen IPv4-Netzen vergebenen Klassen können Gemeinsamkeiten im Präfix der IP-Adressen unterschiedlicher Netze Routingeinträge einsparen ("Route Aggregation").

3. IPv6-Adressen

IPv6-Adressen sind Identifizierer für einzelne oder mehrere Interfaces (= Schnittstellen für Geräte ("nodes" = Knoten), in die IPv6 implementiert ist). Es gibt drei Typen von Adressen:

  • Unicast
    Eine Unicast-Adresse ist Identifizierer für ein einzelnes Interface. Ein zur Unicast-Adresse gesendetes Datenpaket wird an das mit diesem Identifizierer gekennzeichnetem Interface geliefert.
  • Anycast
    Anycast-Adressen sind Identifizierer für eine Anzahl von Interfaces, die zumeist zu verschiedenen Geräten gehören. Ein zu einer Anycast-Adresse geschicktes Daten-Paket wird an eins mit diesen Identifizierer gekennzeichnetem  Interface geliefert.
  • Multicast
    Multicast-Adressen Kennzeichnen eine Anzahl von Interfaces, die zumeist zu verschiedenen Geräten gehören. Ein an eine Multicast-Adresse gesendetes Daten-Paket wird an alle Interfaces mit diesem Identifizierer geliefert.

In IPv6 gibt es keine Broadcast-Adressen. Diese Funktionen werden von Multicast-Adressen erfüllt.

3.1 Notationen von IPv6-Adressen

3.1.1 Notation von IP-Adressen

Eine IPv6-Adresse besteht aus acht Gruppen von jeweils zwei hexadezimalen Zahlen. Jede Gruppe stellt 16 Bits (2 Oktetts) dar. Eine IPv6-Adresse ist somit 128 Bit lang. Die Gruppen werden mit einem Doppelpunkt separiert.
Beispiel:

2001:0DB8:8280:97e8:6c18:0000:a53f:0001

Zur Vereinfachung dürfen führende Nullen innerhalb einer Gruppe weggelassen werden:
22001:0DB8:8280:97e8:6c18:0:a53f:1

Die längste Sequenz aus Nullen kann durch "::" (zwei Doppelpunkte) ersetzt werden. Aus
2001:0DB8:0000:0000:8280:97e8:6c18:0001
wird zuerst
2001:0DB8:0:0:8280:97e8:6c18:1
dann
2001:0DB8::8280:97e8:6c18:1

Sind mehrere Null-Sequenzen in der Adresse enthalten, darf nur eine, die am weitesten links stehende, ersetzt werden. Aus
2001:0DB8:0000:0000:8280:000:0000:1
wird
2001:0DB8::8280:0:0:1

 

3.1.2 Notation in URLs

In einer URL wird die IPv6-Adresse von eckigen Klammern umschlossen:
ftps://[2001:0DB8::8280:97e8:6c18:1]/
Um sicherzustellen, dass nicht Teile der Adresse als Portnummer interpretiert werden, kann die Portnummer an die IPv6-Adresse angehängt werden:
ftps://[2001:0DB8::8280:97e8:6c18:1]:990/

 

3.1.3 Notation von Netzwerkadressen

Zum Darstellen von IPv6-Netzen wird die CIDR-Notation verwendet. Dazu werden die erste Adresse des Netzes und die Länge des Präfixes in Bits getrennt durch einen Schrägstrich notiert.
2001:0DB8:8280/48 steht beispielsweise für das Netzwerk mit den Adressen von
2001:0DB8:8280:0000:0000:0000:0000:0000 bis 2001:0DB8:8280:FFFF:FFFF:FFFF:FFFF:FFFF.

 

3.2 Aufbau von IPv6-Adressen

Die 128 Bit lange IPv6-Adresse gliedert sich in zwei Bereiche. Die ersten (most-significant) 64 Bits, das sogenannte Präfix, bezeichnen ein Netzwerk. Die zweiten 64 Bits bilden den Interface-Identifier, der ein Gerät/Knoten bezeichnet.

Präfix

Das Präfix besteht wiederum aus zwei Bereichen, deren Länge jedoch variabel ist. Die ersten 32 Bit des Präfix bestimmen den Wirkungsbereich (Link-Local, Site-Local, Global) der IP-Adresse und deren Funktion (Unicast, Multicast, Anycast, spezielle Funktionen).

Für die Kommunikation im Internet bekommt z.B. ein Internet-Provider die ersten 32 Bits (oder weniger) vom Regionalen Internet Registrar (RIR) als Netz zugewiesen. Der Provider teilt dieses in Subnetze auf und vergibt diese dann an den Endkunden. Die Größe des an den Endkunden vergebenen Netzes bestimmt der Provider. (Die vorgeschriebene Mindestgröße ist übrigens ein /64-Netz.)

Interface Identifier

Mit einem 64 Bit langen Interface Identifier stehen jedem Endkunden somit 264 (= 1.84x1019) IP-Adressen als Interface Identifier zur Verfügung (was ein Vielfaches des gesamten IPv4-Adressraums ist). Um die Interface Intentifier zu generieren war ursprünglich vorgesehen diese aus der global einmaligen MAC-Adresse des jeweiligen Gerätes abzuleiten. Dieses würde jedoch eine eindeutige Identifizierung von Benutzern ermöglichen. Für Internetshops, Server und Sensoren ist dies absolut wünschenswert, aber private Internetuser könnten so leicht identifiziert und somit praktisch ohne Aufwand ausspioniert oder gar geschädigt werden.

Abb. 3.01: Aufbau einer IPv6-Adresse
Abb. 3.01: Aufbau einer IPv6-Adresse
Privacy-Extensions

Um die feste Kopplung von Gerät und Identifier aufzuheben und eine gewisse Anonymität im Internet zu gewährleisten, wurden die sogenannten Privacy-Extensions (PEX, RFC 4941) eingeführt. Hierdurch wird der Interface Identifier auf Zufallsbasis täglich neu generiert. Zusätzlich ist vorgesehen, dass der Internet-Provider bei Privatanschlüssen regelmäßig das Präfix ändert, also dynamisiert, so wie es unter IPv4 ist. Unter den Windows Betriebssystemen ab XP sind die Privacy-Extention serienmäßig eingeschaltet. Bei anderen Betriebssystemen besonders bei älteren Versionen, ist dies nicht immer der Fall.
Durch die Privacy Extention werden einem Gerät mehrere IP-Adressen zugewiesen

3.3 Adressbereiche

Der IPv6-Adress-Pool wird von der IANA verwaltet. Die IANA legt die Adressbereiche fest und definiert spezielle Adressen. Eine Übersicht über den Adressraum gibt es hier.

3.3.1 Spezielle Adressen

0:0:0:0:0:0:0:0 (Unspezifizierte Adresse)

Die Adresse 0:0:0:0:0:0:0:0 (auch ::/128) wird als Unspezifizierte Adresse bezeichnet. Sie bedeutet, dass keine Adresse vorhanden ist. Diese wird beispielsweise als Quelladresse von Paketen eingesetzt, die ein Host während seiner Initialisierung sendet.
Ein solches Paket darf niemals an einen IPv6-Router geschickt werden.

0:0:0:0:0:0:0:1 (Loopback Adresse)

Die Adresse 0:0:0:0:0:0:0:1 (auch ::1/128) wird Loopback-Adresse genannt. Sie wird verwendet, wenn ein Gerät ein IPv6-Datenpaket an sich selbst senden will. Die Loopback-Adresse darf nie einem physischen Interface zugeordnet werden. Datenpakete mit der Loopback-Adresse als Ziel dürfen nie ein Gerät verlassen. Eingehende Datenpakete mit der Loopback-Adresse als Ziel werden von jedem Interface verworfen.
Loopback-Aufrufe recht sind nützlich, wenn man verschiedene Dienste (z.B. Webserver) auf dem eigenen Rechner prüfen möchte, ohne sie einem entferntem Zugriff zugänglich zu machen.

 

3.3.2 Unicast-Adressen

Link-Local-Adressen

Präfix: fe80::/10

Link-Local-Adressen (Verbindungslokale Unicast-Adressen) sind nur innerhalb von geschlossenen Netzsegmenten gültig. Router dürfen Datenpakete mit Link-Local Adressen als Quelle oder Ziel nicht an andere Links weiterleiten.

Link-Local-Adressen sind zwar eindeutige Einzelverbindungen, können aber durchaus mehrfach vorkommen, z.B. wenn ein Gerät (z.B. Server) über zwei oder mehr Netzwerk-Interfaces verfügt. Verbindungslokale Adressen werden u.a. von einem Host bei der automatischen Adresskonfiguration und zur Informationen über die Anwesenheit von anderen IPv6-Hosts und -Routern verwendet.

Struktur von Link-Local Unicast-Adressen (Verbindungslokale Unicast-Adressen)
Abb. 3.02: Struktur von Link-Local Unicast-Adressen (Verbindungslokale Unicast-Adressen)

Link-Local-Adressen und Zonen-Index

Wenn ein Gerät (z.B. ein Server) mehrere Interfaces hat, können normale Routing-Prozeduren auf ausgehende Pakete an Link-Lokal-Adressen nicht angewendet werden, weil alle Lokal-Link-Adressen den gleichen Präfix (fe80::) haben. In einer Topologie wie in Abb. 3.03, können durch die Autokonfiguration (es gibt ja keinen DHCP-Dienst) in jeder Zone identische Link-Local-Adressen auftreten. So kann z.B. die Adresse "A"= fe80::1 in jeder Zone einmal vorkommen

Wenn ein Server mit mehreren Interfaces mit verschiedenen LANs verbunden ist, können die Hosts nur mit ihren Nachbarn im gleichen Netz und mit dem Server über Link-Local-Adressen kommunizieren, aber nicht über die LAN-Grenzen hinaus.
Abb. 3.03: Wenn ein Server mit mehreren Interfaces mit verschiedenen LANs verbunden ist, können die Hosts nur mit ihren Nachbarn im gleichen Netz und mit dem Server über Link-Local-Adressen kommunizieren, aber nicht über die LAN-Grenzen hinaus.

Um eventuelle nicht eindeutige Link-Local-Adressen zu unterscheiden, wird über einen speziellen Zonen-Index eine zusätzliche Routing-Information eingebracht. Hierzu wird die Link-Local-Adresse vom Betriebssystem mit dem Zonen-Index (zone_ID) erweitert. Die Syntax ist: IPv6-Adresse%zone_ID.
Windows erzeugt den Zonen-Index aus der Interface-Nummer (kann u.a. mit dem Netzwerkbefehl "netstat -r" ausgelesen werden). Ein Beispiel unter Windows für eine Link-Local Adresse mit dem Zonen-Index 15:
                                 fe80::b99c:8ffd:8424:b6b2%15
Unix und Derivate verwenden den Interface-Namen als Zonen-Index. Zum Beispiel:
                                 fe80::b99c:8ffd:8424:b6b2%eth2

Abb. 3.04: Ein zusätzlicher Zonen-Index beseitigt die mögliche Mehrdeutigkeit von Link-Local-Adressen und ermöglicht es Adresse "A" auf Link #1 von Adresse "A" auf Link #3 zu unterscheiden.
Unique Local-Adressen (ULAs)

Unique Local-Adressen (ULAs) sind global einzigartig und sollen nur innerhalb von Sites verwendet werden. Sie entsprechen den Privaten Adressen des IPv4. Sie dürfen von speziell konfigurierten Routern, z.B. in Tunnel, weitergeleitet werden.

Präfix: fc00::/7 (fc00... bis fdff...)

ULAs in diesem Adressbereich werden lokal mit einem Zufallsverfahren erzeugt. Da diese privaten Adressen nicht routbar sind, können sie nicht aus dem öffentlichen Internet erreicht werden. Zur Kennzeichnung, dass es sich um eine lokale Adresse handelt, ist das achte Bit auf 1 Gesetzt.

Präfix: fd00::/8 (fd00... bis fdff...)

Gleiches gilt auch für Unique Local Adressen mit dem Präfix fd00::/8. Der einzige Unterschied ist, dass diese Adressen von einem Administrator manuell vergeben werden können.

Struktur Unique Local Unicast-Adresse
Abb. 3.05: Struktur Unique Local Unicast-Adresse
Site Local-Adressen (seit 2004 überholt)

Präfix: fec0::/10 (fec0... bis feff...)

Site Local (Standortlokale) -Adressen sollten ursprünglich die Funktionen der IPv4-privaten Adressen übernehmen und in Sites (z.B. Firmen oder Organisation mit Niederlassungen oder mit mehreren Standorten) verwendet werden. Die Funktionen der standortlokalen Adressen übernehmen nun die Unique Local Addresses.

Struktur Site Local Unicast-Adressen (überholt)
Abb. 3.06: Struktur Site Local Unicast-Adressen (überholt)

Global Unicast Adressen

Global Unicast Adressen sind eindeutige Unicast-Adressen an die Pakete weitergeleitet werden. Abbildung 3.07 zeigt das allgemeine Format für eine Global Unicast-Adresse. Das Global Routing Präfix ist hierarchisch aufgebaut. Der Wert zeigt auf eine Site, eine Anzahl von Subnetzen oder Links. Die Subnetz-ID ist ein Identifizierer auf ein Link innerhalb der Site.

  • Präfix: 2000::/3 (2000 ... bis 3fff ...)
    Dieses sind von der IANA vergebene weltweit einzigartige, routbare Adressen
  • Präfix: 2001::/32
    werden an Provider vergeben, die sie dann an Endkunden weitergeben
  • Präfix: 2001:db8::/32
    dienen zur Verwendung in Dokumentationen
  • Präfix: 2002 ...
    Adressen für die Verwendung mit dem Tunnelverfahren 6to4
Struktur von Global Unicast-Adressen
Abb. 3.07: Struktur von Global Unicast-Adressen


3.3.3 Multicast-Adressen

Präfix: ff00::/8 (ff...)

Eine Multicast-Adresse ist ein Identifier für eine Gruppe von Geräten. Jedes Gerät kann zu beliebig vielen Multicast-Gruppen gehören.

Struktur Multicast-Adressen
Abb. 3.08: Struktur Multicast-Adressen

Eine Multicast-Adresse gliedert sich in die Bereiche Präfix, Flags, Scope und Group-ID. Im acht Bits langen Präfix steht "FF" zur Kennzeichnung einer Multicast-Adresse. Dem folgen vier Bits als Flags, über die der Adresstyp definiert wird. Vier weitere Bits bestimmen den Geltungsbereich (Scope) einer Multicast-Gruppe.
Etliche Bereiche der Multicast-Adressen sind von der IANA reserviert oder sind festen Funktionen zugeordnet (wohlbekannte Multicast-Adressen). Beispiele:
ff01::1 : All Nodes Interface lokal
ff02::1 : All Nodes Link lokal (Entspricht dem Broadcast).
ff01::2 : All Routers Interface lokal
ff02::2 : All Routers Link lokal, adressiert alle Router in einem Segment
ff05::2 : All Routers Sitelokal, adressiert alle Router einer Site.

Übersicht Flags
 Flag   Wert   Beschreibung
0 0 reserviert, immer Null
R 0  
1 Unicast-Prefix-basierte Multicast-Adressen (RFC 3956)
P 0  
1 Rendezvous Point (RP) Adresse in einer IPv6 Multicast Address (RFC 3306)
T 0 kennzeichnet eine permanent (von der IANA) zugeordnete ("well -known") Multicast-Adresse.
1 kennzeichnet eine nicht permanent zugewiesene (transiente oder dynamisch zugeordnete) Multicast Adresse
Tabelle 34.01: Übersicht Flags
Übersicht Scopes
 Wert 
Geltungsbereich (Scope)
Beschreibung
0  reserviert -
1  Interface-Local Interfacelokal: die Datenpakete verlassen das Gerät nicht.  Es dient zum Loopback von Multicast-Übertragungen
2  Link-Local Linklokal: die Datenpakete verlassen das lokale Subnetz nicht. Router leiten die Datenpakete nicht weiter.
3  reserviert -
4  Admin-Local Adminlokal: der Geltungsbereich muss von einem Administrator auf den Routern eingestellt werden.
5  Site-Local Sitelokal: Datenpakete können innerhalb von Sites geroutet werden, jedoch nicht von Border-Routern.
6  nicht vergeben -
7  nicht vergeben -
8  Organization-Local Organisationslokal: Der Geltungsbereich erstreckt sich über mehrere Sites. Datenpakete dürfen auch von Border-Routern weitergeleitet werden, verbleiben aber im gleichen logischen Netz.
9  nicht vergeben -
A  nicht vergeben -
B  nicht vergeben -
C  nicht vergeben -
D  nicht vergeben -
E  Global globaler Multicast
F  reserviert -
Tabelle 3.02: Übersicht Scopes


3.3.4 Anycast-Adressen

Im IPv6 wurde ein neuer Adresstyp "Anycast" definiert. Dieser Adresstyp erlaubt es, dass Datenpakete zu einem oder mehreren Geräten mit gleicher Adresse geroutet werden. Anycast-Adressen können einem oder mehreren, typischerweise an unterschiedlichen Geräten befindlichen, Netzwerk-Interfaces zugewiesen werden. Die Routing-Protokolle liefern jedes Paket zum nächsten Interface.
Mit der steigenden Verbreitung von IPv6 entwickeln sich immer mehr Anwendungsmöglichkeiten für Anycast-Adressen, z.B.: Es können Geräte Zugang zu einer ganzen Reihe von Servern mit wohlbekannten Diensten bekommen, ohne dass eine Liste der Server manuell in jedem Gerät angelegt werden muss.

Struktur Anycast-Adressen
Abb. 3.09: Struktur Anycast-Adressen

3.4 Autokonfiguration

Aufgrund der hohen Anzahl verfügbarer IPv6-Adressen unterscheidet sich die Adressvergabe grundlegend zum IPv4.

ZUSATZINFO

Internet Protocol Automatic Configuration (IPAC) im IPv4
Bei IPv4 erfolgt die Adressvergabe normalerweise kontrolliert durch den DHCP-Dienst im Router (oder auf einem Server). Jedes Gerät, das ins Netzwerk möchte, meldet sich beim DHCP-Dienst an und erhält eine temporäre IP-Adresse.  Der DHCP-Dienst führt eine Liste über die von ihm vergebenen IP-Adressen (und weiteren Parameter) und den Bezug zur MAC-Adresse des jeweiligen Geräts. Eine doppelte Vergabe einer IP-Adresse innerhalb eines Netzwerksegments ist so praktisch ausgeschlossen. Dieses kontrollierende Verfahren wird daher auch als "Stateful Address Configuration" (zustandsorientierte Adressvergabe) bezeichnet.
Eine besondere Situation entsteht, wenn ein privates IPv4-Netzwerk über keinen Router bzw. DHCP-Server verfügt. Dieses tritt ein, wenn das Netzwerk nicht mit dem Internet verbunden ist und z.B. nur aus einem Mediaserver und einigen Hosts als Wiedergabegeräte besteht. Um auch eine solche Konstellation ohne manuelle Konfiguration zu einem funktionsfähigen Netzwerk verknüpfen zu können, wurde das Internet Protocol Automatic Configuration (IPAC)-Protokoll geschaffen (Windows: Automatic Private IP Addressing (APIPA), Apple: Rendezvous).
Für diesen Dienst hat die IANA den Adressierungsbereich 169.254.x.x zur Verfügung gestellt. Unter Verwendung der MAC-Adresse seiner Netzwerkschnittstelle und von Zufallszahlen kann der Computer eine Adresse innerhalb dieses freigegebenen Adressbereiches selbst generieren. Um zu prüfen, ob die Adresse tatsächlich noch frei ist, setzt der Computer einen Ping an die selbst erzeugte Adresse ab. Erhält er keine Antwort, war die Adresse noch frei und kann nun verwendet werden.

Da die im Netzwerk verwendeten IP- und MAC-Adressen nirgendwo im Netz protokolliert, geprüft oder überwacht werden, ist IPAC eine "Stateless Address Configuration" (zustandslose Adressvergabe).

3.4.1 Ablauf einer Autokonfiguration unter IPv6

Um sich überhaupt mit einem Netzwerk verbinden zu können benötigt ein Computer zunächst eine eindeutige Identität und dann Informationen über das Netzwerk und die anderen Teilnehmer darin.

Generierung der Local Link-Address

Die erste eindeutige Identität, die der Computer benötigt, ist die Link Lokal-Adresse. Mit dieser kann er z.B. alle Router und Server in seinem Netzwerksegment finden. Setzt er die Link Local-Adresse als Absender in Datenpakete, die er an bestimmte Multicast-Adressen sendet, können ihm die gefundenen Router oder Server antworten.

Local Link-Adressen bestehen aus einem 64 Bit langen Präfix und dem gleich langen Interface Identifier. Die ersten 10 Bits des Präfixes sind bin 1111 1110 10 bzw. hex FE80; es folgt ein Feld mit 54 Null-Bits.
Der Interface Identifier besteht aus der 48 Bit langen MAC-Adresse des Netzwerkanschlusses und der Charakterfolge FF:FE als zusätzlichen Separator zwischen der Herstellerkennung und der Seriennummer. Abb. 3.10 zeigt wie eine Local Link-Adresse mittels Stateless Address Autoconfiguration (SLAAC, zustandslose Adressenautokonfiguration) erzeugt werden kann.

Generierung der Local Link-Adresse mittels SLAAC (Stateless Address Configuration)
Abb. 3.10: Generierung der Local Link-Adresse mittels SLAAC (Stateless Address Configuration)

3.4.2 Neighbor Discovery Protocol (NDP)

Hat ein Gerät eine gültige Link Local-Adresse generiert, muss es wissen, wer und was sich noch an weiteren Teilnehmern im Netzwerksegment befinden und wie die Infrastruktur aussieht. Als Erstes muss es alle Router-Adressen und die Präfixe des Netzwerks in Erfahrung bringen. Dies kann auf zwei Wegen erfolgen:

  • Router-Advertisement (Bekanntmachen von Informationen durch Router)
    Router senden in regelmäßigen Abständen per Multicast (FF02:0:0:0:0:0:0:1 = All Nodes Link Lokal) Nachrichten mit den der Computer vorläufige Listen mit Routern-Adressen (Default Router List) und Präfixen (Prefix List) erstellen kann.
  • Router-Solicitation (Anfordern von Information vom Router)
    Um den Vorgang zu beschleunigen, kann der Computer mit einer Router-Solicitation-Nachricht an die Router-Multicast-Adresse ein vorzeitiges Router Advertisement auslösen. Router-Solicitation-Nachrichten sind speziell aufgebaute Datenpakete, die ein Gerät an eine Multicast-Adresse (FF02:0:0:0:0:0:0:2 = All Routers Link Local) sendet.

Über einen ähnlichen Mechanismus kann ein Gerät auch andere ("benachbarte") Geräte im selben Netzwerk finden.

  • Mit Neighbor Solicitation-Nachrichten kann ein Gerät die Link Layer-Adressen seiner "Nachbarn" herausfinden oder deren Erreichbarkeit verifizieren.
  • Ein Gerät beantwortet eine Neighbor Solicitation-Nachricht mit einer Neighbor Advertisement-Nachricht.

Für jedes Interface im Gerät müssen bestimmte Informationen in Caches vorgehalten werden. Manche Einträge haben ein Verfallsdatum. Wird ein solcher Eintrag nicht aufgefrischt, wird er gelöscht. So werden z.B. die Adressen von inaktiven Routern nach gewisser Zeit gelöscht, nur die aktiven bleiben erhalten.
Neben der Default Router List und der Prefix List gibt es noch den Neighbor Cache, der die IPv6-Adressen mit den dazugehörenden Link Layer- (Hardware-) Adressen speichert und der Destination Cache in dem die Zieladressen des letzten Datenübertragungen und die für den ersten Hop der zu sendenden Pakete eingetragen sind.

3.4.3 DHCPv6

IPv6 benötigt normalerweise aufgrund der Autokonfiguration keinen DHCP-Dienst. Wird dieser dennoch benötigt, kann auf DHCPv6 zurückgegriffen werden, das prinzipiell die gleichen Funktionen bietet wie DHCP unter IPv4. DHCPv6 liefert zusätzlich Informationen über eventuell vorhandene SIP- und NTP-Dienste.

 

3.5 Zonen und Gültigkeitsbereiche (Scopes)

Scopes

Jede IPv6-Adresse (außer der nicht spezifizierten Adresse) hat einen bestimmten Gültigkeitsbereich (Scope). Ein Scope ist der Teil eines Netzwerks, in dem die IPv6-Adresse als eindeutig für ein einzelnes oder einen Satz von Interfaces anerkannt wird und geroutet werden kann. Bei den Unicast-Adressen gibt es im Prinzip nur zwei Scopes:

  • Lokale Scopes kennzeichnen eindeutig Interfaces innerhalb bzw. angebunden an einen einzelnen Link.
  • Globale Scopes kennzeichnen eindeutig Interfaces überall im Internet.

Bei Multicast-Adressen können bis zu vierzehn Scopes unterschieden werden (siehe hier).

Die Gültigkeitsbereiche (Scopes) von IPV6-Adressen
Abb. 3.11: Die Gültigkeitsbereiche (Scopes) von IPV6-Adressen
  • Host Scope (": :1") ist eine Loopback Adresse.
  • Link-Local Scopes ("fe80: :/8") sind verbindungslokale Unicast-Adressen für jedes Interface.
  • Unique-Local-Scope ("fc00: :/8 und "fd80: :/8") sind global eindeutige verbindungslokale Unicast-Adressen.
  • Site-Local Scope ("fec0: :/10") sind standortlokale Adressen (veraltet).
  • Global Scope ("2...", "3...", ...) sind global eindeutige Unicast-Adressen.
Zones

Eine Zone definiert eine topologische Instanz (z.B. die Website von "Firma A" oder "Organisation B"). Sie ist ein zusammenhängender Bereich innerhalb eines gegebenen Scopes. Zur eindeutigen Identifizierung eines Interfaces in einer Zone dient dessen IP-Adresse. In einem nicht-globalen Scope können in verschiedenen Zonen identische IPv6-Adressen auftreten (siehe auch hier). Ein Interface kann nur zu einer Zone jedes Scope's gehören. Die Grenze einer Zone geht durch einen Knoten (Node) und nicht durch einen Link. Die Grenzen von Zonen innerhalb eines Scopes müssen von einem Administrator festgelegt werden (außer link-local und global). Zonen eines Scopes können sich nicht überschneiden, d.h. sie haben keine gemeinsamen Links oder Interfaces.

Zones und Scopes
Abb. 3.12: Zones und Scopes

3.6 Welche IPv6-Adressen benötigt ein Gerät?

Abruf der aktuellen Parameter der Ethernet-Schnittstelle mit dem Netzwerkbefehl ' ipconfig /all '
Abb. 3.13: Abruf der aktuellen Parameter der Ethernet-Schnittstelle mit dem Netzwerkbefehl ' ipconfig /all '

Abb. 3.13 zeigt die wichtigsten Parameter einer Ethernet-Schnittstelle unter IPv6. Es ist eine ganze Anzahl von IP-Adressen unter Verwendung.

  1. MAC- (Hardware-) Adresse des Ethernet-Adapters. Diese geht während der Initialisierung in die temporäre Lokal Link-Adresse ein.
  2. Anfangsadresse vom Internetprovider zugewiesener Adressbereich. Für eine Stateful-Autokonfiguration (per DHCPv6 oder manuell) steht der Adressbereich von 2a02:xxxx:xxxx:3c70::2 bis 2a02:xxxx:xxxxx:3c70:ffff:ffff:ffff:ffff zur Verfügung.
  3. Vom Internetprovider zugewiesene Global Unicast-Adresse.
  4. Automatisch erzeugte Unique Local-Adresse. Verwendet den vom Provider zugewiesenen Interface Identifier (aus 3).
  5. Automatisch erzeugte Global Unicast-Adresse. Der Interface Identifier (ab 3c70:) ist zufällig erzeugt und kann nicht auf ein einzelnes Gerät zurückverfolgt werden. Mit dieser IPv6-Adresse ist man im Internet unterwegs!
  6. Automatisch erzeugte Unique Local-Adresse. Der Interface Identifier ist zufällig erzeugt und kann nicht auf ein einzelnes Gerät zurückverfolgt werden. Mit dieser IPv6-Adresse ist man im privaten Netzwerk / Site unterwegs!
  7. Link Local-Adresse. Verwendet den vom Provider zugewiesenen Interface Identifier (aus 3).
  8. Local Link IPv6-Adresse des Routers
  9. Global Unicast-IPv6-Adresse des DNS-Servers (steht beim Internet Provider).

4. IPv6-Paketformat

4.1 Aufbau des IPv6-Headers

Jedes IPv6-Datenpaket (Datagramm) besteht aus einem Header (Kopfdatenbereich) und der Payload (Nutzlast). Wie der Umschlag eines Briefes weist der Header den Absender des Paket (Source) und den Empfänger (Destination) auf. Weitere Datenfelder sind Information an die Router, wie dieses Datenpaket zu behandeln ist. Um die Weiterleitung von Datenpaketen in den Routern zu beschleunigen, wurde die Größe des IPv6-Headers auf 40 Bytes festgelegt. Zusätzliche Informationen und Parameter können in optionale Header-Extentions zwischen Header und Payload (Nutzdaten) eingetragen werden.

Aufbau des IPv6-Headers
Abb. 4.01: Aufbau des IPv6-Headers
Feld Bits Beschreibung
Version 4 IP-Version des Pakets (6)
Traffic Class 8 Priorität des Pakets beim Routen (Quality of Service / QoS)
Flow Label 20 Weiterer Marker für QoS bei Echtzeitanwendungen und Streaming. Pakete mit gleichem Flow-Wert werden gleich behandelt.
Payload Length 16 Netto-Länge des Datenpakets (= Payload + Header Extentions)
Next Header 8 Kennzeichen für den Typ des nächsten Headers (entspricht dem Feld "Protocol" im IPv4-Header)
0 (0x00) IPv6 Hop-by-Hop Option
1 (0x01) ICMP protocol
2 (0x02) IGMP protocol
4 (0x04) IP over IP
6 (0x06) TCP protocol
17 (0x11) UDP protocol
41 (0x29) IPv6 protocol
58 (0x3A) IPv6 ICMP protocol
59 (0x3B) IPv6 No Next Header
Hop Limit 8 Maximale Anzahl von Router-Durchläufen (Hops). Bei jedem Hop wird dieser Zähler um eins dekrementiert. Beim Stand null wird das Paket verworfen. Dieser Mechanismus soll verhindern, dass unzustellbare Pakete für ewig im Internet kreisen.
Source-
Address
128 Quelladresse
Destination-
Address
128 Zieladresse
Tabelle 4.01: Die Datenfelder im IPv6-Header

4.2 Extention Header

Extention Header enthalten optionale Anweisungen oder Informationen an Router über die das Datenpaket weitergeleitet wird oder Geräte, die das Paket empfangen sollen.
Jeder Extention Header besteht einem Typenfeld, das die Information kennzeichnet und einem Next Header-Feld, das entweder auf den nächsten Extention Header oder auf die Payload weist. Es können mehrere Extention Header aneinandergereiht werden.
Extention Header sind 64 Bit oder ein Vielfaches davon lang.

Einfügen von Extention Header in IPv6-Datenpakete
Abb. 4.02: Einfügen von Extention Header in IPv6-Datenpakete
Typ Größe Name Beschreibung
0 var. Hop-By-Hop
Options
Enthält Anweisungen, die von allen Geräten im Pfad des Datenpakets, von der Quelle bis zu Ziel ausgewertet und beachtet werden müssen. Wird z. B. bei der Verwendung von Jumbograms benutzt.
43 var. Routing Beeinflusst den Weg des Paket durch das Netz. Wird z.B. bei Mobile IPv6 verwendet.
44 64 Fragment Parameter für eine Fragmentierung
51 var. Authentication Header Daten, die die Vertraulichkeit des Paketes sicherstellen können (IPsec)
50 var. Encapsulating Security Payload Daten zur Verschlüsselung des Pakets
60 var. Destination
Options
Optionen, die an den Zielrechner gerichtet sind
135 var. Mobility Daten für Mobile IPv6
59 var. No Next Header Platzhalter um das Ende der Extendet Header-Kette zu kennzeichnen.
Tabelle 4.02: Datenfelder in IPv6-Extention Headern

4.3 Paketgrößen

Die Länge des "Payload Length"-Feldes im IPv6-Header betragt 16 Bits. Dadurch wird die maximale Länge der Payload auf 65.535 Bytes begrenzt. Dieses ist auch die Grenze für die meisten Link Layer-Protokolle.

Jumbogram

IPV6 unterstützt sogenannte Jumbogramme, die eine wesentlich größere Payload übertragen können als Standarddatagramme. Unter Verwendung des 32 Bit langen Hop-by-Hop-Datenfelds in einem Extended Header, können Datenpakete bis zu einer Größe von 4GB minus 1Byte ausgetauscht werden. Dieses setzt allerdings eine speziell angepasste Infrastruktur voraus.

5. Mobile IPv6

Mobile IPv6 erlaubt es mobilen Geräten jederzeit und überall unter der gleichen IP-Adresse erreichbar zu sein, ohne dass ständig Routing-Tabellen aktualisiert werden müssen. Kernstück dieses Verfahrens ist ein Schattenrechner im Heimnetz, der Home Agent, der Anrufe stellvertretend für das Mobilgerät annimmt und die Datenpakete an die momentane Adresse ("Care-of-Address") des Mobilgerätes in einem Tunnel weiterleitet.

Die aktuelle Care-of-Address erhält der Homeagent vom Mobilgerät sobald es im fremden Netz eine IP-Adresse zugewiesen bekommen hat ("Binding Updates").

Prinzip des Verbindungsaufbaus bei Mobile IPv6
Abb. 5.01: Prinzip des Verbindungsaufbaus bei Mobile IPv6
Prinzip des Verbindungsaufbaus unter Mobile IPv6

1. Das Mobilgerät (MN = Mobile Node) erkennt über das Neighbor Discovery Protocoll (NDP) das neue Netz und erhält eine Care-of-Address (COA).

2. Das mobile Gerät sendet seine COA an den Home Agent ("Binding Update"). Der Home Agent aktualisiert seine Verbindungsliste und sendet eine Bestätigung an das Mobilgerät.

3. Möchte das korrespondierende Gerät (CN = Correspondent Node) Daten an das Mobilgerät senden, tut er dies an den Home Agent. Dieser fängt die Daten ab und überprüft seine Verbindungsliste.

4. Der Home Agent öffnet eine Tunnelverbindung zur COA des Mobilgerätes und teilt dem korrespondierenden Gerät die COA des Mobilgerätes mit.

5. Das korrespondierende Gerät kann nun Daten direkt an die COA des Mobilgerätes senden.

 

 

 

 

Zuletzt bearbeitet am 30. Jan. 2017

Rechtshinweis

Sofern auf dieser Seite markenrechtlich geschützte Begriffe, geschützte (Wort- und/oder Bild-) Marken oder geschützte Produktnamen genannt werden, weisen wir ausdrücklich darauf hin, dass die Nennung dieser Marken, Namen und Begriffe hier ausschließlich der redaktionellen Beschreibung bzw. der Identifikation der genannten Produkte und/oder Hersteller bzw. der beschriebenen Technologien dienen.

Alle Rechte an den in diesem Kompendium erwähnten geschützten Marken- und/oder Produktnamen sind Eigentum der jeweiligen Rechteinhaber und werden hiermit ausdrücklich anerkannt. Alle in unseren Artikeln genannten und ggfs. durch Dritte geschützte Marken- und Warenzeichen unterliegen uneingeschränkt den Bestimmungen des jeweils gültigen Kennzeichenrechts sowie den Besitzrechten der jeweiligen eingetragenen Eigentümer.

Die Nennung von Produktnamen, Produkten und/oder der jeweiligen Produkthersteller dient ausschließlich Informationszwecken und stellt keine Werbung dar. InfoTip übernimmt hinsichtlich der Auswahl, Leistung oder Verwendbarkeit dieser Produkte keine Gewähr.

Sollten dennoch wider unserer Absicht Rechte Dritter verletzt werden, so bitten wir um eine Benachrichtigung ohne Kostennote.