Seminararbeit zu IPv6 Migration

Christian Stadach


... < zurück ... [Linux und Netzwerke, Softwareentwicklung mit Eclipse] ... [Internet Protokoll Version 6] ... vor >


Übersicht: Internet Protokoll Version 6


Grundlegendes

Um die Migrationsmethoden für eine Umstellung von IPv4 auf IPv6 verstehen zu können, sind Kenntnisse der Grundlagen des IPv6 Protokolls vorauszusetzten. In diesem Kapitel werden Grundlagen und Unterschiede gegenüber dem IPv4 erläutert.

IPv6 Adressierung

Darstellung von IPv6 Adressen

Die Adresslänge wurde beim IPv6 um 96 Bits auf 128 Bit verlängert. Dies ermöglicht theoretisch ca. 340 Sextillionen Adressen. Zum Vergleich erlaubt der 32 Bit Adressbereich beim IPv4 ca. 4 Milliarden Adressen.

Ähnlich zum IPv4 wird die Adresse beim IPv6 in Blöcke aufgeteilt. Die 128 Bits der IPv6 Adresse ergeben hier 8 Blöcke. Jeder 16 Bit Block wird als Hexadezimalzahl angegeben und die einzelnen Blöcke werden durch Doppelpunkte getrennt. Diese Darstellung sieht also beispielsweise folgender Maßen aus:

1234:5678:9ABC:DEF:0123:4567:89AB:CDEF

Um diese Darstellung zu vereinfachen gibt es zwei Regeln.

Kategorien des IPv6 Adressen

Das IPv6 beschreibt 3 Kategorien von IP Adressen:

Adresspräfixe

Ähnlich dem Classless-Inter-Domain-Routing beim IPv4 wird die Aufteilung des Adressraums beim IPv6 durch eine Präfixlängennotation durchgeführt. Hierbei bestimmt man einen IPv6 Adressbereich wie folgt:

IPv6-Adresse/Präfixlänge

An einem Beispiel erklärt 2001:CFF:0:CD30::/60 bedeutet, dass die ersten 60 Bit als Präfix fest sind und die nachfolgenden 68 Bits beliebig vergeben werden können.

Aufteilung des IPv6-Adressraums

Die Präfixlängennotation ermöglicht es, im Vergleich zu der im IPv4 vorhandenen Aufteilung des Adressraumes in Netzwerkklassen, flexiblere Adresstypen festzulegen. Um welchen Adresstyp es sich handelt wird durch das Adresspräfix festgelegt. Einzelne Typen von IPv6-Adressen zeigt Abbildung 1.

Typen von IPv6 Adressen und Ihre Präfixe

Abbildung 1: Typen von IPv6 Adressen und Ihre Präfixe (Aus Buch [1], Seite 255)

So handelt es sich zum Beispiel bei den 6to4 Adressen ebenfalls um Globale-Unicast-Adressen, da das Präfix 2002:w.x.y.z::/48 sich ebenfalls im Präfixbereich der Globalen-Unicast-Adressen befindet (2000::/3)

Die Aufteilung des IPv6 Adressraums wird von der IANA (Internet Assigned Numbers Authority) koordiniert. Und kann im Internet eingesehen werden3.

IANA IPv6 Assignments

Abbildung 2: IANA IPv6 Assignments

Header-Aufbau

Wie in Abbildung 3 ersichtlich ist, wurde der Header des IPv6 gegenüber dem IPv4 Header stark verändert.

Diese Vereinfachung des Headers lässt sich mit dem Weglassen einzelner Funktionen wie zum Beispiel der Neuberechnung der Header-Prüfsumme und des Fragment Offsets bei der Fragmentierung von Paketen begründen. Die Berechnung einer Prüfsumme geschieht schon sowohl im Layer 2 als auch im Layer 4 des OSI Modells und muss nicht auch noch auf Layer 3 geschehen. Desweiteren geschieht die Fragmentierung von Datenpakteten nur noch beim Absender. Dies erleichtert die Arbeit, die ein Router bei der Weiterleitung von Paketen in andere Netze vornehmen muss immens.

IPv4 Header vs. IPv6 Header

Abbildung 3: Gegenüberstellung der Protokollheader (Quelle: Wikimedia Commons)

Die einzelnen Felder im IPv6 Header haben folgende Bedeutung:

Feld Beschreibung
Version IP Version (hier also 6)
Traffic Class Ermöglichung einer Quality of Service (QOS), dies ermöglicht eine Prioritätsvergabe. Das nach RFC 2474 festgelegte Differentiated Services Feld garantiert hier eine Abwärtskompatibilität zu IPv4
Flow Label Setzt die ID einer virtuellen Ende zu Ende Verbindung fest. Dies ermöglicht es Routern Pakete bereits nach der Erkennung eines bereits bekannten Flow Labels weiter zu leiten, ohne den Rest des Headers zu lesen
Payload Length Beschreibt die Länge des nach dem Header angehängten Datenpakets (inklusive Erweiterungs Header)
Next Header Hier wird der Header-Typ angezeigt, der direkt nach dem IPv6-Header folgt.
Hierbei handelt es sich entweder um den Header eines im OSI-Modell nächst höher angeordneten Protokolls oder um einen Erweiterungs-Header, der eine optionale Erweiterung des IPv6-Headers ermöglicht.
Hop Limit Das Hop-Limit entspricht dem Time-to-Live Feld im IPv4 Header. Es beschreibt die maximale Anzahl von Routern, die ein Paket auf dem Weg zum Ziel durchlaufen darf.
Source Address IP-Adresse des Quell-Rechners
Destination Adress IP-Adresse des Ziel-Rechners

Erweiterungs-Header

Das Next-Header-Feld ermöglicht es den IP-Header modular zu erweitern. Es zeigt an was für ein Header-Typ nach dem IP-Header folgt. Hier kann entweder direkt der TCP- beziehungsweise UDP-Header mit den dazugehörigen Daten vorkommen oder es wird zuerst ein Erweiterungs-Header, der auch ein Next-Header Feld enthält eingesetzt. So lassen sich beliebig viele Erweiterungs Header in einem IPv6 Paket verschachteln.

Hier eine Übersicht der im Protokoll definierten Erweiterungs Header:


  1. Vgl. o.V., 2008: http://www.iana.org/assignments/ipv6-address-space, Abruf:27.11.2008