IPv6/Header/Extension: Unterschied zwischen den Versionen

Aus Foxwiki
 
(228 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''topic''' - Kurzbeschreibung
'''IPv6 Extension Header''' - Zusätzliche Header, die Infos für die Netzwerkschicht (IP-Layer) beinhalten


== Beschreibung ==
== Beschreibung ==
; IPv6-Erweiterungsheader
[[File:ipv6headerReihenfolge.png|mini|400px]]
Einige der gestrichenen Felder sind manchmal doch noch notwendig
; IPv6-Header durch Extension-Header erweiterbar
* für diese Fälle sind derzeit 6 Erweiterungsheader definiert,
* Werden bei Bedarf eingefügt
* die benutzt werden um zusätzliche Informationen zu kodieren.
* Zusätzliche Funktionen
* Alle Erweiterungsheader sind optional.
* Zukünftige Erweiterungen
* Werden mehrere benutzt müssen sie direkt nach dem Hauptheader erscheinen.


; Optionen für Teilstrecken
; Folgen direkt auf den IPv6-Header
* Dieser Header wird für Informationen benutzt die alle Router auf der Strecke prüfen müssen.
* Außerhalb des IP-Headers
* Bisher ist eine Option definiert, die Unterstützung von Jumbogrammen, also Paketen die größer als 64 kByte sind.
* Vielfaches von 64 Bit
* Routing
** Speicherzugriffe im Router beschleunigen
** 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
; Die meisten IPv6-Pakete ohne Extension Header
* Dieser Header ist für Optionen vorgesehen, die nur vom Zielhost interpretiert werden müssen.
* Nur IPv6-Header, TCP-Header und Daten
* Er wird derzeit nicht benutzt.


[[File:img-016-008.png|700px]]
== Typen ==
; Typen von Erweiterungsheadern
{| class="wikitable options big"
|-
! Typ !! Beschreibung
|-
| [[#Hop-to-Hop|Hop-to-Hop]] || Per Hop ausgewertete Header
* Hop-by-Hop Options (z. B.  Jumbogramm Notifier)
* Routing Information Header
* Routing Extension Header
|-
| [[#End-to-End|End-to-End]] || Nur im Endsystem ausgewertete Header
* Fragmentation Header
* Authetication Header
|}


[[File:img-017-009.png|800px]]
=== Extension Header ===
==== Basis Extension Header ====
Extension Header, die immer implementiert sein müssen


{| class="wikitable options big"
|-
! Option !! RFC
|-
| Hop-by-Hop Options Header || [https://www.rfc-editor.org/rfc/2460 2460]
|-
| Routing Header || [https://www.rfc-editor.org/rfc/2460 2460]
|-
| Fragment Header || [https://www.rfc-editor.org/rfc/2460 2460]
|-
| Destination Options Header || [https://www.rfc-editor.org/rfc/2460 2460]
|-
| Authentication Header || [https://www.rfc-editor.org/rfc/4302 4302]
|-
| Encapsulating Security Payload Header || [https://www.rfc-editor.org/rfc/4303 4303]
|}


[[File:img-018-010.png|800px]]
==== Auftreten ====
 
* Extension Header dürfen höchstens einmal vorkommen
=== Die meisten IPv6-Pakete sollten ohne Extension Headers auskommen ===
* Destination Options Header dürfen höchstens zweimal vorkommen
* Extension Headers können bis auf den Destination Options Header nur einmal in jedem Paket vorkommen
* 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
* 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
* 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


{| class="wikitable options"  
; Wie im Next Header Feld verwiesen sind einige Extension Headers und ein Platzhalter definiert
|-  
 
{| class="wikitable options"
|-
! Name
! Name
! Typ
! Typ
Zeile 47: Zeile 69:
! Beschreibung
! Beschreibung
! RFCs
! RFCs
|-  
|-
|| Hop-By-Hop Options
|| Hop-By-Hop Options
|| 0
|| 0
|| variabel
|| variabel
|| Optionenvon allen IPv6-Geräten zu beachtenwird z.B. für Jumbograms benutzt
|| Optionenvon allen IPv6-Geräten zu beachtenwird z. B. für Jumbograms benutzt
|| RFC 2460RFC 2675
|| RFC 2460RFC 2675
|-  
|-
|| Routing
|| Routing
|| 43
|| 43
|| variabel
|| variabel
|| Hier kann der Weg des Paketes durch das Netzwerk beeinflusst werdenwird u.a. für Mobile IPv6 verwendet
|| Hier kann der Weg des Paketes durch das Netzwerk beeinflusst werdenwird u. a. für Mobile IPv6 verwendet
|| RFC 2460RFC 6275RFC 5095
|| RFC 2460RFC 6275RFC 5095
|-  
|-
|| Fragment
|| Fragment
|| 44
|| 44
Zeile 65: Zeile 87:
|| Parameter zur Fragmentierung
|| Parameter zur Fragmentierung
|| RFC 2460
|| RFC 2460
|-  
|-
|| Authentication Header (AH)
|| Authentication Header (AH)
|| 51
|| 51
Zeile 71: Zeile 93:
|| Daten zur Vertraulichkeit (IPsec)
|| Daten zur Vertraulichkeit (IPsec)
|| RFC 4302
|| RFC 4302
|-  
|-
|| Encapsulating Security Payload (ESP)
|| Encapsulating Security Payload (ESP)
|| 50
|| 50
Zeile 77: Zeile 99:
|| Daten zur Verschlüsselung (IPsec)
|| Daten zur Verschlüsselung (IPsec)
|| RFC 4303
|| RFC 4303
|-  
|-
|| Destination Options
|| Destination Options
|| 60
|| 60
Zeile 83: Zeile 105:
|| Optionennur vom Zielrechner zu beachten
|| Optionennur vom Zielrechner zu beachten
|| RFC 2460
|| RFC 2460
|-  
|-
|| Mobility
|| Mobility
|| 135
|| 135
Zeile 89: Zeile 111:
|| Daten für Mobile IPv6
|| Daten für Mobile IPv6
|| RFC 6275
|| RFC 6275
|-  
|-
|| No Next Header
|| No Next Header
|| 59
|| 59
Zeile 98: Zeile 120:
|}
|}


=== Verwendung von Extension Headers ===
==== Reihenfolge  ====
[[File:img-021-011.png|600px]]
[[File:ipv6headerReihenfolge.png|mini|500px]]
{| class="wikitable options"
|-
!  !! Header !! Type
|-
| 1 || [[IPv6 Header]] || Hop-to-Hop
|-
| 2 || [[Hop-by-Hop Options Header]] || Hop-to-Hop
|-
| 3 || [[Routing Header]] || Hop-to-Hop
|-
| 4 || [[Fragment Header]] || Hop-to-Hop
|-
| 5 || [[Authentication Header]] || End-to-End
|-
| 6 || [[Encapsulating Security Payload Header]] || End-to-End
|-
| 7 || [[Destination Options Header]] || End-to-End
|-
| 8 || [[Upper-Layer Header]] || End-to-End
|}
 
=== Hop-to-Hop ===
; Optionen für Teilstrecken
* Informationen, die alle Router auf der Strecke prüfen
 
; Bisher ist eine Option definiert
* Unterstützung von Jumbogrammen (Paketen größer 64 kByte)


=== Reihenfolge der Extension Header ===
; Routing
# IPv6 Header
* Mit diesem Header kann eine Route vollständig oder teilweise spezifiziert werden
# Hop-by-Hop Options Header (für Optionen, welche von Routern auf dem Pfad zum endgültigen Empfänger verarbeitet werden müssen)
 
# Routing Header
=== End-to-End ===
# Fragment Header
; Optionen für Ziele
# Authentication Header
Optionen, die nur vom Zielhost interpretiert werden
# Encapsulating Security Payload Header
 
# Destination Options Header (für Optionen, welche vom endgültigen Empfänger des Paketes verarbeitet werden müssen)
; Authentifikation
# Upper-Layer Header
* 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
 
== Verwendung ==
=== Verkettung ===
; Next-Header-Feld
Extension Headers enthalten ein Next-Header-Feld
* Nummer des nächsten Extension Header  
* oder des Upper Layer Protocol
 
; Standard Header
{| class="wikitable"
|-
| style="background-color:#dfffcb;"| '''IPv6 Header''' <br> <small>Next Header: TCP (06)<small>
| style="background-color:#d6c4ff;"| '''TCP (06)''' <br> <small>Header and data</small>
|}


=== Extension Headers ===
; Routing Header
; Next-Header
{| class="wikitable"
* Alle Extension Headers enthalten ein Next-Header-Feld, in dem
|-
* der nächste Extension Header oder
| style="background-color:#dfffcb;"| '''IPv6 Header''' <br> <small>Next Header: TCP (43)<small>
* das Upper Layer Protocol genannt wird
| style="background-color:#ffbfc0;"| '''Routing Header (43)''' <br> <small>Next Header: TCP (06)<small>
* Größen immer Vielfache von 64 Bit
| style="background-color:#d6c4ff;"| '''TCP (06)''' <br> <small>Header and data<small>
* Speicherzugriffe im Router beschleunigen
|}
* die meisten Felder der Kopfdatenbereiche sind auf 64-Bit-Grenzen ausgerichtet


; Keine Prüfsummen
; Typen
* Es werden keine Prüfsummen über die IP-Kopfdaten berechnet
{| class="wikitable"
* im Gegensatz zu IPv4
|-
* Fehlerkorrektur auf Schichten 2 und 4
| style="background-color:#dfffcb;"| [[IPv6 Header]]
| style="background-color:#ffbfc0;"| [[#Hop-to-Hop|Hop-to-Hop]]
| style="background-color:#fff1b0;"| [[#End-to-End|End-to-End]]
| style="background-color:#d6c4ff;"| [[Upper Layer]]
|}


=== Format des Hop-by-Hop Options Headers ===
{| class="wikitable"
[[File:img-024-012.png|700px]]
|-
| style="background-color:#dfffcb;"| '''IPv6 Header''' <br> <small>Next Header: TCP (43)
| style="background-color:#ffbfc0;"| '''Routing Header (43)''' <br> <small>Next Header: Fragment (44)<small>
| style="background-color:#fff1b0;"| '''Fragment Header (44)''' <br> <small>Next Header: TCP (06)<small>
| style="background-color:#d6c4ff;"| '''TCP (06)''' <br> <small>Header and data<small>
|}


=== Format des Routing Headers ===
{| class="wikitable"
[[File:img-025-013.png|700px]]
|-
| style="background-color:#dfffcb;"| '''IPv6 Header''' <br> <small>Next Header: TCP (43)
| style="background-color:#ffbfc0;"| '''Routing Header (43)''' <br> <small>Next Header: Fragment (44)<small>
| style="background-color:#fff1b0;"| '''Fragment Header (44)''' <br> <small>Next Header: TCP (06)<small>
| style="background-color:#fff1b0;"| '''Fragment Header (44)''' <br> <small>Next Header: TCP (06)<small>
| style="background-color:#d6c4ff;"| '''TCP (06)''' <br> <small>Header and data<small>
|}


<noinclude>
<noinclude>
== Anhang ==
== Anhang ==
=== Siehe auch ===
=== Siehe auch ===
{{Special:PrefixIndex/{{BASEPAGENAME}}}}
{{Special:PrefixIndex/IPv6/Header}}
 
==== RFC ====
{| class="wikitable big options"
|-
! RFC !! Titel
|-
| [https://www.rfc-editor.org/rfc/0000 0000] ||
|}
 
==== Links ====
==== Links ====
===== Weblinks =====
===== Weblinks =====

Aktuelle Version vom 11. Januar 2024, 00:42 Uhr

IPv6 Extension Header - Zusätzliche Header, die Infos für die Netzwerkschicht (IP-Layer) beinhalten

Beschreibung

IPv6-Header durch Extension-Header erweiterbar
  • Werden bei Bedarf eingefügt
  • Zusätzliche Funktionen
  • Zukünftige Erweiterungen
Folgen direkt auf den IPv6-Header
  • Außerhalb des IP-Headers
  • Vielfaches von 64 Bit
    • Speicherzugriffe im Router beschleunigen
Die meisten IPv6-Pakete ohne Extension Header
  • Nur IPv6-Header, TCP-Header und Daten

Typen

Typen von Erweiterungsheadern
Typ Beschreibung
Hop-to-Hop Per Hop ausgewertete Header
  • Hop-by-Hop Options (z. B.  Jumbogramm Notifier)
  • Routing Information Header
  • Routing Extension Header
End-to-End Nur im Endsystem ausgewertete Header
  • Fragmentation Header
  • Authetication Header

Extension Header

Basis Extension Header

Extension Header, die immer implementiert sein müssen

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

Auftreten

  • Extension Header dürfen höchstens einmal vorkommen
  • Destination Options Header dürfen höchstens zweimal vorkommen
  • 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

Reihenfolge

Header Type
1 IPv6 Header Hop-to-Hop
2 Hop-by-Hop Options Header Hop-to-Hop
3 Routing Header Hop-to-Hop
4 Fragment Header Hop-to-Hop
5 Authentication Header End-to-End
6 Encapsulating Security Payload Header End-to-End
7 Destination Options Header End-to-End
8 Upper-Layer Header End-to-End

Hop-to-Hop

Optionen für Teilstrecken
  • Informationen, die alle Router auf der Strecke prüfen
Bisher ist eine Option definiert
  • Unterstützung von Jumbogrammen (Paketen größer 64 kByte)
Routing
  • Mit diesem Header kann eine Route vollständig oder teilweise spezifiziert werden

End-to-End

Optionen für Ziele

Optionen, die nur vom Zielhost interpretiert werden

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

Verwendung

Verkettung

Next-Header-Feld

Extension Headers enthalten ein Next-Header-Feld

  • Nummer des nächsten Extension Header
  • oder des Upper Layer Protocol
Standard Header
IPv6 Header
Next Header: TCP (06)
TCP (06)
Header and data
Routing Header
IPv6 Header
Next Header: TCP (43)
Routing Header (43)
Next Header: TCP (06)
TCP (06)
Header and data
Typen
IPv6 Header Hop-to-Hop End-to-End Upper Layer
IPv6 Header
Next Header: TCP (43)
Routing Header (43)
Next Header: Fragment (44)
Fragment Header (44)
Next Header: TCP (06)
TCP (06)
Header and data
IPv6 Header
Next Header: TCP (43)
Routing Header (43)
Next Header: Fragment (44)
Fragment Header (44)
Next Header: TCP (06)
Fragment Header (44)
Next Header: TCP (06)
TCP (06)
Header and data


Anhang

Siehe auch

RFC

RFC Titel
0000

Links

Weblinks