ICMP (Internet Control Message Protocol) verwendet keine Ports im herkömmlichen Sinne wie die Protokolle TCP und UDP. Stattdessen wird es auf einer niedrigeren Ebene im Netzwerkstapel betrieben, hauptsächlich für Diagnosezwecke und Fehlerberichte innerhalb von IP-Netzwerken. ICMP-Nachrichten sind in IP-Paketen gekapselt und enthalten kein Portnummernfeld in ihren Headern.
Der Einsatz von ICMP umfasst mehrere wesentliche Funktionen im Netzwerkbetrieb:
- Fehlerberichterstattung: ICMP ist entscheidend für die Meldung von Fehlern, die während der Paketzustellung auftreten. Wenn ein Router beispielsweise beim Weiterleiten eines IP-Pakets auf ein Problem stößt, kann er eine ICMP-Nachricht an den Absender zurücksenden und ihn über das Problem informieren.
- Diagnosetools: ICMP wird häufig von Diagnosetools wie Ping und Traceroute verwendet. Ping verwendet ICMP-Echo-Request- und Echo-Reply-Nachrichten, um die Erreichbarkeit eines Hosts zu testen und die Umlaufzeiten zwischen Geräten zu messen. Traceroute nutzt ICMP-Time-Exceeded-Meldungen, um die Route von Paketen über ein IP-Netzwerk zu verfolgen.
ICMP nutzt Port 22 nicht. Port 22 ist speziell mit dem SSH-Protokoll (Secure Shell) verknüpft, das über TCP oder UDP für sicheren Fernzugriff auf vernetzte Geräte arbeitet. ICMP arbeitet unabhängig von Portnummern und ist darauf ausgelegt, spezifische Netzwerkverwaltungs- und Diagnosefunktionen statt direkter Datenübertragung oder Kommunikationssitzungen wie TCP und UDP bereitzustellen.
Beim ICMP-Ping werden die ICMP-Echo-Request- und Echo-Reply-Nachrichten zur Ausführung des Ping-Dienstprogramms verwendet. ICMP-Ping verwendet keine herkömmlichen Ports wie TCP oder UDP. Stattdessen wird eine ICMP-Echo-Request-Nachricht an eine Ziel-IP-Adresse gesendet. Wenn das Ziel erreichbar ist und reagiert, sendet es eine ICMP-Echo-Antwortnachricht zurück. Der gesamte Ping-Vorgang basiert auf ICMP-Nachrichten, die zwischen Geräten ausgetauscht werden, ohne dass Ports beteiligt sind, die üblicherweise mit anderen Protokollen verbunden sind.