IPv6/Header/Extension

Aus Foxwiki

IPv6-Erweiterungsheader - Kurzbeschreibung

Beschreibung

Funktionen gestrichener Felder sind mitunter notwendig

  • Für diese Fälle werden Erweiterungsheader definiert, um zusätzliche Informationen zu übermitteln
  • Erweiterungsheader sind optional
  • Werden mehrere benutzt müssen sie direkt nach dem Hauptheader erscheinen

Extension Header

Extension Header sind zusätzliche Header, die Infos für die Netzwerkschicht (IP-Layer) beinhalten. Diese Header werden nur bei Bedarf eingefügt und liegen außerhalb des IP-Headers. Extension Header müssen ein Vielfaches von 8 Bytes lang sein.

Es sind 6 Basis Extension Header definiert, die immer implementiert sein müssen:

  • Hop-by-Hop Options Header (RFC 2460)
  • Routing Header (RFC 2460)
  • Fragment Header (RFC 2460)
  • Destination Options Header (RFC 2460)
  • Authentication Header (RFC 4302)
  • Encapsulating Security Payload Header (RFC 4303)

Extension Header dürfen höchstens einmal vorkommen, Destination Options Header dürfen höchstens zweimal vorkommen. Die Header müssen in einer definierten Reihenfolge auftreten:

| IPv6 Header || |- | Hop-by-Hop Options Header || |- | Destination Options Header || Optionen für Router

  1. Routing Header
  2. Fragment Header
  3. Authentication Header
  4. Encapsulation Security Payload Header
  5. Destination Options Header (Optionen für den endgültigen Empfänger)
  6. Upper-Layer Header

Hop-by-Hop Options Header

Hop-by-Hop Header

Routing Header

Der Routing Header wird im vorangegangenen Header mit dem Wert 43 angezeigt.

Im Routing Header wird eine Liste von Routern angegeben, über die das Paket weitergeleitet werden muß. Der Router muß von allen Routern in der Liste verarbeitet werden.

Feldname Länge Inhalt des Feldes
Format des Routing Headers
Next Header 1 Byte Beschreibt den Typ des folgenden Headers
Header Extension Length 1 Byte Länge des Routing Headers in 8 Byte Einheiten, ohne die ersten 8 Byte
Routing Type 1 Byte Typ des Routing Headers
Segments Left 1 Byte Anzahl der Nodes bis zum Erreichen des Ziels
Type Specific Data variabel vom Routing Type abhängig

Der Routing Type 2 wird bei Mobile IPv6 definiert.

Kann ein Router den Routing Type nicht identifizieren und steht das Segments Left Feld auf 0, muß er mit dem nächsten Header fortfahren. Ist das Segments Left Feld ungleich 0, dann wird das Paket verworfen und eine ICMPv6 'Parameter Problem' Nachricht an den Absender versandt.

Fragment Header

Fragment Header

Optionen für Teilstrecken

Informationen, die alle Router auf der Strecke prüfen
  • Bisher ist eine Option definiert, die Unterstützung von Jumbogrammen, also Paketen die größer als 64 kByte sind
Routing
  • Mit diesem Header kann eine Route vollständig oder teilweise spezifiziert werden
  • Fragmentierung Dieser Header enthält Optionen für die Fragmentierung von Paketen
  • Nanu, hatten wir nicht eben gesagt IPv6 fragmentiert nicht? Im Prinzip ja
  • Der Quellhost darf Pakete immer noch fragmentieren
  • Nur die Router auf der Strecke sind nicht mehr dazu berechtigt
Authentifikation
  • Der Authentifizierungsheader bietet einen Mechanismus, durch den der Empfänger sicher sein kann, das der in der Adresse angegebene Sender auch tatsächlich der ist, der er behauptet zu sein
Verschlüsselte Sicherheitsdaten
  • Dieser Header enthält Informationen über das verwendete Verschlüsselungsverfahren

Optionen für Ziele

Optionen, die nur vom Zielhost interpretiert werden

Bedeutung

Die meisten IPv6-Pakete sollten ohne Extension Headers auskommen

Extension Headers können bis auf den Destination Options Header nur einmal in jedem Paket vorkommen

  • Befindet sich ein Routing Extension Header im Paket, so darf davor ein weiterer Destination Options Header stehen
  • Die Reihenfolge bei einer Verkettung ist bis auf die genannte Ausnahme die der folgenden Tabelle
  • Wie im Next Header Feld verwiesen sind einige Extension Headers und ein Platzhalter definiert
Name Typ Größe Beschreibung RFCs
Hop-By-Hop Options 0 variabel Optionenvon allen IPv6-Geräten zu beachtenwird z.B. für Jumbograms benutzt RFC 2460RFC 2675
Routing 43 variabel Hier kann der Weg des Paketes durch das Netzwerk beeinflusst werdenwird u.a. für Mobile IPv6 verwendet RFC 2460RFC 6275RFC 5095
Fragment 44 64 Bit Parameter zur Fragmentierung RFC 2460
Authentication Header (AH) 51 variabel Daten zur Vertraulichkeit (IPsec) RFC 4302
Encapsulating Security Payload (ESP) 50 variabel Daten zur Verschlüsselung (IPsec) RFC 4303
Destination Options 60 variabel Optionennur vom Zielrechner zu beachten RFC 2460
Mobility 135 variabel Daten für Mobile IPv6 RFC 6275
No Next Header 59 leer Platzhalterzeigt Ende eines Header-Stapels an RFC 2460

Verwendung von Extension Headers

Reihenfolge der Extension Header

Option Beschreibung
1 IPv6 Header
2 Hop-by-Hop Options Header (für Optionen, welche von Routern auf dem Pfad zum endgültigen Empfänger verarbeitet werden müssen)
3 Routing Header
4 Fragment Header
5 Authentication Header
6 Encapsulating Security Payload Header
7 Destination Options Header (für Optionen, welche vom endgültigen Empfänger des Paketes verarbeitet werden müssen)
8 Upper-Layer Header

Extension Headers

Next-Header
  • Alle Extension Headers enthalten ein Next-Header-Feld, in dem
  • der nächste Extension Header oder
  • das Upper Layer Protocol genannt wird
  • Größen immer Vielfache von 64 Bit
  • Speicherzugriffe im Router beschleunigen
  • die meisten Felder der Kopfdatenbereiche sind auf 64-Bit-Grenzen ausgerichtet
Keine Prüfsummen
  • Es werden keine Prüfsummen über die IP-Kopfdaten berechnet
  • im Gegensatz zu IPv4
  • Fehlerkorrektur auf Schichten 2 und 4

Hop-by-Hop Options Header

Routing Header


Anhang

Siehe auch

Links

Weblinks

TMP

Extension-Prinzip

IPv6-Header ist durch Extension-Header erweiterbar
Option Beschreibung
Per Hop ausgewertete Header
  • Hop-by-Hop Options (z.B. Jumbogramm Notifier)
  • Routing Information Header
Nur im Endsystem ausgewertete Header
  • Fragmentation Header
  • Authetication Header
Header-Extensions u.U. auf Applikationsniveau direkt nutzbar
  • Die meisten IPv6 Pakete bestehen nur aus IPv6- und TCP Header sowie Daten

Next Header Werte