Zum Inhalt springen

IPv6/Header: Unterschied zwischen den Versionen

Aus Foxwiki
 
(144 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''IPv6/Header'''
'''IPv6/Header''' Aufbau des Protokollkopfes von [[IPv6]]


== Beschreibung ==
=== Beschreibung ===
Definiert im [[RFC]] 2460
; IPv6-Header hat eine feste Größe von 40 Byte (320 Bit)
; Feste Größe
* [[IPv4/Header]] hat eine variable Größe
* 40 Bytes
* davon je 16 Bytes  für Absender- und Empfängeradresse


== Header-Format ==
=== IPv6 Header ===
{{:IPv6/Header/Format}}
[[IPv6/Header/Format]]


==== Feste Länge  ====
=== Header-Felder ===
Bei IPv6 eine feste Länge von 40 Byte (320 Bit)
{| class="wikitable options big col2center"
* 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 (bit) !! Inhalt
|-
|-
! Feld !! Länge !! Inhalt
| | Version
| | 4
| | IP-Versionsnummer (6)
|-
|-
| | Version
| | Traffic Class
| | 4 Bit
| | 8
| | IP-Versionsnummer (6)
| | Quality of Service (QoS) Priorisierung ([[RFC/2474|RFC/2474]])
|-
|-
| | Traffic Class
| | Flow Label
| | 8 Bit
| | 20
| | Für Quality of Service (QoS) verwendeter Wert. Eine Art Prioritätsvergabe.
| | Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
|-
|-
| | Flow Label
| | Payload Length
| | 20 Bit
| | 16
| | Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
| | Länge der Daten nach dem IPv6 Header; Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
|-
|-
| | Payload Length
| | Next Header
| | 16 Bit
| | 8
| | Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
| | 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).
Protokoll Nummer oder Extension-Header
|-
|-
| | Next Header
| | Hop Limit
| | 8 Bit
| | 8
| | 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).
| | 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.
Anzahl der Routerhops
|-
|-
| | Hop Limit
| | Source Address
| | 8 Bit
| | 128
| | 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.
| | Adresse des Senders
|-
|-
| | Source Address
| | Destination Address
|  | 128 Bit
| | 128
|  | Adresse des Senders
| | Adresse des Empfängers
|-
| Destination Address
| | 128 Bit
| | Adresse des Empfängers
 
 
|-
|-
|Summe (bit)
|'''360'''
|}
|}


===  Extension Headers ===
=== Vereinfachung des Headers ===
[[IPv6/Header/Extension]]
 
== Vereinfachung des Headers ==
[[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]]
* Trotz vierfacher IPv6-Adresslänge (16 Byte) nur doppelte Headerlänge
* welche durch das "Next Header" Feld identifiziert werden


=== IPv6 (Felder)===
Trotz vierfacher IPv6-Adresslänge (16 Byte) nur doppelte Headerlänge
{|
! style="text-align:center !important; font-weight: normal;" "width="3%"| Byte/Bin
! width="12%"| 00–03
! width="12%"| 04–07
! width="17%"| 08–11
! width="15%"| 12–15
! width="12%"| 16-19
! width="12%"| 20–23
! width="12%"| 24–27
! width="12%"| 28–31
|-
| 01
| style="background-color:#d6c4ff;" colspan="1"| [[IPv6/Header#Version|Version]]
| style="background-color:#dfffcb;" colspan="2"| [[IPv6/Header#Traffic Class|Traffic Class]]
| style="background-color:#ffbfc0;" colspan="5"| [[IPv6/Header#Flow Label|Flow Label]]
! style="text-align:center !important; font-weight: normal;" "width="3%" rowspan="4"| H</br>e</br>a</br>d</br>e</br>r
|-
| 02
| style="background-color:#fff1b0;" colspan="4"| [[IPv6/Header#Payload Length|Payload Length]]
| style="background-color:#d6c4ff;" colspan="2"| [[IPv6/Header#Next Header|Next Header]]
| style="background-color:#fff1b0;" colspan="2"| [[IPv4/Header#Hop Limit|Hop Limit]]
|-
| 03 - 06
|style="background-color:#d1ffac;" colspan="8" | Quell-IP-Adresse
|-
| 07 - 10
|style="background-color:#ffbfc0;" colspan="8"| Ziel-IP-Adresse
|-
| 11+
| style="background-color:#d9e4ff;" colspan="8" | [[IPv6/Header#Payload|Payload]]
|}


=== IPv4 Header Felder ===
==== Header im Vergleich ====
{| class="wikitable big options"
[[File:img-013-007.png|800px]]
|-
! 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 ===
==== Entfallene Felder ====
{| class="wikitable big options"
{| class="wikitable options"
|-
|-
! Option !! Beschreibung
! Option !! Beschreibung
|-
|-
| HL || weil der IPv6Header eine feste Länge hat
| [[HL]] || IPv6Header eine feste Länge hat
|-
|-
| Protocol || wurde herausgenommen, weil das Feld Next-Header angibt welches Protokoll auf der Transportschicht verwendet wird.
| [[Protocol]] || Feld Next-Header angibt welches Protokoll auf der Transportschicht verwendet wird.
|-
|-
| Felder mit</br>Bezug auf Fragmentierung || wurden weggelassen, weil IPv6 Fragmentierung anders handhabt
| Felder zur</br>[[IP/Fragmentierung]] || IPv6 Fragmentierung wird anders handhabt, IPv6-Router fragmentieren keine Pakete, sondern schicken der Quelle eine Nachricht kleinere Pakete zu schicken.
* 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
| [[Checksum]] || 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
* auf den Schichten über und unter der Vermittlungsschicht werden bereits Prüfsummen berechnet.
|-
|-
| Padding ||
| [[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
{| class="wikitable big 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
|}
|}
== IPv6 Header in einem Trace File ==
[[File:img-011-005.png|800px]]
== IPv4 und IPv6 Header im Vergleich ==
[[File:img-012-006.png|800px]]
[[File:img-013-007.png|800px]]
== IPv6-Erweiterungsheader ==
[[IPv6/Header/Extension]]
== Maximum Transmission Unit (MTU) ==
[[Maximum Transmission Unit]]


<noinclude>
<noinclude>


== Der IPv6 Header ==
=== Next Header ===
=== Die Felder im IPv6 Header ===
Next Header Werte
{| class="wikitable big"
{| class="wikitable options col1right big"
!Feldname
! Werte !! Beschreibung
!Länge
!Inhalt des Feldes
|-
| colspan="3" |Die Felder im IPv6 Header
|-
|Version
|4 bits
|6 (0110, 0x6)
|-
|Traffic Class
|1 Byte
|Priorisierung (s. <nowiki>RFC 2474</nowiki>)
|-
|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.
{| class="wikitable big"
!Wert
!Beschreibung
|-
|-
| colspan="2" |Next Header Werte
| 0 ||in IPv4 reserviert und nicht benutzt, in IPv6 Hop-by-Hop Option Header
|-
|-
|0 (0, 0x0)
| 1 || |[[ICMP]] IPv4
|in IPv4 reserviert und nicht benutzt
in IPv6 Hop-by-Hop Option   Header
|-
|-
|1 (0001, 0x1)
| 2 || |[[IGMP]] IPv4
|[[ICMP]] IPv4
|-
|-
|2 (0010, 0x2)
| 4 || IP in IP encapsulation
|[[IGMP]] IPv4
|-
|-
|4 (0100, 0x4)
| 6 || |[[TCP]]
|IP in IP encapsulation
|-
|-
|6 (0110, 0x6)
| 8 || |[[EGP]]
|[[TCP]]  
|-
|-
|8 (1000, 0x8)
| 9 || |[[IGP]] (Cisco [[IGRP]])
|[[EGP]]  
|-
|-
|9 (1001, 0x9)
| 17 || |[[UDP]]
|[[IGP]]  (Cisco [[IGRP]] )
|-
|-
|17 (0001 0001, 0x11)
| 41 || IPv6
|[[UDP]]
|-
|-
|41 (0010 1001, 0x29)
| 43 || |Routing Header
|IPv6
|-
|-
|43 (0010 1011, 0x2B)
| 44 || |Fragmentation Header
|Routing Header
|-
|-
|44 (0010 1100, 0x2C)
| 45 || [[IDRP]]
|Fragmentation Header
|-
|-
|45 (0010 1101, 0x2D)
| 46 || |[[RSVP]]
|[[IDRP]]  
|-
|-
|46 (0010 1110, 0x2E)
| 47 || [[GRE]]
|[[RSVP]]  
|-
|-
|47 (0010 1111, 0x2F)
| 50 || |Encryted Security Payload Header
|[[GRE]]
|-
|-
|50 (0011 0010, 0x32)
| 51 || Authentication Header
|Encryted Security Payload Header
|-
|-
|51 (0011 0011, 0x33)
| 58 || ICMPv6
|Authentication Header
|-
|-
|58 (0011 1010, 0x3A)
| 59 || No Next Header für IPv6
|ICMPv6
|-
|-
|59 (0011 1011, 0x3B)
| 60 || |Destination Options Header
|No Next Header für IPv6
|-
|-
|60 (0011 1100, 0x3C)
| 88 || [[EIGRP]] v4 und EIGRPv6
|Destination Options Header
|-
|-
|88 (0101 1000, 0x58)
| 89 || [[OSPF]]
|[[EIGRP]] v4 und EIGRPv6
|-
|-
|89 (0101 1001, 0x59)
| 108 || IP Payload Compression Protocol
|[[OSPF]]
|-
|-
|108 (0110 1100, 0x6C)
| 115 || [[L2TP]]
|IP Payload Compression Protocol
|-
|-
|115 (0111 0011, 0x73)
| 132 || [[SCTP]]
|[[L2TP]]  
|-
|-
|132 (1000 0100, 0x84)
| 135 || Mobility Header (Draft)
|[[SCTP]]
|-
|-
|135 (1000 0111, 0x87)
| 136-252 || nicht zugewiesen
|Mobility Header (Draft)
|-
|-
|136-252
| 253-254 || für Experimente und Testzwecke
|nicht zugewiesen
|-
|-
|253-254
| 255 || Reserviert
|für Experimente und Testzwecke
|-
|255 (1111 1111, 0xFF)
|Reserviert
|}
|}
=== Trace Files ===
; IPv6 Header
[[File:img-011-005.png|800px]]
; IPv4 und IPv6 Header im Vergleich
[[File:img-012-006.png|800px]]


== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
* [[Maximum Transmission Unit]]
* [[IPv4/Header/Format]]
=== Dokumentation ===
=== Dokumentation ===
==== RFC ====
==== RFC ====
{| class="wikitable big options"
{| class="wikitable big options col3center"
|-
|-
! RFC !! Titel !! Date !! Status
! RFC !! Titel !! Date !! Status
|-
|-
| [https://www.rfc-editor.org/info/2460 2460] || Internet Protocol, Version 6 (IPv6) Specification || 1998 ||  
| [https://www.rfc-editor.org/info/2460 2460] || Internet Protocol, Version 6 (IPv6) Specification || 1998 || Obsoleted by [https://www.rfc-editor.org/info/rfc8200 RFC 8200]
|-
|-
| [https://www.rfc-editor.org/info/rfc8200 8200] || Internet Protocol, Version 6 (IPv6) Specification || 2017 ||
| [https://www.rfc-editor.org/info/rfc8200 8200] || Internet Protocol, Version 6 (IPv6) Specification || 2017 || Updated by [https://www.rfc-editor.org/info/rfc9673 RFC 9673]
|}
|}



Aktuelle Version vom 25. Mai 2025, 15:39 Uhr

IPv6/Header Aufbau des Protokollkopfes von IPv6

Beschreibung

IPv6-Header hat eine feste Größe von 40 Byte (320 Bit)

IPv6 Header

00-03 04-07 08-11 12-15 16-19 20-23 24-27 28-31
Version Traffic Class Flow Label H
e
a
d
e
r
Payload Length Next Header Hop Limit
Source-Address
Source-Address
Source-Address
Source-Address
Destination-Address
Destination-Address
Destination-Address
Destination-Address
Payload

IPv6/Header/Format

Header-Felder

Feld Länge (bit) Inhalt
Version 4 IP-Versionsnummer (6)
Traffic Class 8 Quality of Service (QoS) Priorisierung (RFC/2474)
Flow Label 20 Ebenfalls für QoS oder Echtzeitanwendungen verwendeter Wert. Pakete, die dasselbe Flow Label tragen, werden gleich behandelt.
Payload Length 16 Länge der Daten nach dem IPv6 Header; Länge des IPv6-Paketinhaltes (ohne Kopfdatenbereich, aber inklusive der Erweiterungs-Kopfdaten) in Byte
Next Header 8 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).

Protokoll Nummer oder Extension-Header

Hop Limit 8 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.

Anzahl der Routerhops

Source Address 128 Adresse des Senders
Destination Address 128 Adresse des Empfängers
Summe (bit) 360

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

Header im Vergleich

Entfallene Felder

Option Beschreibung
HL IPv6Header eine feste Länge hat
Protocol Feld Next-Header angibt welches Protokoll auf der Transportschicht verwendet wird.
Felder zur
IP/Fragmentierung
IPv6 Fragmentierung wird anders handhabt, IPv6-Router fragmentieren keine Pakete, sondern schicken der Quelle eine Nachricht kleinere Pakete zu schicken.
Checksum 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


Next Header

Next Header Werte

Werte Beschreibung
0 in IPv4 reserviert und nicht benutzt, in IPv6 Hop-by-Hop Option Header
1 ICMP IPv4
2 IGMP IPv4
4 IP in IP encapsulation
6 TCP
8 EGP
9 IGP (Cisco IGRP)
17 UDP
41 IPv6
43 Routing Header
44 Fragmentation Header
45 IDRP
46 RSVP
47 GRE
50 Encryted Security Payload Header
51 Authentication Header
58 ICMPv6
59 No Next Header für IPv6
60 Destination Options Header
88 EIGRP v4 und EIGRPv6
89 OSPF
108 IP Payload Compression Protocol
115 L2TP
132 SCTP
135 Mobility Header (Draft)
136-252 nicht zugewiesen
253-254 für Experimente und Testzwecke
255 Reserviert

Trace Files

IPv6 Header

IPv4 und IPv6 Header im Vergleich

Anhang

Siehe auch

Dokumentation

RFC

RFC Titel Date Status
2460 Internet Protocol, Version 6 (IPv6) Specification 1998 Obsoleted by RFC 8200
8200 Internet Protocol, Version 6 (IPv6) Specification 2017 Updated by RFC 9673

Links

Weblinks