Überblick in Bezug auf ICMPv4 sowie ICMPv6
In diesem Thema erfahren Sie mehr über die verschiedenen Arten von Internet Control Message Protokollen (ICMPs) und die Werkzeuge, die zu deren Versand verwendet werden.
Obwohl IP nur ein Best-Effort-Protokoll ist, sorgt die TCP/IP-Suite für Fehlermeldungen und Informationsmeldungen bei der Kommunikation mit einem anderen IP-Gerät. Diese Nachrichten werden über die Dienste von ICMP gesendet. Der Zweck dieser Nachrichten besteht darin, unter bestimmten Bedingungen Rückmeldungen zu Fragen im Zusammenhang mit der Verarbeitung von IP-Paketen zu geben, und nicht darin, IP zuverlässig zu machen. ICMP-Meldungen sind nicht erforderlich und werden aus Sicherheitsgründen innerhalb eines Netzwerks oft nicht erlaubt.
ICMP ist sowohl für IPv4 als auch für IPv6 verfügbar, ergo istICMPv4 ist das Nachrichtenprotokoll für IPv4 und ICMPv6 bietet die gleichen Dienste für IPv6, enthält jedoch zusätzliche Funktionen. In diesem Artikel wird der Begriff ICMP verwendet, wenn er sich sowohl auf ICMPv4 als auch auf ICMPv6 bezieht.
Die Arten von ICMP-Nachrichten und die Gründe, warum sie gesendet werden, sind umfangreich. Zu den ICMP-Nachrichten, die sowohl ICMPv4 als auch ICMPv6 gemeinsam haben und in diesem Aritekel diskutiert werden, gehören:
- Erreichbarkeit des Hosts
- Zielort oder Dienst unerreichbar
- Zeitüberschreitung
Erreichbarkeit des Hosts:
Eine ICMP-Echo-Meldung kann verwendet werden, um die Erreichbarkeit eines Hosts in einem IP-Netzwerk zu testen. Der lokale Host sendet einen ICMP-Echo-Request an einen Host. Wenn der Host verfügbar ist, antwortet der Zielhost mit einer Echo-Antwort.
Ziel oder Dienst unerreichbar
Wenn ein Host oder Gateway ein Paket empfängt, das er nicht zustellen kann, kann er eine ICMP-Meldung "Ziel unerreichbar" verwenden, um die Quelle zu benachrichtigen, dass das Ziel oder der Dienst unerreichbar ist. Die Meldung enthält einen Code, der angibt, warum das Paket nicht zugestellt werden konnte.
Einige der Destination Unreachable-Codes für ICMPv4 lauten wie folgt:
0 - Netz nicht erreichbar
1 - Host unerreichbar
2 - Protokoll unerreichbar
3 - Port unerreichbar
Einige der Destination Unreachable-Codes für ICMPv6 lauten wie folgt:
0 - Keine Route zum Ziel
1 - Kommunikation mit dem Zielort ist administrativ verboten (z.B. Firewall)
2 - Über den Rahmen der Quelladresse hinaus
3 - Adresse unerreichbar
4 - Port unerreichbar
ICMPv6 hat ähnliche, aber leicht unterschiedliche Codes für "Destination Unreachable" Meldungen.
Zeitüberschreitung
Eine ICMPv4 Time Exceeded-Meldung wird von einem Router verwendet, um anzuzeigen, dass ein Paket nicht weitergeleitet werden kann, weil das Time to Live (TTL)-Feld des Pakets auf 0 dekrementiert wurde. Wenn ein Router ein Paket empfängt und das TTL-Feld im IPv4-Paket auf Null dekrementiert, verwirft er das Paket und sendet eine Time Exceeded-Meldung an den Quell-Host.
ICMPv6 sendet auch eine Time Exceeded-Meldung, wenn der Router ein IPv6-Paket nicht weiterleiten kann, weil das Paket abgelaufen ist. Anstelle des IPv4-TTL-Feldes verwendet ICMPv6 das IPv6-Hop-Limit-Feld, um festzustellen, ob das Paket abgelaufen ist.
- Nachrichten mit Zeitüberschreitung werden vom Traceroute-Tool verwendet.
ICMPv6-Meldungen
ICMPv6 enthält vier neue Protokolle als Teil des Neighbor Discovery Protocol (ND oder NDP).
Die Nachrichten zwischen einem IPv6-Router und einem IPv6-Gerät, einschließlich der dynamischen Adresszuweisung, sind wie folgt:
- Router Solicitation (RS) Nachricht
- Router Advertisement (RA) Nachricht
Der Nachrichtenaustausch zwischen IPv6-Geräten, einschließlich der Erkennung von Adressduplikaten und der Adressauflösung, läuft wie folgt ab:
- Neighbor Solicitation (NS) Nachricht
- Neighbor Advertisement (NA) Nachricht
ICMPv6 ND enthält auch die Umleitungsnachricht, die eine ähnliche Funktion wie die in ICMPv4 verwendete Redirect-Nachricht hat.
RA-Nachricht
RA-Nachrichten werden von IPv6-fähigen Routern alle 200 Sekunden gesendet, um IPv6-fähigen Hosts Adressierungsinformationen zur Verfügung zu stellen. Die RA-Nachricht kann Adressierungsinformationen für den Host enthalten, wie Präfix, Präfixlänge, DNS-Adresse und Domänenname. Ein Host, der Stateless Address Autoconfiguration (SLAAC) verwendet, setzt sein Standardgateway auf die link-lokale Adresse des Routers, der die RA gesendet hat.
RS-Nachricht:
Ein IPv6-fähiger Router sendet als Antwort auf eine RS-Meldung ebenfalls eine RA-Meldung aus.
NS-Nachricht
Wenn einem Gerät eine globale IPv6-Unicast- oder link-lokale Unicast-Adresse zugewiesen wird, kann es eine Duplikat-Adressenerkennung (DAD) durchführen, um sicherzustellen, dass die IPv6-Adresse eindeutig ist. Um die Eindeutigkeit einer Adresse zu überprüfen, sendet das Gerät eine NS-Nachricht mit seiner eigenen IPv6-Adresse als Ziel-IPv6-Adresse.
Wenn ein anderes Gerät im Netzwerk über diese Adresse verfügt, antwortet es mit einer NA-Nachricht. Diese NA-Meldung teilt dem sendenden Gerät mit, dass die Adresse verwendet wird, wenn eine entsprechende NA-Meldung nicht innerhalb einer bestimmten Zeitspanne zurückgegeben wird, ist die Unicast-Adresse eindeutig und für die Verwendung akzeptabel.
DAD ist nicht erforderlich, aber RFC 4861 empfiehlt, dass DAD bei Unicast-Adressen durchgeführt wird.
Ein PC sendet eine NS-Nachbarschaftsanforderungsnachricht an seine eigene, neu konfigurierte IPv6-Adresse, um sicherzustellen, dass es im Netzwerk keinen anderen Host mit derselben IPv6-Adresse gibt, dies ist ein DAD, Erkennung doppelter Adressen.
NA-Nachricht
Die Adressauflösung wird verwendet, wenn ein Gerät im LAN die IPv6-Unicast-Adresse eines Ziels kennt, aber nicht dessen Ethernet-MAC-Adresse. Um die MAC-Adresse für das Ziel zu ermitteln, sendet das Gerät eine NS-Nachricht an die angeforderte Knotenadresse. Die Nachricht enthält die bekannte (Ziel-)IPv6-Adresse. Das Gerät, das über die Ziel-IPv6-Adresse verfügt, antwortet mit einer NA-Nachricht, die seine Ethernet-MAC-Adresse enthält.