IPv6/Header: Unterschied zwischen den Versionen
Die Seite wurde neu angelegt: „Kategorie:IPv6“ |
K Textersetzung - „</abbr>“ durch „]] “ |
||
(198 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
[[Kategorie:IPv6]] | '''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 | |||
{| class="wikitable options big" | |||
|- | |||
|- | |||
! 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 == | |||
[[File:img-006-001.png]] | |||
; 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)=== | |||
{| | |||
! 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 === | |||
{| class="wikitable big options" | |||
|- | |||
! 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 === | |||
{| class="wikitable big options" | |||
|- | |||
! 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 | |||
{| class="wikitable big options" | |||
|- | |||
! 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 == | |||
[[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/Erweiterungsheader]] | |||
== Maximum Transmission Unit (MTU) == | |||
[[Maximum Transmission Unit]] | |||
<noinclude> | |||
== Der IPv6 Header == | |||
=== Die Felder im IPv6 Header === | |||
{| class="wikitable big" | |||
!Feldname | |||
!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 (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 === | |||
{{Special:PrefixIndex/{{BASEPAGENAME}}}} | |||
==== Dokumentation ==== | |||
==== Links ==== | |||
===== Weblinks ===== | |||
[[Kategorie:IPv6/Header]] | |||
</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
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
|
Checksum | entfernt, weil die Berechnung der Prüfsumme bei jedem Hop sich negativ auf die Performance auswirkt
|
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)
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