IPv6/Header: Unterschied zwischen den Versionen

Aus Foxwiki
Subpages:
K Textersetzung - „</abbr>“ durch „]] “
 
(19 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 3: Zeile 3:
== Beschreibung ==
== Beschreibung ==
Definiert im [[RFC]] 2460
Definiert im [[RFC]] 2460
* fix 40 Bytes
; Feste Größe
* 40 Bytes
* davon je 16 Bytes  für Absender- und Empfängeradresse
* davon je 16 Bytes  für Absender- und Empfängeradresse


; Vereinfachung des Headers
==  Header-Format ==
 
==== Feste Länge  ====
Bei IPv6 eine feste Länge von 40&nbsp;Byte (320&nbsp;Bit)
* Im Gegensatz zu IPv4 hat der IP-Kopfdatenbereich (Header)
 
==== Extension Headers  ====
 
Optionale, seltener benutzte Informationen werden in so genannten Erweiterungs-Kopfdaten (engl.: Extension Headers) eingebettet * zwischen dem IPv6-Kopfdatenbereich und der eigentlichen Nutzlast (engl. Payload)
 
 
 
===  Header-Felder ===
; Kopfdatenbereich nach RFC 2460
{| class="wikitable options big"
|-
|-
! Feld !! Länge !! Inhalt
|-
|  | Version
|  | 4&nbsp;Bit
|  | IP-Versionsnummer (6)
|-
|  | Traffic&nbsp;Class
|  | 8&nbsp;Bit
|  | Für Quality of Service (QoS) verwendeter Wert. Eine Art Prioritätsvergabe.
|-
|  | Flow&nbsp;Label
|  | 20&nbsp;Bit
|  | Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
|-
|  | Payload&nbsp;Length
|  | 16&nbsp;Bit
|  | Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
|-
|  | Next&nbsp;Header
|  | 8&nbsp;Bit
|  | Identifiziert den Typ des nächsten Kopfdatenbereiches, dieser kann entweder einen Erweiterungs-Kopfdatenbereich (siehe nächste Tabelle) oder ein Protokoll höherer Schicht (engl.: Upper Layer Protocol) bezeichnen, wie z.&nbsp;B. TCP (Typ 6) oder UDP (Typ 17).
|-
|  | Hop&nbsp;Limit
|  | 8&nbsp;Bit
|  | Maximale Anzahl an Zwischenschritten über Router, die ein Paket zurücklegen darf; wird beim Durchlaufen eines Routers („Hops“) um eins verringert. Pakete mit null als Hop Limit werden verworfen. Es entspricht dem Feld Time to Live (TTL) bei IPv4.
|-
|  | Source&nbsp;Address
|  | 128&nbsp;Bit
|  | Adresse des Senders
|-
|  | Destination&nbsp;Address
|  | 128&nbsp;Bit
|  | Adresse des Empfängers
 
 
|-
|}
 
===  Extension Headers ===
[[IPv6/Header/Extension]]
 
== Vereinfachung des Headers ==
[[File:img-006-001.png]]
[[File:img-006-001.png]]


; Enthält nur grundlegende Forwarding-Information
; Enthält nur grundlegende Forwarding-Information
* Zusätzliche Informationen in variablen zusätzlichen Erweiterungs-Headern, welche durch das „Next Header“ Feld identifiziert werden
* Zusätzliche Informationen in variablen zusätzlichen Erweiterungs-Headern, welche durch das „Next Header“ Feld identifiziert werden
* Damit trotz vierfacher IPv6-Adresslänge (16 Byte) nur doppelte Headerlänge
* Trotz vierfacher IPv6-Adresslänge (16 Byte) nur doppelte Headerlänge


=== IPv6 (Felder)===
=== IPv6 (Felder)===
{| border="1" cellpadding="4" cellspacing="0" style="text-align:center;margin:auto;"
{|
! style="text-align:center !important; font-weight: normal;" "width="3%"| Byte/Bin
! style="text-align:center !important; font-weight: normal;" "width="3%"| Byte/Bin
! width="12%"| 00–03
! width="12%"| 00–03
Zeile 47: Zeile 106:


=== IPv4 Header Felder ===
=== IPv4 Header Felder ===
{| class="wikitable sortable options"
{| class="wikitable big options"
|-
|-
! Option !! Beschreibung
! Option !! Beschreibung
Zeile 65: Zeile 124:


=== Entfallene Felder ===
=== Entfallene Felder ===
{| class="wikitable sortable options"
{| class="wikitable big options"
|-
|-
! Option !! Beschreibung
! Option !! Beschreibung
Zeile 92: Zeile 151:
=== Kopfdaten ===
=== Kopfdaten ===
; Kopfdaten laut RFC 2460
; Kopfdaten laut RFC 2460
{| class="wikitable sortable options"  
{| class="wikitable big options"  
|-  
|-  
! Feld
! Feld
Zeile 150: Zeile 209:
== Der IPv6 Header ==
== Der IPv6 Header ==
=== Die Felder im IPv6 Header ===
=== Die Felder im IPv6 Header ===
{| class="wikitable"
{| class="wikitable big"
!Feldname
!Feldname
!Länge
!Länge
Zeile 187: Zeile 246:
|Zieladresse
|Zieladresse
|16 Bytes
|16 Bytes
|endgültiger Empfänger <abbr>bzw.</abbr> Adresse des nächsten Hops (<abbr>z.B.</abbr> wenn ein Routing Header vorhanden ist)
|endgültiger Empfänger [[bzw.]]  Adresse des nächsten Hops ([[z.B.]]  wenn ein Routing Header vorhanden ist)
|-
|-
!Summe der Bytes
!Summe der Bytes
Zeile 195: Zeile 254:


; Die aktuelle Liste aller Protokoll- und Headerwerte findet man bei der IANA.
; Die aktuelle Liste aller Protokoll- und Headerwerte findet man bei der IANA.
{| class="wikitable"
{| class="wikitable big"
!Wert
!Wert
!Beschreibung
!Beschreibung
Zeile 206: Zeile 265:
|-
|-
|1 (0001, 0x1)
|1 (0001, 0x1)
|<abbr>ICMP</abbr> IPv4
|[[ICMP]]  IPv4
|-
|-
|2 (0010, 0x2)
|2 (0010, 0x2)
|<abbr>IGMP</abbr> IPv4
|[[IGMP]] IPv4
|-
|-
|4 (0100, 0x4)
|4 (0100, 0x4)
Zeile 215: Zeile 274:
|-
|-
|6 (0110, 0x6)
|6 (0110, 0x6)
|<abbr>TCP</abbr>
|[[TCP]]
|-
|-
|8 (1000, 0x8)
|8 (1000, 0x8)
|<abbr>EGP</abbr>
|[[EGP]]
|-
|-
|9 (1001, 0x9)
|9 (1001, 0x9)
|<abbr>IGP</abbr> (Cisco <abbr>IGRP</abbr>)
|[[IGP]]  (Cisco [[IGRP]] )
|-
|-
|17 (0001 0001, 0x11)
|17 (0001 0001, 0x11)
|<abbr>UDP</abbr>
|[[UDP]]
|-
|-
|41 (0010 1001, 0x29)
|41 (0010 1001, 0x29)
Zeile 236: Zeile 295:
|-
|-
|45 (0010 1101, 0x2D)
|45 (0010 1101, 0x2D)
|<abbr>IDRP</abbr>
|[[IDRP]]
|-
|-
|46 (0010 1110, 0x2E)
|46 (0010 1110, 0x2E)
|<abbr>RSVP</abbr>
|[[RSVP]]
|-
|-
|47 (0010 1111, 0x2F)
|47 (0010 1111, 0x2F)
|<abbr>GRE</abbr>
|[[GRE]]
|-
|-
|50 (0011 0010, 0x32)
|50 (0011 0010, 0x32)
Zeile 260: Zeile 319:
|-
|-
|88 (0101 1000, 0x58)
|88 (0101 1000, 0x58)
|<abbr>EIGRP</abbr>v4 und EIGRPv6
|[[EIGRP]] v4 und EIGRPv6
|-
|-
|89 (0101 1001, 0x59)
|89 (0101 1001, 0x59)
|<abbr>OSPF</abbr>
|[[OSPF]]
|-
|-
|108 (0110 1100, 0x6C)
|108 (0110 1100, 0x6C)
Zeile 269: Zeile 328:
|-
|-
|115 (0111 0011, 0x73)
|115 (0111 0011, 0x73)
|<abbr>L2TP</abbr>
|[[L2TP]]
|-
|-
|132 (1000 0100, 0x84)
|132 (1000 0100, 0x84)
|<abbr>SCTP</abbr>
|[[SCTP]]
|-
|-
|135 (1000 0111, 0x87)
|135 (1000 0111, 0x87)
Zeile 292: Zeile 351:
==== Dokumentation ====
==== Dokumentation ====
==== Links ====
==== Links ====
===== Projekt =====
===== Weblinks =====
===== Weblinks =====
= TMP =
==  Header-Format ==
==== Feste Länge  ====
Bei IPv6 eine feste Länge von 40&nbsp;Byte (320&nbsp;Bit)* Im Gegensatz zu IPv4 hat der IP-Kopfdatenbereich (Header)
==== Extension Headers  ====
Optionale, seltener benutzte Informationen werden in so genannten Erweiterungs-Kopfdaten (engl.: Extension Headers) eingebettet * zwischen dem IPv6-Kopfdatenbereich und der eigentlichen Nutzlast (engl. Payload)
===  Header-Felder ===
[[Image:Form5.png]]
==== Kopfdatenbereich eines IPv6-Paketes laut RFC 2460: ====
{| class="wikitable sortable options"
|-
|-
! Feld !! Länge !! Inhalt
|-
|  | Version
|  | 4&nbsp;Bit
|  | IP-Versionsnummer (6)
|-
|  | Traffic&nbsp;Class
|  | 8&nbsp;Bit
|  | Für Quality of Service (QoS) verwendeter Wert. Eine Art Prioritätsvergabe.
|-
|  | Flow&nbsp;Label
|  | 20&nbsp;Bit
|  | Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
|-
|  | Payload&nbsp;Length
|  | 16&nbsp;Bit
|  | Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
|-
|  | Next&nbsp;Header
|  | 8&nbsp;Bit
|  | Identifiziert den Typ des nächsten Kopfdatenbereiches, dieser kann entweder einen Erweiterungs-Kopfdatenbereich (siehe nächste Tabelle) oder ein Protokoll höherer Schicht (engl.: Upper Layer Protocol) bezeichnen, wie z.&nbsp;B. TCP (Typ 6) oder UDP (Typ 17).
|-
|  | Hop&nbsp;Limit
|  | 8&nbsp;Bit
|  | Maximale Anzahl an Zwischenschritten über Router, die ein Paket zurücklegen darf; wird beim Durchlaufen eines Routers („Hops“) um eins verringert. Pakete mit null als Hop Limit werden verworfen. Es entspricht dem Feld Time to Live (TTL) bei IPv4.
|-
|  | Source&nbsp;Address
|  | 128&nbsp;Bit
|  | Adresse des Senders
|-
|  | Destination&nbsp;Address
|  | 128&nbsp;Bit
|  | Adresse des Empfängers
|-
|}
===  Extension Headers ===
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 Tabelle. Wie im Next Header Feld verwiesen sind einige Extension Headers und ein Platzhalter definiert:
{| class="wikitable sortable options"
|-
|-
|  | '''Name'''
|  | '''Typ'''
|  | '''Größe'''
|  | '''Beschreibung'''
|  | '''RFCs'''
|-
|  | Hop-By-Hop Options
|  | 0
|  | variabel
|  | Optionen* von allen IPv6-Geräten zu beachten
** wird z.B. für Jumbograms benutzt
|  | RFC 2460
RFC 2675
|-
|  | Routing
|  | 43
|  | variabel
|  | Hier kann der Weg des Paketes durch das Netzwerk beeinflusst werden* wird u.a. für Mobile IPv6 verwendet
|  | RFC 2460
RFC 6275
RFC 5095
|-
|  | Fragment
|  | 44
|  | 64&nbsp;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
|  | Optionen* nur vom Zielrechner zu beachten
|  | RFC 2460
|-
|  | Mobility
|  | 135
|  | variabel
|  | Daten für Mobile IPv6
|  | RFC 6275
|-
|  | No Next Header
|  | 59
|  | leer
|  | Platzhalter* zeigt Ende eines Header-Stapels an
|  | RFC 2460
|-
|}
==== 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&nbsp;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


[[Kategorie:IPv6/Header]]
[[Kategorie:IPv6/Header]]


</noinclude>
</noinclude>

Aktuelle Version vom 29. Juni 2024, 12:13 Uhr

IPv6/Header

Beschreibung

Definiert im RFC 2460

Feste Größe
  • 40 Bytes
  • davon je 16 Bytes für Absender- und Empfängeradresse

Header-Format

Feste Länge

Bei IPv6 eine feste Länge von 40 Byte (320 Bit)

  • Im Gegensatz zu IPv4 hat der IP-Kopfdatenbereich (Header)

Extension Headers

Optionale, seltener benutzte Informationen werden in so genannten Erweiterungs-Kopfdaten (engl.: Extension Headers) eingebettet * zwischen dem IPv6-Kopfdatenbereich und der eigentlichen Nutzlast (engl. Payload)


Header-Felder

Kopfdatenbereich nach RFC 2460
Feld Länge Inhalt
Version 4 Bit IP-Versionsnummer (6)
Traffic Class 8 Bit Für Quality of Service (QoS) verwendeter Wert. Eine Art Prioritätsvergabe.
Flow Label 20 Bit Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
Payload Length 16 Bit Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
Next Header 8 Bit Identifiziert den Typ des nächsten Kopfdatenbereiches, dieser kann entweder einen Erweiterungs-Kopfdatenbereich (siehe nächste Tabelle) oder ein Protokoll höherer Schicht (engl.: Upper Layer Protocol) bezeichnen, wie z. B. TCP (Typ 6) oder UDP (Typ 17).
Hop Limit 8 Bit Maximale Anzahl an Zwischenschritten über Router, die ein Paket zurücklegen darf; wird beim Durchlaufen eines Routers („Hops“) um eins verringert. Pakete mit null als Hop Limit werden verworfen. Es entspricht dem Feld Time to Live (TTL) bei IPv4.
Source Address 128 Bit Adresse des Senders
Destination Address 128 Bit Adresse des Empfängers


Extension Headers

IPv6/Header/Extension

Vereinfachung des Headers

Enthält nur grundlegende Forwarding-Information
  • Zusätzliche Informationen in variablen zusätzlichen Erweiterungs-Headern, welche durch das „Next Header“ Feld identifiziert werden
  • Trotz vierfacher IPv6-Adresslänge (16 Byte) nur doppelte Headerlänge

IPv6 (Felder)

Byte/Bin 00–03 04–07 08–11 12–15 16-19 20–23 24–27 28–31
01 Version Traffic Class Flow Label H
e
a
d
e
r
02 Payload Length Next Header Hop Limit
03 - 06 Quell-IP-Adresse
07 - 10 Ziel-IP-Adresse
11+ Payload

IPv4 Header Felder

Option Beschreibung
Version always 4
TOS (type of service) precedence (3 bits) and “minimize delay”, “maximize throughput”, “maximize reliability”, “minimize cost” bits
Identifier identifier, different for each packet
TTL time to live field; initialized to 64; decremented at each router; drop if TTL = 0
Protocol next header proto (TCP 6, UDP 17)
Header checksum add together 16-bit words using one’s complement: software optimized

Entfallene Felder

Option Beschreibung
HL weil der IPv6Header eine feste Länge hat
Protocol wurde herausgenommen, weil das Feld Next-Header angibt welches Protokoll auf der Transportschicht verwendet wird.
Alle Felder in Bezug auf Fragmentierung wurden weggelassen, weil IPv6 Fragmentierung anders handhabt
  • IPv6-Router fragmentieren keine Pakete, sondern schicken der Quelle eine Nachricht kleinere Pakete zu schicken.
Checksum entfernt, weil die Berechnung der Prüfsumme bei jedem Hop sich negativ auf die Performance auswirkt
  • auf den Schichten über und unter der Vermittlungsschicht werden bereits Prüfsummen berechnet.
Padding

Header-Format

Feste Länge
  • Bei IPv6 eine feste Länge von 40 Byte (320 Bit)
  • Im Gegensatz zu IPv4
Extension Headers
  • Optionale, seltener benutzte Informationen werden in Erweiterungs-Kopfdaten (engl.: Extension Headers) eingebettet
  • zwischen IPv6-Kopfdatenbereich und der eigentlichen Nutzlast (Payload)

Kopfdaten

Kopfdaten laut RFC 2460
Feld Länge Inhalt
Version 4 Bit IP-Versionsnummer (6)
Traffic Class 8 Bit Für Quality of Service (QoS) verwendeter Wert. Eine Art Prioritätsvergabe.
Flow Label 20 Bit Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
Payload Length 16 Bit Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
Next Header 8 Bit Identifiziert den Typ des nächsten Kopfdatenbereiches, dieser kann entweder einen Erweiterungs-Kopfdatenbereich (siehe nächste Tabelle) oder ein Protokoll höherer Schicht (engl.: Upper Layer Protocol) bezeichnen, wie z. B. TCP (Typ 6) oder UDP (Typ 17).
Hop Limit 8 Bit Maximale Anzahl an Zwischenschritten über Router, die ein Paket zurücklegen darf; wird beim Durchlaufen eines Routers („Hops“) um eins verringert. Pakete mit null als Hop Limit werden verworfen. Es entspricht dem Feld Time to Live (TTL) bei IPv4.
Source Address 128 Bit Adresse des Senders
Destination Address 128 Bit Adresse des Empfängers

IPv6 Header in einem Trace File

IPv4 und IPv6 Header im Vergleich


IPv6-Erweiterungsheader

IPv6/Header/Erweiterungsheader

Maximum Transmission Unit (MTU)

Maximum Transmission Unit


Der IPv6 Header

Die Felder im IPv6 Header

Feldname Länge Inhalt des Feldes
Die Felder im IPv6 Header
Version 4 bits 6 (0110, 0x6)
Traffic Class 1 Byte Priorisierung (s. RFC 2474)
Flow Label 20 bits für gleichartige Pakete -> effizientes Routing
Payload Length 2 Bytes Länge der Daten nach dem IPv6 Header
Next Header 1 Byte Protokoll Nummer oder Extension-Header
Hop Limit 1 Byte Anzahl der Routerhops
Quelladresse 16 Bytes
Zieladresse 16 Bytes endgültiger Empfänger bzw. Adresse des nächsten Hops (z.B. wenn ein Routing Header vorhanden ist)
Summe der Bytes 40
Die aktuelle Liste aller Protokoll- und Headerwerte findet man bei der IANA.
Wert Beschreibung
Next Header Werte
0 (0, 0x0) in IPv4 reserviert und nicht benutzt

in IPv6 Hop-by-Hop Option Header

1 (0001, 0x1) ICMP IPv4
2 (0010, 0x2) IGMP IPv4
4 (0100, 0x4) IP in IP encapsulation
6 (0110, 0x6) TCP
8 (1000, 0x8) EGP
9 (1001, 0x9) IGP (Cisco IGRP )
17 (0001 0001, 0x11) UDP
41 (0010 1001, 0x29) IPv6
43 (0010 1011, 0x2B) Routing Header
44 (0010 1100, 0x2C) Fragmentation Header
45 (0010 1101, 0x2D) IDRP
46 (0010 1110, 0x2E) RSVP
47 (0010 1111, 0x2F) GRE
50 (0011 0010, 0x32) Encryted Security Payload Header
51 (0011 0011, 0x33) Authentication Header
58 (0011 1010, 0x3A) ICMPv6
59 (0011 1011, 0x3B) No Next Header für IPv6
60 (0011 1100, 0x3C) Destination Options Header
88 (0101 1000, 0x58) EIGRP v4 und EIGRPv6
89 (0101 1001, 0x59) OSPF
108 (0110 1100, 0x6C) IP Payload Compression Protocol
115 (0111 0011, 0x73) L2TP
132 (1000 0100, 0x84) SCTP
135 (1000 0111, 0x87) Mobility Header (Draft)
136-252 nicht zugewiesen
253-254 für Experimente und Testzwecke
255 (1111 1111, 0xFF) Reserviert

Anhang

Siehe auch

Dokumentation

Links

Weblinks