Internet Control Message Protocol

Internet Control Message Protocol
ICMP (Internet Control Message Protocol)
Familie: Internetprotokollfamilie
Einsatzgebiet:

Obligatorischer Zusatz
zum Internet Protocol,
Fehlermeldungen, Diagnose

ICMP im TCP/IP‑Protokollstapel
Internet ICMP
IPv4
Netzzugang Ethernet Token
Bus
Token
Ring
FDDI
Standards: RFC 792 (1981)

Das Internet Control Message Protocol (ICMP) dient in Rechnernetzwerken dem Austausch von Informations- und Fehlermeldungen über das Internet-Protokoll in der Version 4 (IPv4). Für IPv6 existiert ein ähnliches Protokoll mit dem Namen ICMPv6.

ICMP ist Bestandteil von IPv4, wird aber wie ein eigenständiges Protokoll behandelt. Es wird von jedem Router und jedem Rechner erwartet, das ICM-Protocol „sprechen“ zu können. Die meisten ICMP-Pakete enthalten Diagnose-Informationen, sie werden vom Router zur Quelle zurückgeschickt, wenn der Router Pakete verwirft, etwa weil das Ziel nicht erreichbar ist, die TTL abgelaufen ist usw. Es gilt der Grundsatz, dass ein ICMP-Paket niemals ein anderes ICMP-Paket auslöst, insbesondere wird die Tatsache, dass ein ICMP-Paket nicht zugestellt werden konnte, nicht durch ein weiteres signalisiert. Eine Ausnahme zu diesem Grundsatz bildet die Echo-Funktion. Echo-ICMP-Pakete werden zum Beispiel durch das Programm Ping versendet.

ICMP-Nachrichten werden beim Versand im Datenteil von IPv4-Datagrammen eingekapselt. Dabei sind im IPv4-Header der Servicetyp 0 und die Protokollnummer 1. ICMPv6 trägt dagegen die Protokollnummer 58.

Inhaltsverzeichnis

Die ICMP-Pakettypen

  • 0 = Echo Reply
  • 1-2 = Reserved
  • 3 = Destination Unreachable
  • 4 = Source Quench
  • 5 = Redirect
  • 8 = Echo Request
  • 9 = Router Advertisement
  • 10 = Router Solicitation
  • 11 = Time Exceeded
  • 12 = Parameter Problem
  • 13 = Timestamp (erleichtert die Zeitsynchronisation)
  • 14 = Timestamp Reply
  • 15 = Information Request
  • 16 = Information Reply
  • 17 = Address Mask Request
  • 18 = Address Mask Reply
  • 19 = Reserved (for Security)
  • 20–29 = Reserved (for Robustness Experiment)
  • 30 = Traceroute
  • 31 = Datagram Conversion Error
  • 32 = Mobile Host Redirect
  • 33 = Ursprünglich IPv6 Where-Are-You (ersetzt durch ICMPv6)
  • 34 = Ursprünglich IPv6 I-Am-Here (ersetzt durch ICMPv6)
  • 35 = Mobile Registration Request
  • 36 = Mobile Registration Reply
  • 37 = Domain Name Request
  • 38 = Domain Name Reply
  • 39 = SKIP
  • 40 = Photuris
  • 41 = ICMP messages utilized by experimental mobility protocols such as Seamoby
  • 42–255 = Reserved

Port Unreachable

Gängige Konvention ist das Absetzen eines „Port Unreachable“ als Antwort auf einen Verbindungsversuch zu einem nicht von einem Dienst geöffneten UDP-Port. Die Antwort „Port Unreachable“ besteht aus einem Paket vom Typ 3 (Destination Unreachable), das den Code 3 enthält (siehe Aufbau).

Ungeöffnete TCP-Ports antworten nicht per ICMP sondern mit einem TCP-Reset-Paket.

Time-To-Live

Um die Route eines Pakets zu einem bestimmten Ziel-Host festzustellen, versendet das Analyseprogramm Traceroute manipulierte Datagramme mit verringerter Time-To-Live (TTL) und wartet auf ICMP-Meldungen „Time to live exceeded in transit“ und „Destination unreachable“ als Antworten. Abhängig von der Implementation von Traceroute können das ICMP (z. B. unter Windows) oder UDP (z. B. unter Linux) sein.

Aufbau

Der Aufbau einer ICMP-Nachricht lässt sich wie folgt darstellen:

0 4 8 12 16 20 24 28 31
Typ Code Prüfsumme
Daten (optional)

