Difference between revisions of "MOOC:Auto-eval Act21-exercice"

From Livre IPv6

Line 46: Line 46:
 
  <br />
 
  <br />
 
  <br />
 
  <br />
  <p>A21Ex01 : Quelle est la valeur du champ <b>Version ?</b></p>
+
  <p>A21E01 : Quelle est la valeur du champ <b>Version ?</b></p>
 
  <stringresponse type="ci" answer="6">
 
  <stringresponse type="ci" answer="6">
 
   <additional_answer>0x6</additional_answer>
 
   <additional_answer>0x6</additional_answer>
 
   <additional_answer>0x06</additional_answer>
 
   <additional_answer>0x06</additional_answer>
   <textline label="A21Ex01" size="20"/>
+
   <textline label="A21E01" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
  <p>A21Ex02 : Quelle est la valeur du champ <b>Classe de trafic</b> ?</p>
+
  <p>A21E02 : Quelle est la valeur du champ <b>Classe de trafic</b> ?</p>
 
  <stringresponse type="ci" answer="0">
 
  <stringresponse type="ci" answer="0">
 
   <additional_answer>0x0</additional_answer>
 
   <additional_answer>0x0</additional_answer>
 
   <additional_answer>0x00</additional_answer>
 
   <additional_answer>0x00</additional_answer>
   <textline label="A21Ex02" size="20"/>
+
   <textline label="A21E02" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
  <p>A21Ex03 : Quelle est la valeur du champ <b>Identificateur de flux</b> ?</p>
+
  <p>A21E03 : Quelle est la valeur du champ <b>Identificateur de flux</b> ?</p>
 
  <stringresponse type="ci" answer="21">
 
  <stringresponse type="ci" answer="21">
 
   <additional_answer>0x15</additional_answer>
 
   <additional_answer>0x15</additional_answer>
 
   <additional_answer>0x00015</additional_answer>
 
   <additional_answer>0x00015</additional_answer>
   <textline label="A21Ex03" size="20"/>
+
   <textline label="A21E03" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
  <p>A21Ex04 : Quelle est la valeur du champ <b>Longueur de donnée</b> ?</p>
+
  <p>A21E04 : Quelle est la valeur du champ <b>Longueur de donnée</b> ?</p>
 
  <stringresponse answer="64">
 
  <stringresponse answer="64">
 
   <additional_answer>0x40</additional_answer>
 
   <additional_answer>0x40</additional_answer>
 
   <additional_answer>0x0040</additional_answer>
 
   <additional_answer>0x0040</additional_answer>
   <textline label="A21Ex04" size="20"/>
+
   <textline label="A21E04" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
  <p>A21Ex05 : Quelle est la valeur du champ <b>En-tête suivant</b> ?</p>
+
  <p>A21E05 : Quelle est la valeur du champ <b>En-tête suivant</b> ?</p>
 
  <stringresponse answer="6">
 
  <stringresponse answer="6">
 
   <additional_answer>0x6</additional_answer>
 
   <additional_answer>0x6</additional_answer>
 
   <additional_answer>0x06</additional_answer>
 
   <additional_answer>0x06</additional_answer>
   <textline label="A21Ex05" size="20"/>
+
   <textline label="A21E05" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
  <p>A21Ex06 : À quel protocole la valeur du champ <b>En-tête suivant</b> fait-elle référence ?</p>
+
  <p>A21E06 : À quel protocole la valeur du champ <b>En-tête suivant</b> fait-elle référence ?</p>
 
  <stringresponse answer="TCP" type="ci" >
 
  <stringresponse answer="TCP" type="ci" >
   <textline label="A21Ex06" size="20"/>
+
   <textline label="A21E06" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
  <p>A21Ex07 : Quelle est la valeur du champ <b>Nombre maximal de sauts</b> ?</p>
+
  <p>A21E07 : Quelle est la valeur du champ <b>Nombre maximal de sauts</b> ?</p>
 
  <stringresponse answer="0x2A">
 
  <stringresponse answer="0x2A">
 
   <additional_answer>42</additional_answer>
 
   <additional_answer>42</additional_answer>
   <textline label="SA21x07" size="20"/>
+
   <textline label="A21E07" size="20"/>
 
  </stringresponse>
 
  </stringresponse>
 
  <br />
 
  <br />
Line 105: Line 105:
  
 
</script>
 
</script>
   <p>A21Ex08 : Quelle est l'adresse correspondant à la valeur du champ  <b>Adresse source</b> ?</p>
+
   <p>A21E08 : Quelle est l'adresse correspondant à la valeur du champ  <b>Adresse source</b> ?</p>
 
   <customresponse cfn="test_address" expect="2001:db8:c0:a001::1">   
 
   <customresponse cfn="test_address" expect="2001:db8:c0:a001::1">   
 
     <textline size="40" correct_answer="11" label="Integer #1"/><br/>
 
     <textline size="40" correct_answer="11" label="Integer #1"/><br/>
 
   </customresponse>
 
   </customresponse>
   <p>A21Ex09 : Quelle est l'adresse correspondant à la valeur du champ  <b>Adresse destination</b> ?</p>
