Difference between revisions of "MOOC:Resume Act31"

From Livre IPv6

(Format général d'un message ICMPv6)
(Format général d'un message ICMPv6)
Line 20: Line 20:
 
== Format général d'un message ICMPv6 ==
 
== Format général d'un message ICMPv6 ==
  
Les messages ICMPv6 sont encapsulés directement dans un paquet IPv6. Le protocole se voit attribuer le numéro 58 pour être représenté dans l'en-tête IPv6 comme prochain en-tête (champ ''Next Header''). Le format général des messages ICMPv6 est donné par la figure 1.  
+
Les messages ICMPv6 sont encapsulés directement dans un paquet IPv6. Le protocole se voit attribuer le numéro 58 pour être représenté dans l'en-tête IPv6 comme prochain en-tête (champ ''Next Header''). Le format général des messages ICMPv6 est donné par la figure 1. L'en-tête des messages ICMPv6 comporte 3 champs :
<center>
+
[[File:MOOC_Act31_Fig1b.png|400px|center|thumb|Figure 1 : Format d'un message ICMPv6.]]
+
</center>
+
L'en-tête des messages ICMPv6 comporte 3 champs :
+
 
# Le champ <tt>Type</tt> : il indique la nature du message ICMPv6 et, donc, le format spécifique du message. Les messages ICMPv6 forment 2 groupes : un groupe pour les messages d'informations et un autre pour les messages d'erreurs. Les groupes sont identifiés par le bit de poids fort de ce champ. Les messages d'erreurs ont ce bit à zéro et, donc, le champ <tt>Type</tt> prendra, pour ces messages, une valeur comprise entre 0 et 127. Les messages d'informations sont identifiés par un champ <tt>Type</tt> dont la valeur est comprise entre 128 et 255.
 
# Le champ <tt>Type</tt> : il indique la nature du message ICMPv6 et, donc, le format spécifique du message. Les messages ICMPv6 forment 2 groupes : un groupe pour les messages d'informations et un autre pour les messages d'erreurs. Les groupes sont identifiés par le bit de poids fort de ce champ. Les messages d'erreurs ont ce bit à zéro et, donc, le champ <tt>Type</tt> prendra, pour ces messages, une valeur comprise entre 0 et 127. Les messages d'informations sont identifiés par un champ <tt>Type</tt> dont la valeur est comprise entre 128 et 255.
 
# Le champ <tt>Code</tt> s'interprète dans le contexte du type de message. Il est utilisé pour ajouter une granularité plus fine au type.  
 
# Le champ <tt>Code</tt> s'interprète dans le contexte du type de message. Il est utilisé pour ajouter une granularité plus fine au type.  
 
# Le champ <tt>Checksum</tt> sert à vérifier l'intégrité du message ICMP. Il porte aussi bien sur l'en-tête du message que sur sa charge utile.
 
# Le champ <tt>Checksum</tt> sert à vérifier l'intégrité du message ICMP. Il porte aussi bien sur l'en-tête du message que sur sa charge utile.
# La charge utile du message ICMPv6 (''message body'') est relative au contexte fonctionnel. Dans le cas des messages de compte rendu d'erreur elle contient, le paquet IPv6 ayant provoqué l'erreur. Pour éviter d'avoir à fragmenter, la longueur du message ICMPv6 est limitée à 1 280 octets. Par conséquent, le contenu du paquet IPv6 renvoyé peut  être tronqué. Pour Les message de dévouverte du voisinage la charge utile est composée de différentes options selon qu'il s'agit d'une requête de sollicitation de voisin ou d'un réponse sous forme d'annonce de voisin.  
+
<center>
 +
[[File:MOOC_Act31_Fig1b.png|400px|center|thumb|Figure 1 : Format d'un message ICMPv6.]]
 +
</center>
 +
 
 +
La charge utile du message ICMPv6 (''message body'') est relative au contexte fonctionnel.  
 +
* Dans le cas des messages de compte rendu d'erreur elle contient, le paquet IPv6 ayant provoqué l'erreur. Pour éviter d'avoir à fragmenter, la longueur du message ICMPv6 est limitée à 1 280 octets. Par conséquent, le contenu du paquet IPv6 renvoyé peut  être tronqué.  
 +
* Pour Les message de dévouverte du voisinage la charge utile est composée de différentes options selon qu'il s'agit d'une sollicitation de voisin ou d'une annonce de voisin.  
  
 
Les messages sont spécifiés dans différents RFC. Cependant, la liste complète des types de messages et les différents paramètres associés sont regroupés par l'IANA (''Internet Assigned Number Authority'')<ref>IANA. [http://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xhtml ''Internet Control Message Protocol'' version 6 (ICMPv6) Parameters]</ref>.  Le tableau 1 présente les valeurs et les codes définis dans le RFC 4443. Ce qu'il faut noter c'est que les valeurs de type inférieures à 128 sont pour les messages d'erreurs et qu'à partir de 128, ce sont des messages d'informations.
 
Les messages sont spécifiés dans différents RFC. Cependant, la liste complète des types de messages et les différents paramètres associés sont regroupés par l'IANA (''Internet Assigned Number Authority'')<ref>IANA. [http://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xhtml ''Internet Control Message Protocol'' version 6 (ICMPv6) Parameters]</ref>.  Le tableau 1 présente les valeurs et les codes définis dans le RFC 4443. Ce qu'il faut noter c'est que les valeurs de type inférieures à 128 sont pour les messages d'erreurs et qu'à partir de 128, ce sont des messages d'informations.

Revision as of 11:02, 3 March 2017


Activité 31 : Contrôler le fonctionnement du réseau par ICMPv6

Introduction

Le bon fonctionnement de la couche réseau est supervisé par le protocole ICMPv6 (Internet Message Control Protocol) [RFC 4443]. Tout comme ICMP pour IPv4, ICMPv6 s'appuie sur IPv6 pour réaliser ses fonctions. La famille des protocoles ICMP donne les informations sur l'état de marche du réseau. Elle rapporte également les erreurs quand un paquet ne peut être traité correctement. On distingue 3 fonctions propres à ICMP :

  • le signalement d'erreur en cours d'acheminement d'un paquet,
  • le test d'accessibilité d'un noeud,
  • la configuration automatique des équipements.

À la différence d'ICMP pour IPv4, qui comporte également ces trois fonctions, ICMPv6 intègre les fonctions de gestion des groupes de multicast (Multicast Listener Discovery (MLD)) et de résolution d'adresse IP en adresse physique. En IPv4 ces fonctions étaient assurées par des protocoles annexes (la gestion des groupes etait du ressort de IGMP (Internet Group Management Protocol), et la résolution d'adresse, du protocole ARP (Address Resolution Protocol). La résolution d'adresse en IPv6 s'effectue par la procédure de découverte des voisins (Neighbor Discovery Protocol(NDP)). La notion de voisinage est définie par la connectivité au lien. Deux noeuds connectés sur le même lien sont des voisins. Ils partagent le même préfixe réseau. Un lien est, par exemple, un domaine de diffusion Ethernet bordé par au moins un routeur. ICMPv6 comporte aussi des fonctions pour la mobilité IP. Il en ressort qu'ICMPv6 est bien plus complet que son prédécesseur. Non seulement ICMPv6 rapporte les erreurs, mais il est devenu indispensable dans le service de connectivité offert par la couche de réseau.

Format général d'un message ICMPv6

Les messages ICMPv6 sont encapsulés directement dans un paquet IPv6. Le protocole se voit attribuer le numéro 58 pour être représenté dans l'en-tête IPv6 comme prochain en-tête (champ Next Header). Le format général des messages ICMPv6 est donné par la figure 1. L'en-tête des messages ICMPv6 comporte 3 champs :

  1. Le champ Type : il indique la nature du message ICMPv6 et, donc, le format spécifique du message. Les messages ICMPv6 forment 2 groupes : un groupe pour les messages d'informations et un autre pour les messages d'erreurs. Les groupes sont identifiés par le bit de poids fort de ce champ. Les messages d'erreurs ont ce bit à zéro et, donc, le champ Type prendra, pour ces messages, une valeur comprise entre 0 et 127. Les messages d'informations sont identifiés par un champ Type dont la valeur est comprise entre 128 et 255.
  2. Le champ Code s'interprète dans le contexte du type de message. Il est utilisé pour ajouter une granularité plus fine au type.
  3. Le champ Checksum sert à vérifier l'intégrité du message ICMP. Il porte aussi bien sur l'en-tête du message que sur sa charge utile.
Figure 1 : Format d'un message ICMPv6.

La charge utile du message ICMPv6 (message body) est relative au contexte fonctionnel.

  • Dans le cas des messages de compte rendu d'erreur elle contient, le paquet IPv6 ayant provoqué l'erreur. Pour éviter d'avoir à fragmenter, la longueur du message ICMPv6 est limitée à 1 280 octets. Par conséquent, le contenu du paquet IPv6 renvoyé peut être tronqué.
  • Pour Les message de dévouverte du voisinage la charge utile est composée de différentes options selon qu'il s'agit d'une sollicitation de voisin ou d'une annonce de voisin.

Les messages sont spécifiés dans différents RFC. Cependant, la liste complète des types de messages et les différents paramètres associés sont regroupés par l'IANA (Internet Assigned Number Authority)[1]. Le tableau 1 présente les valeurs et les codes définis dans le RFC 4443. Ce qu'il faut noter c'est que les valeurs de type inférieures à 128 sont pour les messages d'erreurs et qu'à partir de 128, ce sont des messages d'informations.

Type Code Signification
Message de compte rendu d'erreur
1 Destination inaccessible :
0     Aucune route vers la destination.
1     La communication avec la destination est administrativement interdite.
2     Hors portée de l'adresse source.
3     L'adresse est inaccessible.
4     Le numéro de port est inaccessible.
5     L'adresse source est filtrée par un firewall.
6     L'adresse destination est rejetée.
2
Paquet trop grand.
3 Délai expiré :
0     Limite du nombre de sauts atteinte.
1     Temps de réassemblage dépassé.
4 Erreur de paramètre :
0     Champ d'en-tête erroné.
1     Champ d'en-tête suivant non reconnu.
2     Option non reconnue.
Message d'information
128 Demande d'écho
129 Réponse d'écho

Tableau 1 : Messages ICMPv6 décrit dans le RFC 4443.

  1. IANA. Internet Control Message Protocol version 6 (ICMPv6) Parameters
Personal tools