Internet Control Message Protocol: Unterschied zwischen den Versionen
Erscheinungsbild
	
	
| (155 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
'''Internet Control Message Protocol''' (ICMP) - Statusinformationen einer [[IP]]-Verbindung austauschen  | |||
= Beschreibung =  | == Beschreibung ==  | ||
[[Internet-Protokoll]] ermöglicht die Kommunikation von Geräten über beliebige Pfade  | |||
* Treten dabei Fehler auf, kann ICMP den Absender informieren  | |||
*   | |||
; Beispiele  | |||
*   | * Gerät oder Dienst nicht erreichbar  | ||
*   | * Header-Daten wurden verfälscht  | ||
* Lebenszeit (TTL) eines Datagramms ist abgelaufen  | |||
* die Pufferkapazität des Empfängers ist erschöpft  | |||
; OSI-Schicht 3  | |||
Die Daten werden jedoch in IP-Paketen transportiert  | |||
*   | , wie dies bei TCP & UDP geschieht  | ||
, obwohl ICMP kein Transportprotokoll ist  | |||
* ICMP nutzt somit das IP-Protokoll,  | |||
als wäre es ein Protokoll einer höheren Schicht (im OSI-Modell), obwohl es eigentlich integraler Bestandteil des IP-Protokolls ist  | |||
== Fehlerermittlung ==  | |||
; Situationen, die eine ICMP-Fehlermeldung auslösen  | |||
{| class="wikitable options big gnu"  | |||
! Grund !! Fehler !! Auslöser  | |||
|-  | |||
| Ziel nicht erreichbar || Destination Unreachable || Dieser Fehler tritt auf, wenn der Zielrechner nicht mehr existiert, oder auf diesem kein passendes Protokoll gefunden werden kann. Tritt dieser Fall ein, wird der Absender entsprechend benachrichtigt  | |||
|-  | |||
| Zeit überschritten || Time Exceeded ||  | |||
|-  | |||
| Ungültige Parameter || Parameter Problem ||  | |||
|-  | |||
| Senderate reduzieren || Source Quench ||  | |||
|-  | |||
| Umleitung im Netzwerk || Redirect ||  | |||
|}  | |||
* Prüfung auf Erreichbarkeit eines Gerätes  | |||
*   | * Ermittlung des Pfades, den ein Datagramm durch das Netz beschreitet  | ||
*   | * Ermittlung der maximalen Größe des Datagramms auf diesem Pfad  | ||
=   | == Paketstruktur ==  | ||
==   | === Header ===  | ||
[[File:ICMPv4.png|mini|400px]]  | |||
Der ICMP-Header folgt direkt auf den IPv4-Header  | |||
* wird an der Protokollnummer erkannt  | |||
* Erweitert den IP-Header und ist als integraler Bestandteil des IP-Protokolls zu sehen  | * Erweitert den IP-Header und ist als integraler Bestandteil des IP-Protokolls zu sehen  | ||
*   | * Länge: 8 Byte + Datenabschnitt variabler Größe  | ||
: Format der ersten vier Bytes  | |||
* Mit dem ersten Byte wird der Typ der Nachricht kodiert  | * Mit dem ersten Byte wird der Typ der Nachricht kodiert  | ||
* Das zweite Byte enthält einen, vom jeweiligen Typ abhängigen Code  | * Das zweite Byte enthält einen, vom jeweiligen Typ abhängigen Code  | ||
* Das dritte und vierte Byte bilden eine Prüfsumme des Headers  | * Das dritte und vierte Byte bilden eine Prüfsumme des Headers  | ||
* Die folgenden vier Bytes sind vom Typ der ICMP-Nachricht abhängig  | |||
{| class="wikitable options big"  | |||
{| class="wikitable   | |||
|-  | |-  | ||
! Typ !! Typname !! Code !! Bedeutung  | ! Typ !! Typname !! Code !! Bedeutung  | ||
| Zeile 78: | Zeile 93: | ||
|}  | |}  | ||
==   | === Daten ===  | ||
Je nach Typ der ICMP-Nachricht haben die, sich dem ICMP-Header anschließenden Daten, einen unterschiedlichen Inhalt und sind verschieden strukturiert  | |||
* Oft wird der IP-Header wiederholt und im Anschluss daran die ersten 64 Bit des ursprünglichen Datagramms  | * Oft wird der IP-Header wiederholt und im Anschluss daran die ersten 64 Bit des ursprünglichen Datagramms  | ||
* Damit wird dem Zielrechner die Zuordnung der Nachricht ermöglicht  | * Damit wird dem Zielrechner die Zuordnung der Nachricht ermöglicht  | ||
=   | == Anwendung ==  | ||
{| class="wikitable options big"  | |||
{| class="wikitable   | |||
|-  | |-  | ||
| Erreichbarkeit prüfen || [[ping]]  | |||
|-  | |-  | ||
|   | | Weg nachvollziehen || [[traceroute]]  | ||
|-  | |-  | ||
|   | | Maximale Path-MTU ermitteln || [[Path MTU Discovery]]  | ||
|-  | |-  | ||
| Umleitung im Netzwerk || [[IPv4/ICMP/Redirect]]  | |||
| Umleitung im Netzwerk   | |||
|}  | |}  | ||
<noinclude>  | |||
=   | == Anhang ==  | ||
==   | === Siehe auch ===  | ||
{{Special:PrefixIndex/ICMP}}  | |||
----  | |||
{{Special:PrefixIndex/ICMP}}  | |||
==   | === Dokumentation ===  | ||
===== RFC =====  | |||
# https://tools.ietf.org/html/rfc792  | |||
=   | === Links ===  | ||
= Links =  | ==== Weblinks ====  | ||
==   | |||
==   | |||
[[Kategorie:ICMP]]  | |||
</noinclude>  | |||
Aktuelle Version vom 9. Juli 2025, 16:45 Uhr
Internet Control Message Protocol (ICMP) - Statusinformationen einer IP-Verbindung austauschen
Beschreibung
Internet-Protokoll ermöglicht die Kommunikation von Geräten über beliebige Pfade
- Treten dabei Fehler auf, kann ICMP den Absender informieren
 
- Beispiele
 
- Gerät oder Dienst nicht erreichbar
 - Header-Daten wurden verfälscht
 - Lebenszeit (TTL) eines Datagramms ist abgelaufen
 - die Pufferkapazität des Empfängers ist erschöpft
 
- OSI-Schicht 3
 
Die Daten werden jedoch in IP-Paketen transportiert , wie dies bei TCP & UDP geschieht , obwohl ICMP kein Transportprotokoll ist
- ICMP nutzt somit das IP-Protokoll,
 
als wäre es ein Protokoll einer höheren Schicht (im OSI-Modell), obwohl es eigentlich integraler Bestandteil des IP-Protokolls ist
Fehlerermittlung
- Situationen, die eine ICMP-Fehlermeldung auslösen
 
| Grund | Fehler | Auslöser | 
|---|---|---|
| Ziel nicht erreichbar | Destination Unreachable | Dieser Fehler tritt auf, wenn der Zielrechner nicht mehr existiert, oder auf diesem kein passendes Protokoll gefunden werden kann. Tritt dieser Fall ein, wird der Absender entsprechend benachrichtigt | 
| Zeit überschritten | Time Exceeded | |
| Ungültige Parameter | Parameter Problem | |
| Senderate reduzieren | Source Quench | |
| Umleitung im Netzwerk | Redirect | 
- Prüfung auf Erreichbarkeit eines Gerätes
 - Ermittlung des Pfades, den ein Datagramm durch das Netz beschreitet
 - Ermittlung der maximalen Größe des Datagramms auf diesem Pfad
 
Paketstruktur
Header

Der ICMP-Header folgt direkt auf den IPv4-Header
- wird an der Protokollnummer erkannt
 - Erweitert den IP-Header und ist als integraler Bestandteil des IP-Protokolls zu sehen
 - Länge: 8 Byte + Datenabschnitt variabler Größe
 
- Format der ersten vier Bytes
 
- Mit dem ersten Byte wird der Typ der Nachricht kodiert
 - Das zweite Byte enthält einen, vom jeweiligen Typ abhängigen Code
 - Das dritte und vierte Byte bilden eine Prüfsumme des Headers
 - Die folgenden vier Bytes sind vom Typ der ICMP-Nachricht abhängig
 
| Typ | Typname | Code | Bedeutung | 
|---|---|---|---|
| 0 | Echo Reply | 0 | Echo-Antwort | 
| 3 | Destination Unreachable | 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 | ||
| 13 | Paket wird von der Firewall des Empfängers geblockt | ||
| 4 | Source Quench | 0 | Datagramm verworfen, da Warteschlange voll | 
| 5 | Redirect Message | 0 | Benachrichtigung über eine Umleitung für das angegebene Netzwerk | 
| 1 | Benachrichtigung über eine Umleitung für den ausgewählten Host | ||
| 2 | Umleitung für den angegebenen Dienst & das Netz | ||
| 3 | Umleitung für den angegebenen Dienst & den Host | ||
| 8 | Echo Request | 0 | Echo-Anfrage (Ping) | 
| 9 | Router Solicitation | 0 | Suche nach einem Router | 
| 10 | Router Advertisement | 0 | Bekanntmachung eines Routers | 
| 11 | Time Exceeded | 0 | TTL (Time To Live, Lebensdauer) abgelaufen | 
| 1 | Zeitlimit während der Defragmentierung überschritten | 
Daten
Je nach Typ der ICMP-Nachricht haben die, sich dem ICMP-Header anschließenden Daten, einen unterschiedlichen Inhalt und sind verschieden strukturiert
- Oft wird der IP-Header wiederholt und im Anschluss daran die ersten 64 Bit des ursprünglichen Datagramms
 - Damit wird dem Zielrechner die Zuordnung der Nachricht ermöglicht
 
Anwendung
| Erreichbarkeit prüfen | ping | 
| Weg nachvollziehen | traceroute | 
| Maximale Path-MTU ermitteln | Path MTU Discovery | 
| Umleitung im Netzwerk | IPv4/ICMP/Redirect | 
Anhang
Siehe auch
Dokumentation
RFC
Links
Weblinks