+
   <p>A21E09 : Quelle est l'adresse correspondant à la valeur du champ  <b>Adresse destination</b> ?</p>
 
   <customresponse cfn="test_address" expect="2001:db8:a3e7:a001::c4d9">
 
   <customresponse cfn="test_address" expect="2001:db8:a3e7:a001::c4d9">
 
     <textline size="40" correct_answer="11" label="Integer #2"/><br/>
 
     <textline size="40" correct_answer="11" label="Integer #2"/><br/>

Revision as of 08:51, 5 April 2017

MOOC >Contenu>Quizzs


<problem>
<p>A partir d'un en-tête IPv6 retrouver la valeur de chaque champ de l'en-tête. Soit l'en-tête ci-dessous :<br /></p>
  <span style="font-family: courier new,courier;">
 <pre>
<tt> 60 00 00 15 00 40 06 2A  20 01 0D B8 00 C0 A0 01 </tt>
<tt> 00 00 00 00 00 00 00 01  20 01 0D B8 A3 E7 A0 01 </tt>
<tt> 00 00 00 00 00 00 C4 D9 </tt>
 
 </span>
Note : Les valeurs ci-dessus sont données en hexadécimal, et en ligne de 16 octets (soit 128 bits). 
Conseil: Il peut être avantageux pour certain champ de décomposer la valeur héxadécimale en binaire. Le format de l'en-tête du paquet IPv6 est donné dans le document compagnon mais également dans le RFC 2460. Le schéma dans le RFC 2460 est repris ci-dessous.

Utilisation du format d'un en-tête: Le format de l'en-tête du paquet IPv6 ci-dessous se lit comme une représentation en mémoire pour des mots de 32 bits. Chaque ligne représente une "case" mémoire. Chaque tiret ("-") représente un bit. Il y a donc sur une ligne 32 bits (car 32 tirets). Nous rappelons qu'un mot de 32 bits est équivalent à 4 octets et qu'un octet se représente par 2 chiffres hexadecimaux. Si cela vous semble encore obscur, re-voyez l'activité 12.
Par exemple, le champ version est codé sur 4 bits et occupe la première position dans le premier mot de 32 bits. La valeur du champ version est indiquée par le premier chiffre (4 bits) du premier mot de 32 bits de l'en-tête d'un paquet IP.


   0             7               15                              31 bits
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |Version| Traffic Class |           Flow Label                  |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |         Payload Length        |  Next Header  |   Hop Limit   |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                                                               +
   |                                                               |
   +                         Source Address                        +
   |                                                               |
   +                                                               +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   +                                                               +
   |                                                               |
   +                      Destination Address                      +
   |                                                               |
   +                                                               +
   |                                                               |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 

 
Note : Pour les questions qui suivent, la valeur d'un champ est à donner en hexadécimal, avec le préfixe 0x, ou en décimal. 


A21E01 : Quelle est la valeur du champ Version ?

<stringresponse type="ci" answer="6">
 <additional_answer>0x6</additional_answer>
 <additional_answer>0x06</additional_answer>
 <textline label="A21E01" size="20"/>
</stringresponse>

A21E02 : Quelle est la valeur du champ Classe de trafic ?

<stringresponse type="ci" answer="0">
 <additional_answer>0x0</additional_answer>
 <additional_answer>0x00</additional_answer>
 <textline label="A21E02" size="20"/>
</stringresponse>

A21E03 : Quelle est la valeur du champ Identificateur de flux ?

<stringresponse type="ci" answer="21">
 <additional_answer>0x15</additional_answer>
 <additional_answer>0x00015</additional_answer>
 <textline label="A21E03" size="20"/>
</stringresponse>

A21E04 : Quelle est la valeur du champ Longueur de donnée ?

<stringresponse answer="64">
 <additional_answer>0x40</additional_answer>
 <additional_answer>0x0040</additional_answer>
 <textline label="A21E04" size="20"/>
</stringresponse>

A21E05 : Quelle est la valeur du champ En-tête suivant ?

<stringresponse answer="6">
 <additional_answer>0x6</additional_answer>
 <additional_answer>0x06</additional_answer>
 <textline label="A21E05" size="20"/>
</stringresponse>

A21E06 : À quel protocole la valeur du champ En-tête suivant fait-elle référence ?

<stringresponse answer="TCP" type="ci" >
 <textline label="A21E06" size="20"/>
</stringresponse>

A21E07 : Quelle est la valeur du champ Nombre maximal de sauts ?

<stringresponse answer="0x2A">
 <additional_answer>42</additional_answer>
 <textline label="A21E07" size="20"/>
</stringresponse>

<script type="loncapa/python">

import socket

def test_address(expect, ans):

   try:
       a = socket.inet_pton(socket.AF_INET6, expect)
       b = socket.inet_pton(socket.AF_INET6, ans)
       return a == b
   except socket.error:
       return False

</script>

A21E08 : Quelle est l'adresse correspondant à la valeur du champ Adresse source ?

 <customresponse cfn="test_address" expect="2001:db8:c0:a001::1">  
   <textline size="40" correct_answer="11" label="Integer #1"/>
</customresponse>

A21E09 : Quelle est l'adresse correspondant à la valeur du champ Adresse destination ?

 <customresponse cfn="test_address" expect="2001:db8:a3e7:a001::c4d9">
   <textline size="40" correct_answer="11" label="Integer #2"/>
</customresponse>
<solution>

Identification des champs de l'en-tête IPv6

     Cette solution inclue l'en-tête TCP qui n'était pas présent dans l'énoncé.

 </solution>
</problem>

</pre>

Personal tools