Internet Control Message Protocol - LinkFang.de





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, dass diese ICMP „verstehen“. Die meisten ICMP-Pakete enthalten Diagnose-Informationen: Sie werden vom Router zur Quelle zurückgeschickt, wenn der Router Pakete verwirft, etwa weil beispielsweise das Ziel nicht erreichbar ist oder die TTL abgelaufen ist. Es gelten folgende Grundsätze:

  • ICMP benutzt IP als Kommunikationsbasis, indem es sich selbst als Protokoll einer höheren Schicht interpretiert, d. h. ICMP-Nachrichten werden in IP-Paketen gekapselt.
  • ICMP erkennt einige Fehlerzustände, macht aber IP zu keinem zuverlässigen Protokoll.
  • ICMP analysiert Fehler in jedem IP-Paket, mit Ausnahme solcher, die eine ICMP-Nachricht tragen.
  • ICMP-Nachrichten werden nicht als Antwort auf Pakete an Zieladressen versendet, bei denen es sich um Multicast- oder Broadcast-Adressen handelt.
  • ICMP-Nachrichten antworten nur einer eindeutigen Quell-IP-Adresse.

Die ICMP-Pakettypen

Der Typ des ICMP-Pakets steht als 8-Bit-Zahl am Anfang des ICMP-Headers. Die Zahlen haben dabei folgende Bedeutungen:

  • 0 = Echo Reply
  • 1-2 = Reserved
  • 3 = Destination Unreachable
  • 4 = Source Quench
  • 5 = Redirect
  • 6-7 = Reserved
  • 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

Time-To-Live

Um die Route eines Pakets zu einem bestimmten Ziel-Host festzustellen, versendet das Analyseprogramm Traceroute speziell präparierte 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 Implementierung von Traceroute können das ICMP (z. B. unter Windows) oder UDP (z. B. unter Linux) sein.

Aufbau

ICMP sendet und empfängt eine Vielzahl von Nachrichten. Im IP-Header wird die ICMP-Nachricht durch die Protokollnummer 1 angezeigt. ICMPv6 trägt dagegen die Protokollnummer 58. Das ICMP-Nachrichtenformat besteht aus nur wenigen Feldern:

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

Das Typfeld spezifiziert die Nachricht. Das Codefeld interpretiert die Nachrichtenart genauer. Die Daten enthalten typischerweise einen Teil der ursprünglichen IP-Nachricht. 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

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.

Sicherheitsrelevante Aspekte

Das Internet Control Message Protocol kann für einen Denial-of-Service- (DoS) oder Distributed-Denial-of-Service-Angriff (DDoS) auf ein Gerät verwendet werden. Außerdem kann ein Gerät von einem Angreifer als Teil eines DDoS-Angriffs für einen Angriff auf ein drittes Gerät missbraucht werden. Typische Angriffsmethoden sind der Smurf-Angriff, das Flooding oder der Ping of Death.

Weblinks


Kategorien: Netzwerkprotokoll (Vermittlungsschicht) | TCP/IP

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Internet Control Message Protocol (Vollständige Liste der Autoren des Textes [Versionsgeschichte])    Lizenz: CC-by-sa-3.0

Änderungen: Alle Bilder mit den meisten Bildunterschriften wurden entfernt. Ebenso alle zu nicht-existierenden Artikeln/Kategorien gehenden internen Wikipedia-Links (Bsp. Portal-Links, Redlinks, Bearbeiten-Links). Entfernung von Navigationsframes, Geo & Normdaten, Mediadateien, gesprochene Versionen, z.T. ID&Class-Namen, Style von Div-Containern, Metadaten, Vorlagen, wie lesenwerte Artikel. Ansonsten sind keine Inhaltsänderungen vorgenommen worden. Weiterhin kann es durch die maschinelle Bearbeitung des Inhalts zu Fehlern gerade in der Darstellung kommen. Darum würden wir jeden Besucher unserer Seite darum bitten uns diese Fehler über den Support mittels einer Nachricht mit Link zu melden. Vielen Dank!

Stand der Informationen: August 201& - Wichtiger Hinweis: Da die Inhalte maschinell von Wikipedia übernommen wurden, ist eine manuelle Überprüfung nicht möglich. Somit garantiert LinkFang.de nicht die Richtigkeit und Aktualität der übernommenen Inhalte. Sollten die Informationen mittlerweile fehlerhaft sein, bitten wir Sie darum uns per Support oder E-Mail zu kontaktieren. Wir werden uns dann innerhalb von spätestens 10 Tagen um Ihr Anliegen kümmern. Auch ohne Anliegen erfolgt mindestens alle drei Monate ein Update der gesamten Inhalte.