Internet Control Message Protocol V6

L’ICMP pour IPv6 (Internet Control Message Protocol Version 6) fait partie à part entière de l'architecture IPv6 et doit être complètement supportée par toutes les implémentations d'IPv6. ICMPv6 combine des fonctions antérieurement subdivisées à travers différents protocoles, tels qu’ICMP v4 (Internet Control Message Protocol version 4), IGMP (Internet Group Membership Protocol), et ARP (Address Resolution Protocol), et il introduit quelques simplifications en éliminant des types de messages obsolètes qui ne sont plus utilisés.

Résumé

L'Internet Protocol, version 6 (IPv6) est une nouvelle version d'IP. IPv6 utilise le protocole ICMP comme défini pour IPv4[1], avec quelques changements. Le protocole résultant est appelé ICMPv6. Cet article décrit le format d'un ensemble de messages de contrôle utilisés par ICMPv6.

ICMPv6 est un protocole générique ; par exemple, il est utilisé pour rapporter des erreurs trouvées dans le traitement de paquets, effectuer des diagnostics, effectuer une découverte de voisinage, et rapporter l'appartenance à un multicast. Pour cette raison, les messages ICMPv6 sont catégorisés en deux classes : error messages et information messages.

Les datagrammes ICMP sont transportés à l'intérieur de datagrammes IPv6 dans lequel un en-tête d'extension peut aussi être présent. Un message ICMP est identifié par sa valeur 58 (0x3A) positionnée dans le champ Next Header de l'en-tête IPv6.

ICMPv6 (ICMP pour IPv6)

ICMPv6 est utilisé par les nœuds/hôtes IPv6 pour rapporter les erreurs trouvées dans le traitement de datagrammes, et pour effectuer d'autres traitements internes à cette couche, tels que des diagnostics (ICMPv6 « ping »).

Format des paquets

Les paquets ICMPv6 ont le format Type, Code & Checksum. Le champ Type de 8-bits indique le type du message. Si le bit de poids fort a une valeur de zéro, il s'agit d'un message d'erreur, sinon c'est un message d’information. Le contenu du champ Code de 8 bits dépend du type de message, et est utilisé pour créer un niveau additionnel de granularité de message. Le champ Checksum est utilisé pour détecter des erreurs dans le message ICMP à l'intérieur du message IPv6.

Messages d'erreur

Les messages d'erreur ICMPv6 sont similaires à ceux d’ICMPv4. Ils appartiennent à l'une des quatre catégories : Destination non atteignable, Paquet trop gros, Time out, et Problèmes de paramétrage.

            1    Destination Unreachable
            2    Packet Too Big
            3    Time Exceeded
            4    Parameter Problem

Messages informatifs

L'autre type de messages ICMP est divisé en trois groupes : messages de diagnostic, messages pour la gestion des groupes multicast, et messages de découverte de voisinage. (diagnostic messages, messages for the management of multicast groups, et Neighbor Discovery messages.)

            128  Echo Request
            129  Echo Reply

Format des datagrammes

      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |           |     Code      |          Checksum             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     +                         Message Body                          +
     |                                                               |
     +---------------------------------------------------------------+

Message Source Address Determination

Un nœud qui envoie un message ICMPv6 doit déterminer à la fois les adresses IPv6 de Source et de Destination de l'en-tête IPv6 avant de calculer la somme de contrôle. Si le nœud a plus d'une adresse unicast, il doit choisir l'adresse source du message de la manière suivante :

  • (a) Si le message est une réponse à un message envoyé à l'une des adresses unicast du nœud, l'adresse Source de la réponse doit être la même.
  • (b) Si le message est une réponse à un message envoyé en multicast ou anycast, d'un groupe dont le nœud est membre, l'adresse de la réponse doit appartenir au groupe.
  • (c) Si le message est une réponse à un message envoyé à une adresse n'appartenant pas au nœud, l'adresse source devrait être l'adresse unicast du nœud qui sera la plus utile au diagnostic de l'erreur.
  • (d) Dans les autres cas, en fonction de la table de routage.

Types de messages ICMP

TypeSignification
1Destination Unreachable
2Packet Too Big
3Time Exceeded
4Parameter Problem
128Echo Request
129Echo Reply
130Group Membership Query
131Group Membership Report
132Group Membership Reduction
133Router Solicitation
134Router Advertisement
135Neighbor Solicitation
136Neighbor Advertisement
137Redirect

Liste complète disponible sur le site de l'IANA : http://www.iana.org/assignments/icmpv6-parameters

Voir aussi

Liens externes

  • RFC 4443[2] ICMPv6 version la plus récente (RFC 1885[3] et RFC 2463[4] version précédente)
  • RFC 3971[5] Découverte sécurisée du voisinage (SEND : SEcure Neighbor Discovery)
  • Gisèle Cizault, IPv6, Théorie et pratique, O'Reilly, (ISBN 978-2-84177-337-4), évolution du livre

Références

  • Portail de l’informatique
  • Portail des télécommunications
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.