Das Feld „Typ“ gibt dabei die Klasse der ICMP-Nachricht an, das Feld „Code“ spezifiziert die Art der Nachricht genauer. Einige der häufiger vorkommenden Typ-Code-Kombinationen sind:

Typ Typname Code Bedeutung
0 Echo-Antwort 0 Echo-Antwort
3 Ziel nicht erreichbar 0 Netzwerk nicht erreichbar
1 Host (Zielstation) nicht erreichbar
2 Protokoll nicht erreichbar
3 Port nicht erreichbar
4 Fragmentierung nötig, Don't Fragment aber gesetzt
5 Route nicht möglich (die Richtung in IP-Header-Feld Option falsch angegeben)
13 Communication administratively prohibited (Paket wird von der Firewall des Empfängers geblockt)
4 Entlasten der Quelle 0 Datagramm verworfen, da Warteschlange voll
8 Echo-Anfrage 0 Echo-Anfrage (besser bekannt als „Ping“)
11 Zeitlimit überschritten 0 TTL (Time To Live, Lebensdauer) abgelaufen
1 Zeitlimit während der Defragmentierung überschritten
30 Traceroute Traceroute

Ein zusätzliches Feld „Daten“ trägt bei vielen ICMP-Nachrichten im ersten 32-Bit-Wort genauere Informationen zur Zuordnung der ICMP-Nachricht. Oft werden ab dem zweiten Datenwort auch IP-Header des auslösenden Datagramms sowie die ersten 64 Bit des Pakets übermittelt. Das „Daten“-Feld kann jedoch auch dazu missbraucht werden, um Nutzdaten zu übertragen (ICMP-Tunneling). Die notwendige Fehlerbehandlung beziehungsweise Fehlerkorrektur und ähnliches muss dann jedoch auf der Anwendungsebene implementiert werden.

Siehe auch

Weblinks

  • RFC 792 – Internet Control Message Protocol
  • RFC 1122 – Requirements for Internet Hosts – Communication Layers (u. a. ICMP-Erweiterungen)
  • IANA ICMP Parameters – vollständige Liste der ICMP-Typen und Codes

Wikimedia Foundation.

Игры ⚽ Поможем сделать НИР

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Internet control message protocol — Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • …   Wikipédia en Français

  • Internet Control Message Protocol — (ICMP) Familia: Familia de protocolos de Internet Función: Control y notificación de errores del Protocolo de Internet Ubicación en la pila de protocolos Transporte ICMP …   Wikipedia Español

  • Internet Control Message Protocol — Internet Control Message Protocol,   ICMP …   Universal-Lexikon

  • Internet Control Message Protocol V6 — ICMPv6 (Internet Control Message Protocol Version 6) Familie: Internetprotokollfamilie Einsatzgebiet: Obligatorischer Zusatz zu IPv6, Fehlermeldungen, Diagnose, Autoconfiguration, Routing Internet Protokolle im TCP/IP Protokollstapel Internet… …   Deutsch Wikipedia

  • Internet Control Message Protocol — The Internet Control Message Protocol (ICMP) is one of the core protocols of the Internet Protocol Suite. It is chiefly used by networked computers operating systems to send error messages mdash;indicating, for instance, that a requested service… …   Wikipedia

  • Internet Control Message Protocol — Pile de protocoles 7.  Application 6.  Présentation 5.  Session 4.  Tr …   Wikipédia en Français

  • Internet Control Message Protocol V6 — L’ICMP pour IPv6 (Internet Control Message Protocol Version 6) fait partie à part entière de l architecture IPv6 et doit être complètement supportée par toutes les implémentations d IPv6. ICMPv6 combine des fonctions antérieurement subdivisées à… …   Wikipédia en Français

  • Internet Control Message Protocol — protocol used to send control messages and error messages during the transmission of IP type data packets, ICMP …   English contemporary dictionary

  • Internet Control Message Protocol —    Abbreviated ICMP. An error reporting protocol that works with Internet Protocol (IP) and provides the functions used for networklayer management and control. Routers send ICMP messages to respond to undeliverable datagrams by placing an ICMP… …   Dictionary of networking

  • Internet Control Message Protocol — El Protocolo de Control de Mensajes de Internet (ICMP por sus siglas en inglés) es uno de los protocolos centrales de la suite de protocolos de Internet. Es usado principalmente por los Sistemas operativos de las computadoras en una red para… …   Enciclopedia Universal

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”