Internet Control Message Protocol (ICMP) er en netværksprotokol til internetprotokol (IP) netværk. ICMP overfører kontroloplysninger til status for netværket i stedet for applikationsdata. Et IP-netværk kræver ICMP for at fungere korrekt.
ICMP-meddelelser er en specifik type IP-besked, der adskiller sig fra TCP og UDP.
Det mest kendte eksempel på ICMP messaging i praksis er ping-hjælpeprogrammet, som bruger ICMP til at afprøve fjernværter for respons og måle den samlede rundturstid for sondebeskederne.
ICMP understøtter også andre hjælpeprogrammer som traceroute, der identificerer mellemliggende routing-enheder ("humle") på stien mellem en given kilde og destination.
ICMP versus ICMPv6
Den oprindelige definition af ICMP understøttede Internet Protocol version 4 (IPv4) netværk. IPv6 indeholder en revideret form for protokollen, der konventionelt kaldes ICMPv6, for at skelne den fra den oprindelige ICMP (kaldes til og med ICMPv4).
ICMP-meddelelsetyper og meddelelsesformater
ICMP-meddelelser har data, der er væsentlige for driften og administrationen af et computernetværk. Protokollen rapporterer om forhold som ikke-reagerende enheder, transmissionsfejl og problemer med netværksbelastning.
Som andre protokoller i IP-familien definerer ICMP en meddelelsesoverskrift. Overskriften indeholder fire felter i følgende rækkefølge:
- Type (8 bits)
- Kode (8 bits)
- Kontrolsum (16 bits)
- ICMP Data (32 bit)
ICMP definerer en liste over specifikke meddelelsestyper og tildeler et unikt nummer til hver.
Som vist i tabellen nedenfor giver ICMPv4 og ICMPv6 nogle almindelige meddelelsestyper (men ofte med forskellige tal) og også nogle meddelelser, der er unikke for hver. (De almindelige meddelelsestyper kan også variere lidt i deres adfærd mellem IP-versioner).
| v4 # | v6 # | Type | Beskrivelse |
|---|---|---|---|
| 0 | 129 | Ekkosvar | Meddelelse sendt som svar på en ekko-anmodning (se nedenfor) |
| 3 | 1 | Destination Uopnåelig | Sendt som svar på en IP-besked, der ikke kan leveres af forskellige årsager. |
| 4 | - | Source Quench | En enhed kan sende denne besked tilbage til en afsender, som genererer indgående trafik hurtigere, end den kan behandles. (Erstattet af andre metoder.) |
| 5 | 137 | Omdirigere besked | Routing-enheder kan generere denne metode, hvis de registrerer en ændring i den ønskede rute for en IP-besked, skal ændres. |
| 8 | 128 | Echo Request | Meddelelse, der sendes af ping-værktøjer, for at kontrollere, hvorvidt en målenhed er lydhør |
| 11 | 3 | Tid oversteget | Routere genererede denne meddelelse, når de indgående data har nået sin "hop" tæller grænse. Bruges af traceroute. |
| 12 | - | Parameterproblem | Genereret, når en enhed registrerer beskadigede eller manglende data i en indgående IP-besked. |
| 13, 14 | - | Timestamp (Request, Reply) | Designet til at synkronisere tidsklokke mellem to enheder via IPv4 (Superseded af andre mere pålidelige metoder.) |
| - | 2 | Pakke for stor | Routere genererer denne besked, når der modtages en besked, der ikke kan videresendes til dets destination på grund af overskridelse af en længdegrænse. |
Protokollen fylder kode- og ICMP-datafelterne afhængigt af meddelelsen Type valgt til at dele yderligere oplysninger. For eksempel kan en destination, der ikke kan nås, have mange forskellige kodeværdier afhængigt af arten af fejlen.




