ICMP (Internet Control Message Protocol) est situé au niveau de la couche réseau du modèle OSI (ou juste au-dessus de celui-ci dans la couche Internet, comme certains le soutiennent), et fait partie intégrante dInternet Suite de protocoles (communément appelée TCP / IP).
ICMP se voit attribuer le numéro de protocole 1 dans la suite IP selon IANA.org.
Conçu pour servir de rapport derreur et service de requête, il joue un rôle crucial dans le service de datagramme dhôte à hôte dans la communication réseau.
Cest la partie du service IP qui agit comme système de rétroaction dans la communication IP du réseau, en sassurant que les paquets non livrables sont signalés à lhôte émetteur, tel que le routeur ou la passerelle.
Tout périphérique réseau IP peut envoyer des datagrammes ICMP, y compris des cartes dinterface réseau et dautres périphériques couramment utilisés dans votre environnement.
Quest-ce quICMP?
Le rôle dICMP dans la communication réseau peut être comparé à une équipe qui assemble un Automobi à laide de pièces envoyées par le fabricant.
Le fabricant envoie les pièces une par une, en supposant quelles sont reçues par léquipe de montage.
Parfois, cependant, une pièce narrive pas comme prévu, ou les pièces sont ralenties via leur méthode de livraison habituelle et il existe un moyen plus rapide dobtenir les pièces à assembler.
Léquipe dassemblage a besoin dun moyen de notifier au fabricant de renvoyer la pièce manquante ou pour envoyer les pièces via un expéditeur ou un itinéraire différent et plus rapide.
ICMP joue ce rôle de messager qui relaie les informations du destinataire à lexpéditeur.
Ce protocole est assez complexe. Non seulement il signale les paquets non livrables et les hôtes inaccessibles, mais il envoie également des messages de redirection, des messages décho et de réponse décho et dautres messages décrits ci-dessous.
(Les messages de réponse décho / écho sont utilisés par la commande PING bien connue, qui permet à un utilisateur denvoyer un écho à un hôte récepteur, qui envoie une réponse décho si un écho est reçu).
Les messages ICMP fournissent au système un moyen davertir lhôte source si lhôte distant nest pas recevoir les paquets transmis.
ICMP naide pas IP à être plus fiable et il ne reçoit ni nenvoie aucune donnée réelle. Il existe simplement en tant que système de rétroaction, une ressource pour identifier les problèmes de paquets perdus et de routage de données brisé.
Lun des messages les plus connus et les plus utiles dun datagramme ICMP est le message Destination inaccessible.
Les messages Destination inaccessible sont générés pour plusieurs raisons, y compris limpossibilité datteindre un réseau, un hôte, un port ou un protocole.
Un routeur renvoie ces messages Destination inaccessible à lhôte, qui lenvoie ensuite généralement à lapplication qui a généré le paquet dorigine.
Les messages derreur permettent à lapplication de réessayer et, si nécessaire, lapplication hôte peut générer un message derreur à lutilisateur de lapplication , en les informant des problèmes de connectivité réseau.
Il est important de savoir que même si les messages Destination inaccessible sont ceux que les gens connaissent mieux via lutilitaire PING, ils ne sont pas tout ce quil y a à ICMP.
Dautres messages importants incluent e le message Redirection, quune passerelle utilise pour informer lhôte denvoyer du trafic vers un routeur différent.
Time Exceeded est utilisé par un routeur pour indiquer à lhôte quun paquet a dépassé sa durée de vie ( TTL) et a été écarté; quand un hôte commence à recevoir des paquets Time Exceeded, cela peut être une indication quune boucle de rétroaction existe quelque part en aval.
Les messages Source Quench sont envoyés dun routeur à un hôte, lui faisant savoir que sa capacité tampon est pleine et de suspendre brièvement les transmissions pour lui permettre de rattraper son retard.
Dautres types de messages incluent le problème de paramètre, la demande de masque dadresse & Réponse et horodatage, entre autres.
ICMP nenverra pas de messages sur les messages ICMP; si cela se produisait, cela créerait une boucle de rétroaction – un message ICMP renvoyé générerait un message ICMP de lautre côté, ce qui générerait un autre message, et ainsi de suite, créant une tempête de paquets ICMP qui inonderait rapidement un réseau .
Pour cette même raison, ICMP ne répondra pas aux adresses de diffusion ou de multidiffusion. Contrairement à dautres protocoles IP tels que TCP et UDP, ICMP néchange pas de données entre les hôtes.
En règle générale, les utilisateurs finaux ninteragissent pas avec ce protocole, sauf pour un nombre limité doutils de diagnostic, comme le ping et traceroute, utilisé pour dépanner les connexions réseau et Internet.
ICMP peut être exploité pour attaquer des ordinateurs avec ce que lon appelle le « Ping of Death », qui est une cyberattaque courante qui peut causer des problèmes de déni de service dans vos réseaux.
Un paquet IP conçu pour déborder de la mémoire tampon dun ordinateur cible est envoyé pour tenter de planter son système.
Une autre attaque consiste en des flots de requêtes ping qui empêchent le trafic normal datteindre lordinateur ciblé.
Ces attaques sont relativement simples à empêcher en implémentant des vérifications de fragments IP dans le processus de réassemblage .
Les messages ICMP sont des datagrammes encapsulés dans des paquets IP, et sont utilisés à la fois par les protocoles IPv4 (ICMPv4) et IPv6 (ICMPv6).
Ces paquets commencent par un en-tête IP, suivi de len-tête, le type et le code ICMP, la somme de contrôle et les données.
Les données dépendent des champs de type et de code, qui identifient le message ICMP envoyé.
Lun des plus importants partie de la suite Internet Protocol, ICMP joue un rôle crucial dans la communication réseau IP.
Il garantit quun hôte émetteur sait si ses paquets ne sont pas reçus par lhôte distant, fournissant des informations cruciales concernant les problèmes de réseau comme ainsi que daider les hôtes à transmettre les données plus efficacement.
Les techniciens et administrateurs réseau lutilisent également comme diagnostic outil stic pour aider à identifier les points de défaillance du réseau.
Un outil indispensable en définitive dans notre flux constant et sans fin de milliards et de milliards de paquets IP envoyés dans le monde chaque seconde de chaque jour.