Aller au contenu principal

RFC 792 - Internet Control Message Protocol

Date : septembre 1981
Statut : Internet Standard (STD 5)
Auteur : J. Postel (ISI)
Met à jour : RFC 777, RFC 760, IEN 109, IEN 128
Mis à jour par : RFC 950, RFC 4884, RFC 6633, RFC 6918


Résumé (Abstract)

Ce document définit le protocole de messages de contrôle Internet (Internet Control Message Protocol, ICMP), qui fait partie intégrante du protocole Internet (Internet Protocol, IP). ICMP est utilisé par les nœuds IP pour signaler les erreurs dans le traitement des datagrammes et échanger des informations de contrôle. Il fournit des fonctionnalités essentielles de diagnostic réseau, notamment le signalement d'erreurs, le test de connectivité et les fonctions de gestion du réseau.


Table des matières (Contents)


Référence rapide : Types de messages ICMP

TypeNomDescription
0Echo Reply (Réponse d'écho)Réponse à une demande d'écho (ping)
3Destination Unreachable (Destination inaccessible)La destination ne peut pas être atteinte
4Source Quench (Limitation de source)Message de contrôle de congestion (déprécié)
5Redirect (Redirection)Instruction de redirection de route
8Echo Request (Demande d'écho)Demande de ping
11Time Exceeded (Temps dépassé)TTL expiré ou expiration du délai de fragment
12Parameter Problem (Problème de paramètre)Champ d'en-tête IP invalide
13Timestamp Request (Demande d'horodatage)Demande d'horodatage
14Timestamp Reply (Réponse d'horodatage)Réponse avec horodatage
15Information Request (Demande d'information)Demande d'information réseau (obsolète)
16Information Reply (Réponse d'information)Réponse avec information réseau (obsolète)

Format de message ICMP

 0                   1                   2                   3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | Code | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Body |
| (varie selon le type) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Champs principaux

  • Type : Identifie le type de message ICMP (8 bits)
  • Code : Fournit un contexte supplémentaire pour le type de message (8 bits)
  • Checksum : Détection d'erreur pour le message ICMP (16 bits)
  • Message Body : Varie en fonction du type de message

Cas d'utilisation courants

Diagnostic réseau

Ping (Echo Request/Reply)

$ ping 8.8.8.8
ICMP Echo Request → 8.8.8.8
← ICMP Echo Reply (Type 0)

Traceroute

$ traceroute google.com
Utilise les messages ICMP Time Exceeded (Type 11)
pour découvrir le chemin réseau

Signalement d'erreurs

Destination Unreachable (Destination inaccessible)

  • Réseau inaccessible
  • Hôte inaccessible
  • Protocole inaccessible
  • Port inaccessible
  • Fragmentation nécessaire mais DF défini

Time Exceeded (Temps dépassé)

  • TTL expiré en transit
  • Délai de réassemblage de fragment dépassé

Ressources associées

  • Texte officiel : RFC 792 (TXT)
  • Page officielle : RFC 792 DataTracker
  • Standard : STD 5
  • Protocoles associés :
    • RFC 791 (IPv4)
    • RFC 1122 (Host Requirements)
    • RFC 4443 (ICMPv6)
    • RFC 4884 (Extended ICMP)

Note importante : ICMP est une partie essentielle de la mise en réseau IP, fournissant des capacités critiques de diagnostic et de signalement d'erreurs. Cependant, de nombreux réseaux filtrent les messages ICMP pour des raisons de sécurité, ce qui peut avoir un impact sur les outils de dépannage et de diagnostic réseau.