Zum Inhalt springen

IPv6/ICMPv6: Unterschied zwischen den Versionen

Aus Foxwiki
Die 5 zuletzt angesehenen Seiten:  /home » PCI » Sichere Systeme » udev » IPv6/ICMPv6
Keine Bearbeitungszusammenfassung
 
(78 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''ICMPv6''' - [[Internet Control Message Protocol]] für [[IPv6]]
'''IPv6/ICMPv6''' - ICMPv6 ([[Internet Control Message Protocol]] in [[IPv6-Netzwerk]]en


== Beschreibung ==
== Beschreibung ==
{| class="wikitable float"
<div class="float">
|-
{{:IPv6/ICMPv6/Diagramm}}
! style="background:#C0C0FF;" colspan="2"| ICMPv6 (Internet Control Message Protocol Version 6)
</div>
|-
| align="left" | '''Familie'''
| align="left" | [[Internetprotokolle]]
|-
| align="left" | '''Einsatzgebiet'''
| align="left" style="width:210px;"| Fehlermeldungen, Diagnose, Autoconfiguration, Routing
|-
| align="center" colspan="2" |
{| border="0" cellspacing="3"
|+ '''Internet-Protokolle im [[TCP/IP-Referenzmodell|TCP/IP-Protokollstapel]]'''
|-
| rowspan="2" align="center" bgcolor="#FFCC99" | '''Internet'''
| colspan="5" align="center" bgcolor="#9999FF" | '''ICMPv6'''
|-
| colspan="5" align="center" bgcolor="#EEEEFF" | [[IPv6]]
|-
| rowspan="2" align="center" bgcolor="#FFEEBB" | ''Netzzugang''
| rowspan="2" align="center" bgcolor="#EEEEEE" | [[Ethernet]]
| rowspan="2" align="center" bgcolor="#EEEEEE" | [[Token Bus|Token<br />Bus]]
| rowspan="2" align="center" bgcolor="#EEEEEE" | [[IEEE 802.11|IEEE<br />802.11a/b/g/n]]
| rowspan="2" align="center" bgcolor="#EEEEEE" | [[Fiber Distributed Data Interface|FDDI]]
| rowspan="2" align="center" bgcolor="#EEEEEE" | …
|}
|}
 
Das '''Internet Control Message Protocol for the Internet Protocol Version 6''' ('''ICMPv6''') ist die mit [[IPv6]] zusammen verwendete Version des [[Internet Control Message Protocol]]
* Es dient, wie schon bei [[IPv4]], in [[Rechnernetz|Netzwerken]] zum Austausch von Fehler- und Informationsmeldungen
* Zusätzlich findet es aber noch im [[Neighbor Discovery Protocol]], dem Ersatz des [[Address Resolution Protocol]], Verwendung


; ICMPv6 zwingend notwendig
; Fehlererkennung und -meldung
Im Gegensatz zum ICMP bei IPv4 ist ICMPv6 zwingend für den Betrieb von IPv6 nötig
Fehleranalyse
* Ein generelles Blockieren von ICMPv6 auf der Firewall führt dazu, dass IPv6 nicht funktioniert (vgl.&nbsp;RFC 4890)
* Echo-Request und Echo-Reply für Ping-Operationen


ICMPv6 dient als Hilfsprotokoll für IPv6, ist in derselben OSI-Schicht 3 wie dieses angesiedelt und nutzt das IPv6-Protokoll zum Versand von ICMP-Nachrichten
; Hilfsprotokoll für IPv6
* Als [[Protokoll (IP)|Protokoll-Nummer]] wird dabei 58 ins Next-Header-Feld des IPv6-Headers eingefügt
OSI-Schicht 3
* nutzt das IPv6-Protokoll zum Versand von ICMP-Nachrichten
* [[Protokoll (IP)|Protokoll-Nummer]] ''58'' im [[Next-Header]]-Feld des [[IPv6-Header]]s


== Header ==
; Austausch von Fehler- und Informationsmeldungen in [[IPv6]]-[[Rechnernetz|Netzwerken]]
{| class="wikitable float small" cellpadding="2"
[[Neighbor Discovery Protocol]]
|+ ICMPv6 Header
* Nachfolger des [[Address Resolution Protocol]] mit [[IPv4]]
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"|
| colspan="32" | ICMPv6-Nachricht …
|}


Das Feld ''Type'' gibt die Klasse der ICMP-Nachricht an
; Aufgaben
* welche mit dem Feld ''Code'' genauer spezifiziert werden kann
* [[Adressauflösung]]
Die Prüfsumme wird zur Verifizierung der Gültigkeit des ICMPv6-Pakets benutzt
* [[Reichweiten-Ermittlung]]


Der restliche Inhalt der ICMP-Nachricht wird durch den jeweiligen Typ bestimmt
; Bedeutung von ICMPv6
* Bei Fehlernachrichten wird nach den möglichen zusätzlichen Feldern immer noch so viel wie möglich vom fehlerverursachenden Paket angehängt
ICMPv6 oft erforderlich
 
* Im Gegensatz zum ICMP bei IPv4 ist ICMPv6 zwingend für den Betrieb von IPv6 erforderlich
=== Prüfsumme ===
* Ein generelles Blockieren von ICMPv6 auf der Firewall führt dazu, dass IPv6 nicht funktioniert (vgl.&nbsp;RFC 4890)
{| class="wikitable small float" cellpadding="2"
|+ Prüfsummen-Schema
|-
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="32" rowspan="4" | IPv6-Absender-Adresse
|-
! class="hintergrundfarbe6" colspan="1"| 32
|-
! class="hintergrundfarbe6" colspan="1"| 64
|-
! class="hintergrundfarbe6" colspan="1"| 96
|-
! class="hintergrundfarbe6" colspan="1"| 128
| colspan="32" rowspan="4" | IPv6-Ziel-Adresse
|-
! class="hintergrundfarbe6" colspan="1"| 160
|-
! class="hintergrundfarbe6" colspan="1"| 192
|-
! class="hintergrundfarbe6" colspan="1"| 224
|-
! class="hintergrundfarbe6" colspan="1"| 256
| colspan="32" | IPv6-Nutzlast-Größe
|-
! class="hintergrundfarbe6" colspan="1"| 288
| colspan="24" | Checksumme 0
| colspan="8" | Next Header 58
|}
 
Die Prüfsumme (engl. ''checksum'') eines ICMPv6-Pakets ist ein 16-Bit-[[Einerkomplement]] der Summe des Einerkomplements der gesamten ICMPv6-Nachricht
* Zusätzlich zur Nachricht wird noch ein IPv6-Pseudoheader vorne angehängt
* Zur Berechnung der Prüfsumme wird das Prüfsummenfeld auf 0 gesetzt
* Der zur Berechnung der Prüfsumme verwendete Pseudoheader sieht wie im Schema nebenan aus
 
Dies ist eine der Neuerungen von ICMPv6 gegenüber [[Internet Control Message Protocol|ICMP]], wo die Prüfsumme nur über den ICMP-Header berechnet wurde


== Verarbeitung ==
== Verarbeitung ==
; Regeln für die Verarbeitung von ICMPv6-Nachrichten
; Regeln für die Verarbeitung von ICMPv6-Nachrichten
* Unbekannte ICMPv6-Fehlernachrichten müssen an die darüberliegende Netzwerkschicht weitergereicht werden
{| class="wikitable options big"
* Unbekannte ICMPv6-Informationsnachrichten müssen ohne Benachrichtigung des Absenders verworfen werden
* Jeder Fehlernachricht wird am Ende so viel wie möglich des fehlerverursachenden Pakets angehängt
* Die Protokollnummer zum Weiterreichen von unbekannten Fehlernachrichten wird aus dem angehängten Originalpaket entnommen
 
; Auf folgende Pakete werden keine Fehlernachrichten versandt:
* Fehlernachrichten
* Pakete an Multicast-, Link-Level-Multicast- oder Link-Level-Broadcast-Adressen mit folgenden Ausnahmen:
** Packet-Too-Big-Nachrichten
** Parameter-Problem-Nachrichten mit Code 2 – unbekannte IPv6-Option
* Das Netz darf nicht mit ICMPv6-Fehlernachrichten geflutet werden
 
== Nachrichten-Typen ==
; Gruppen
{| class="wikitable sortable options big"
|-
|-
! Option !! Beschreibung
! Nachricht !! Beschreibung
|-
|-
| Die ersten 128 Typen (0–127) || mit dem [[Bitwertigkeit|höchstwertigen Bit]] (engl. ''most significant bit'') auf 0, sind Fehlernachrichten
| Unbekannte ICMPv6-Fehlernachrichten || müssen an die darüberliegende Netzwerkschicht weitergereicht werden
|-
|-
| Die zweiten 128 Typen (128–255) || mit dem höchstwertigen Bit auf 1, sind Informationsnachrichten
| Unbekannte ICMPv6-Informationsnachrichten || müssen ohne Benachrichtigung des Absenders verworfen werden
|}
 
== Fehlernachrichten ==
{| class="wikitable big options col1center"
! class="hintergrundfarbe6"| Type
! class="hintergrundfarbe6"| Beschreibung
! class="hintergrundfarbe6"| RFC
|-
|-
|1 || [[#Destination Unreachable|Destination Unreachable]] ||[https://www.rfc-editor.org/rfc/4443 RFC 4443]
| Fehlerverursachendes Paket || Jeder Fehlernachricht wird am Ende so viel wie möglich des fehlerverursachenden Pakets angehängt
|-
|-
|2 || [[#Packet Too Big|Packet Too Big]] ||[https://www.rfc-editor.org/rfc/4443 RFC 4443]
| Protokollnummer || Die Protokollnummer zum Weiterreichen von unbekannten Fehlernachrichten wird aus dem angehängten Originalpaket entnommen
|-
|3 || [[#Time Exceeded|Time Exceeded]] ||[https://www.rfc-editor.org/rfc/4443 RFC 4443]
|-
|4 || [[#Parameter Problem|Parameter Problem]] ||[https://www.rfc-editor.org/rfc/4443 RFC 4443]
|}
|}


==== Destination Unreachable ====
; Keine Antworten auf
Netz darf nicht mit ICMPv6-Fehlernachrichten geflutet werden


{| class="wikitable float small"
Auf folgende Pakete werden keine Fehlernachrichten versandt
|+ Destination-Unreachable-Schema
* Fehlernachrichten
|- align="center"
* Pakete an Multicast-, Link-Level-Multicast- oder Link-Level-Broadcast-Adressen mit folgenden
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 32
| colspan="32" | Unbenutzt
|- align="center"
! class="hintergrundfarbe6" colspan="1"| …
| colspan="32" | Fehlerhaftes Paket
|}
; Destination Unreachable - Type 1
''Destination-Unreachable''-Nachrichten sollten vom Router erzeugt werden, wenn ein Paket nicht ausgeliefert werden konnte
* Wenn das Paket wegen Überlastung fallen gelassen wurde, muss keine ''Destination Unreachable'' versandt werden
 
Wenn das Paket wegen fehlender Routen nicht ausgeliefert wurde, wird der Code 0 gesetzt
* Ist das Ausliefern administrativ verboten ([[Firewall]]), wird der Code 1 gesetzt
* Wenn der Router die IPv6-Adresse nicht auflösen kann, oder ein Problem mit dem Link hat, wird der Code 3 gesetzt
* Wenn ein Zielhost für ein UDP-Paket keinen Listener hat, sollte er ein ''Destination Unreachable'' mit Code 4 versenden
 
Wenn ein ''Destination Unreachable'' empfangen wird, muss es der darüberliegenden Schicht weitergereicht werden
 
==== Packet Too Big ====
{| class="wikitable float small"
|+ Packet-Too-Big-Schema
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 32
| colspan="32" | MTU
|- align="center"
! class="hintergrundfarbe6" colspan="1"| …
| colspan="32" | Fehlerhaftes Paket
|}
 
; Packet Too Big - Type 2
Eine ''Packet-Too-Big''-Nachricht muss vom Router erzeugt werden, wenn ein Paket nicht weitergeleitet werden kann, weil es größer ist als die maximale [[Maximum Transmission Unit|MTU]] des Links, über den es versendet werden soll. ''Packet-Too-Big''-Nachrichten werden vom [https://de.wikipedia.org/wiki/Path_MTU_Discovery Path MTU Discovery] gebraucht, um die pfadabhängige MTU zu ermitteln
 
Der Code sollte vom Sender auf 0 gesetzt und vom Empfänger ignoriert werden
 
Wenn ein ''Packet Too Big'' empfangen wird, muss es dem darüberliegenden Layer weitergereicht werden
 
==== Time Exceeded ====
{| class="wikitable float small"
|+ Time-Exceeded-Schema
|- align="center"
! class="hintergrundfarbe6" colspan="1"|0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"|32
| colspan="32" | Unbenutzt
|- align="center"
! class="hintergrundfarbe6" colspan="1"| …
| colspan="32" | Fehlerhaftes Paket
|}
 
; Time Exceeded - Type 3
Wenn ein Router ein Paket mit einem [[Hop (Netzwerktechnologie)|Hop]]-Limit von 0 erhält, oder den [[Time to Live|Time-to-Live]]-Wert auf 0 reduziert, muss er das Paket verwerfen und ein ''Time Exceeded'' mit Code 0 an den Absender versenden
* Das zeigt entweder eine Endlosschleife im Routing an oder ein zu kleines anfängliches Hop-Limit
 
Wenn von einer fragmentierten Nachricht nicht alle Fragmente innerhalb einer gewissen Zeit ankommen, wird das Paket verworfen und es muss ein ''Time Exceeded'' mit Code 1 versendet werden
 
==== Parameter Problem ====
{| class="wikitable float small"
|+ Parameter-Problem-Schema
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 32
| colspan="32" | Pointer
|- align="center"
! class="hintergrundfarbe6" colspan="1"| …
| colspan="32" | Fehlerhaftes Paket
|}
 
; Parameter Problem - Type 4
Wenn ein Host beim Verarbeiten eines IPv6-Pakets ein Problem in einem Feld feststellt und nicht mit der Verarbeitung weiterfahren kann, muss er das Paket verwerfen und eine ''Parameter-Problem''-Nachricht verschicken
 
Mit dem Code wird dabei die Art des Problems genauer beschrieben


{| class="wikitable big options col1center"
Ausnahmen
| 0
* Packet-Too-Big-Nachrichten
| Fehlerhaftes Header-Feld gefunden
* Parameter-Problem-Nachrichten mit Code 2 - unbekannte IPv6-Option
|-
| 1
| Unbekannter Next-Header-Typ gefunden
|-
| 2
| Unbekannte IPv6-Option
|-
| 3
| Unvollständiger IPv6 Header Chain im ersten IPv6 Fragment
|}
 
Der Pointer zeigt dabei auf die Stelle im Paket, an der das Problem aufgetreten ist
 
== Informationsnachrichten ==
{| class="wikitable big options"
! class="hintergrundfarbe6"| Type
! class="hintergrundfarbe6"| Beschreibung
! class="hintergrundfarbe6"| RFC
|-
|128 || [[#Echo Request|Echo Request]] || [https://www.rfc-editor.org/rfc/4443 RFC 4443]
|-
|129 || [[#|Echo Reply|Echo Reply]] ||[https://www.rfc-editor.org/rfc/4443|RFC 4443]
|-
|130 || [[#Multicast Listener Query|Multicast Listener Query]] ||RFC 2710 und RFC 3810
|-
|131 || Version 1 Multicast Listener Report |RFC 2710
|-
|132 || Multicast Listener Done ||RFC 2710
|-
|133 || Router Solicitation || RFC 4861
|-
|134 || Router Advertisement || RFC 4861
|-
|135 || |Neighbor Solicitation ||RFC 4861
|-
|136 || Neighbor Advertisement ||RFC 4861
|-
|137 || Redirect || RFC 4861
|-
|138
|Router Renumbering
|RFC 2894
|-
|139
|ICMP Node Information Query
|RFC 4620
|-
|140
|ICMP Node Information Response
|RFC 4620
|-
|141
|Inverse Neighbor Discovery Solicitation Message
|RFC 3122
|-
|142
|Inverse Neighbor Discovery Advertisement Message
|RFC 3122
|-
|143
|Version 2 Multicast Listener Report
|RFC 3810
|-
|144
|Home Agent Address Discovery Request Message
|RFC 3775
|-
|145
|Home Agent Address Discovery Reply Message
|RFC 3775
|-
|146
|Mobile Prefix Solicitation
|RFC 3775
|-
|147
|Mobile Prefix Advertisement
|RFC 3775
|-
|148
|Certification Path Solicitation Message
|RFC 3971
|-
|149
|Certification Path Advertisement Message
|RFC 3971
|-
|150
|ICMP messages utilized by experimental mobility protocols such as Seamoby
|RFC 4065
|-
|151
|Multicast Router Advertisement
|RFC 4286
|-
|152
|Multicast Router Solicitation
|RFC 4286
|-
|153
|Multicast Router Termination
|RFC 4286
|-
|155
|RPL Control Message
|[https://www.rfc-editor.org/rfc/rfc6550.html RFC 6550]
|-
|200
|Private experimentation
|
|-
|201
|Private experimentation
|
|-
|255
|Reserved for expansion of ICMPv6 informational messages
|
|}
 
==== Echo Request ====
{| class="wikitable float small"
|+ Echo-Request-Schema
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 32
| colspan="16" | Identifikation
| colspan="16" | Sequenznummer
|- align="center"
! class="hintergrundfarbe6" colspan="1"| …
| colspan="32" | Daten
|}
 
; Echo Request - Type 128
Mit einem ''Echo Request'' wird um eine Antwort gebeten
* Ein ''Echo Request'' ist nichts anderes als ein simpler [[Ping (Datenübertragung)|Ping]]
* Das Datenfeld kann mit Daten vergrößert werden, um größere Pakete zu produzieren
* So kann man zum Beispiel die [[Maximum Transmission Unit|MTU]] ermitteln
 
Jedes System muss gemäß RFC auf ''Echo Request''s reagieren und mit ''Echo Replies'' antworten
* Auch sollte jedes System eine Anwendung zum Versenden und Empfangen von ''Echo Request/Replies'' besitzen
* Hiervon wird in der Praxis jedoch oft abgewichen, so blockiert beispielsweise die Windows-Firewall standardmäßig ICMPv6-Echo-Request-Anfragen
 
Empfangene ''Echo Request'' können an Anwendungen weitergeleitet werden, die auf ICMP-Nachrichten horchen
 
==== Echo Reply ====
{| class="wikitable float small"
|+ Echo-Reply-Schema
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 0
| colspan="8" | Type
| colspan="8" | Code
| colspan="16" | Prüfsumme
|- align="center"
! class="hintergrundfarbe6" colspan="1"| 32
| colspan="16" | Identifikation
| colspan="16" | Sequenznummer
|- align="center"
! class="hintergrundfarbe6" colspan="1"| …
| colspan="32" | Daten
|}
 
; Echo Reply - Type 129
Auf eine ''Echo-Request''-Nachricht muss mit einem ''Echo Reply'' geantwortet werden
* Das Paket ist bis auf das Typenfeld dasselbe. ''Echo-Reply''-Nachrichten sollen nur an Unicast-Adressen verschickt werden
 
Anhand der Identifikation und der Sequenznummer wird der Empfänger die Antworten zu seinen Anfragen zuordnen können
 
Empfangene ''Echo-Reply''-Nachrichten müssen an die Anwendung weitergereicht werden, die den zugehörigen ''Echo Request'' versendet hat
* An die restlichen auf ICMP horchende Anwendungen kann es weitergereicht werden
 
==== Multicast Listener Discovery ====
; Multicast Listener Discovery - Type 130
MLD ist die Implementation von [[Internet Group Management Protocol|IGMP]] (IPv4) in IPv6
* Es wird also genutzt, um [[Multicast]]-Abonnements zu verwalten
* Dabei entspricht '''MLDv1 IGMPv2''' und '''MLDv2 IGMPv3'''
* Bei den jeweils neueren Versionen lässt sich bestimmen, welche Quell-Adressen für Multicast-Streams akzeptabel sind.), Windows seit 2006 (Vista), FreeBSD seit 2009 (8.0)


<noinclude>
<noinclude>


== Anhang ==
== Anhang ==
=== Siehe auch ===
{{Special:PrefixIndex/IPv6}}
==== RFC ====
==== RFC ====
{| class="wikitable sortable options big"
{| class="wikitable options big col1center"
|-
|-
! RFC !! Titel
! RFC !! Titel !! Jahr !! Status
|-
|-
| [https://www.rfc-editor.org/rfc/rfc3122 3122] || Extensions to IPv6 Neighbor Discovery for Inverse Discovery Specification
| [https://www.rfc-editor.org/info/rfc2460 2460] || Internet Protocol, Version 6 (IPv6) Specification || 1998 || Ersetzt durch: [[RFC/8200]]
|-
|-
| [https://www.rfc-editor.org/rfc/rfc4443 4443] || Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification
| [https://www.rfc-editor.org/info/rfc3122 3122] || Extensions to IPv6 Neighbor Discovery for Inverse Discovery Specification || ||
|-
|-
| [https://www.rfc-editor.org/rfc/rfc4604 4604] ||
| [https://www.rfc-editor.org/info/rfc4443 4443] || Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification || ||  
|-
|-
| [https://www.rfc-editor.org/rfc/rfc4861 4861] || Neighbor Discovery for IP Version 6 (IPv6)
| [https://www.rfc-editor.org/info/rfc4604 4604] || Using Internet Group Management Protocol Version 3 (IGMPv3) and Multicast Listener Discovery Protocol Version 2 (MLDv2) for Source-Specific Multicast || 2006 || Proposed Standard
|-
|-
|- [https://www.rfc-editor.org/rfc/rfc4890 4890] || Recommendations for Filtering ICMPv6 Messages in Firewalls
| [https://www.rfc-editor.org/info/rfc4861 4861] || Neighbor Discovery for IP Version 6 (IPv6) || ||
|-
|-
| [https://www.rfc-editor.org/rfc/rfc7112 7112] || Implications of Oversized IPv6 Header Chains
|- [https://www.rfc-editor.org/info/rfc4890 4890] || Recommendations for Filtering ICMPv6 Messages in Firewalls || ||
|-
|-
| [https://www.rfc-editor.org/rfc/rfc8200 8200] || Internet Protocol, Version 6 (IPv6) Specification, löst [https://www.rfc-editor.org/rfc/rfc2460 2460] ab
| [https://www.rfc-editor.org/info/rfc7112 7112] || Implications of Oversized IPv6 Header Chains || ||
|-
| [https://www.rfc-editor.org/info/rfc8200 8200] || Internet Protocol, Version 6 (IPv6) Specification || || löst [https://www.rfc-editor.org/info/rfc2460 2460] ab
|}
|}


# [https://www.iana.org/assignments/icmpv6-parameters IANA ICMP Parameters] || vollständige Liste der ICMPv6-Typen und -Codes
=== Siehe auch ===
{{Special:PrefixIndex/IPv6/ICMPv6}}


==== Links ====
=== Links ===
===== Weblinks =====
==== Weblinks ====
# https://de.wikipedia.org/wiki/ICMPv6
# https://de.wikipedia.org/wiki/ICMPv6
# [https://www.iana.org/assignments/icmpv6-parameters IANA ICMP Parameters] - Vollständige Liste der ICMPv6-Typen und -Codes


[[Kategorie:Abkürzung]]
[[Kategorie:IPv6/ICMPv6]]
[[Kategorie:IPv6/ICMP]]
</noinclude>
</noinclude>

Aktuelle Version vom 25. Juli 2025, 12:13 Uhr

IPv6/ICMPv6 - ICMPv6 (Internet Control Message Protocol in IPv6-Netzwerken

Beschreibung

ICMPv6 (Internet Control Message Protocol Version 6)
Familie Internetprotokolle
Einsatzgebiet Fehlermeldungen, Diagnose, Autoconfiguration, Routing
Internet-Protokolle im TCP/IP-Protokollstapel
Internet ICMPv6
IPv6
Netzzugang Ethernet Token
Bus
IEEE
802.11a/b/g/n
FDDI


Fehlererkennung und -meldung

Fehleranalyse

  • Echo-Request und Echo-Reply für Ping-Operationen
Hilfsprotokoll für IPv6

OSI-Schicht 3

Austausch von Fehler- und Informationsmeldungen in IPv6-Netzwerken

Neighbor Discovery Protocol

Aufgaben
Bedeutung von ICMPv6

ICMPv6 oft erforderlich

  • Im Gegensatz zum ICMP bei IPv4 ist ICMPv6 zwingend für den Betrieb von IPv6 erforderlich
  • Ein generelles Blockieren von ICMPv6 auf der Firewall führt dazu, dass IPv6 nicht funktioniert (vgl. RFC 4890)

Verarbeitung

Regeln für die Verarbeitung von ICMPv6-Nachrichten
Nachricht Beschreibung
Unbekannte ICMPv6-Fehlernachrichten müssen an die darüberliegende Netzwerkschicht weitergereicht werden
Unbekannte ICMPv6-Informationsnachrichten müssen ohne Benachrichtigung des Absenders verworfen werden
Fehlerverursachendes Paket Jeder Fehlernachricht wird am Ende so viel wie möglich des fehlerverursachenden Pakets angehängt
Protokollnummer Die Protokollnummer zum Weiterreichen von unbekannten Fehlernachrichten wird aus dem angehängten Originalpaket entnommen
Keine Antworten auf

Netz darf nicht mit ICMPv6-Fehlernachrichten geflutet werden

Auf folgende Pakete werden keine Fehlernachrichten versandt

  • Fehlernachrichten
  • Pakete an Multicast-, Link-Level-Multicast- oder Link-Level-Broadcast-Adressen mit folgenden

Ausnahmen

  • Packet-Too-Big-Nachrichten
  • Parameter-Problem-Nachrichten mit Code 2 - unbekannte IPv6-Option


Anhang

RFC

RFC Titel Jahr Status
2460 Internet Protocol, Version 6 (IPv6) Specification 1998 Ersetzt durch: RFC/8200
3122 Extensions to IPv6 Neighbor Discovery for Inverse Discovery Specification
4443 Internet Control Message Protocol (ICMPv6) for the Internet Protocol Version 6 (IPv6) Specification
4604 Using Internet Group Management Protocol Version 3 (IGMPv3) and Multicast Listener Discovery Protocol Version 2 (MLDv2) for Source-Specific Multicast 2006 Proposed Standard
4861 Neighbor Discovery for IP Version 6 (IPv6)
7112 Implications of Oversized IPv6 Header Chains
8200 Internet Protocol, Version 6 (IPv6) Specification löst 2460 ab

Siehe auch

Links

Weblinks

  1. https://de.wikipedia.org/wiki/ICMPv6
  2. IANA ICMP Parameters - Vollständige Liste der ICMPv6-Typen und -Codes