Difference between revisions of "MOOC:Auto-eval Act24-exercice"
From Livre IPv6
| Line 2: | Line 2: | ||
----  | ----  | ||
__NOTOC__  | __NOTOC__  | ||
| − | + | =Session 3=  | |
| − | + | ||
| − | + | ||
| − | + | ||
<pre>  | <pre>  | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| + |  <problem>  | ||
| + |  <p>Cette exercice reprend l'idée de celui que vous avez fait dans l'activité 21. Nous avons ici un autre en-tête IPv6 que nous vous proposon de décoder : <br/></p>  | ||
| + |   <span style="font-family: courier new,courier;">  | ||
| + |     <pre>  | ||
| + |       <tt> 60 00 00 00 04 7E 2B 1A  20 01 0D B8 AB D0 00 0F </tt>  | ||
| + |       <tt> 00 00 00 00 FF 01 00 01  20 01 0D B8 00 78 02 34 </tt>  | ||
| + |       <tt> DC 20 8E EB 23 42 52 DF  06 04 00 01 00 00 00 00 </tt>  | ||
| + |       <tt> 20 01 0D B8 00 78 00 01  00 00 00 00 00 00 00 01 </tt>  | ||
| + |       <tt> 20 01 0D B8 00 82 02 03  00 00 00 00 00 00 03 85 </tt>  | ||
| + |       <tt> 00 14 00 50 00 00 00 00  00 00 00 00 50 02 20 00 </tt>  | ||
| + |       <tt> 83 20 00 00                                      </tt>  | ||
| + |     </pre>  | ||
| + |   </span>  | ||
| + |   <br/>  | ||
| + |   <i>Note : Les données ci-dessus sont représentées en hexadécimal, une ligne pour 16 octets, soit 128 bits.</i><br/>  | ||
| + |   <b>Conseil:</b> Vous devez vous aider avec le document compagnon mais également avec le RFC 2460 pour retrouver le format du paquet et des extensions IPv6.  Vous trouverez ci-dessous le rappel du format du paquet IPv6 dont le schéma a été repris du RFC 2460. <br />  | ||
| + |   <span style="font-family: courier new,courier;">  | ||
| + |  <pre>  | ||
| + |    0             7               15                              31 bits  | ||
| + |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+  | ||
| + |    |Version| Traffic Class |           Flow Label                  |  | ||
| + |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+  | ||
| + |    |         Payload Length        |  Next Header  |   Hop Limit   |  | ||
| + |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+  | ||
| + |    |                                                               |  | ||
| + |    +                                                               +  | ||
| + |    |                                                               |  | ||
| + |    +                         Source Address                        +  | ||
| + |    |                                                               |  | ||
| + |    +                                                               +  | ||
| + |    |                                                               |  | ||
| + |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+  | ||
| + |    |                                                               |  | ||
| + |    +                                                               +  | ||
| + |    |                                                               |  | ||
| + |    +                      Destination Address                      +  | ||
| + |    |                                                               |  | ||
| + |    +                                                               +  | ||
| + |    |                                                               |  | ||
| + |    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+  | ||
| + |  </pre>  | ||
| + |  </span>  | ||
| + |  <i>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. </i>  | ||
| + |   <br/>  | ||
| + |   <br/>  | ||
| + |   <p>A24Ex01 : Quelle est la valeur du champ <b>En-tête suivant</b> dans l'en-tête du paquet IPv6 ?</p>  | ||
| + |   <stringresponse type="ci" answer="43">  | ||
| + |     <additional_answer>0x2b</additional_answer>  | ||
| + |     <textline label="A24Ex01" size="20"/>  | ||
| + |   </stringresponse>  | ||
| + |   <br/>  | ||
| + |   <p>A24Ex02 : À quel protocole la valeur de ce champ <b>En-tête suivant</b> du fait-elle référence ?</p>  | ||
| + |    <optionresponse>  | ||
| + |     <optioninput label="A24Ex02" options="('Hop-by-Hop extension','Routing extension','Fragment extension','Destinatio extensionn','TCP protocol','UDP protocol')" correct="Next Header"/>  | ||
| + |   </optionresponse>     | ||
| + |    <br/>  | ||
<script type="loncapa/python">  | <script type="loncapa/python">  | ||
import socket  | import socket  | ||
| Line 82: | Line 74: | ||
</script>  | </script>  | ||
| − | <p>  | + |   <p>A24Ex03 : Quelle est l'adresse correspondante à la valeur du champ <b>Adresse destination</b>  dans l'en-tête du paquet IPv6 ?</p>  | 
| − | + |   <customresponse cfn="test_address" expect="2001:db8:78:234:dc20:8eeb:2342:52df">  | |
| − | + |     <textline size="40" correct_answer="11" label="Integer #2"/>  | |
| − | + |     <br/>  | |
| − | + |   </customresponse>  | |
| − | <customresponse cfn="test_address" expect="2001:db8:78:234:dc20:8eeb:2342:52df">  | + |   <p>A24Ex04 : Quel est le nom du premier champ de l'en-tête suivant l'en-tête du paquet IPv6?</p>  | 
| − | + |   <optionresponse>  | |
| − | </customresponse>  | + |     <optioninput label="A24Ex04" options="('Version','Next Header','Source port','Destination port','Checksum')" correct="Next Header"/>  | 
| − | + |   </optionresponse>  | |
| − | <p>  | + |   <br/>  | 
| − | <optionresponse>  | + |   <p>A24Ex05 : Quelle est la valeur de ce champ ?</p>  | 
| − | + |   <stringresponse answer="0x06">  | |
| − | </optionresponse>  | + |     <additional_answer>6</additional_answer>  | 
| − | <br />  | + |     <additional_answer>0x6</additional_answer>  | 
| − | <p>  | + |     <textline label="A24Ex05" size="20"/>  | 
| − | <stringresponse answer="0x06">  | + |   </stringresponse>  | 
| − | + |   <br/>  | |
| − | + |   <p>A24Ex06 : Quelle est la valeur du deuxième champ de cet en-tête ?</p>  | |
| − | + |   <stringresponse answer="0x4">  | |
| − | </stringresponse>  | + |     <additional_answer>4</additional_answer>  | 
| − | <br />  | + |     <additional_answer>0x04</additional_answer>  | 
| − | <p>  | + |     <textline label="A24Ex06" size="20"/>  | 
| − | <stringresponse answer="  | + |   </stringresponse>  | 
| − | + |   <br/>  | |
| − | + |   <p>A24Ex07 : Quelle est la valeur du quatrième champ de cet en-tête ?</p>  | |
| − | + |   <stringresponse answer="0x1">  | |
| − | </stringresponse>  | + |     <additional_answer>1</additional_answer>  | 
| − | <br />  | + |     <additional_answer>0x01</additional_answer>  | 
| − | <p>  | + |     <textline label="A24Ex07" size="20"/>  | 
| − | <stringresponse answer="0x1">  | + |   </stringresponse>  | 
| − | + |   <br/>  | |
| − | + |   <p>A24Ex08 : Que contient le reste de cet en-tête ?</p>  | |
| − | + |   <optionresponse>  | |
| − | </stringresponse>  | + |     <optioninput label="A24Ex08" options="('des adresses IPv6','des données applicatives','un nouvel en-tête','une somme de contrôle')" correct="des adresses IPv6"/>  | 
| − | <br />  | + |   </optionresponse>  | 
| − | <p>  | + |    <br/>  | 
| − | <optionresponse>  | + |  </problem>  | 
| − | + | ||
| − | </optionresponse  | + | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | <br />  | + | |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | </problem>  | + | |
</pre>  | </pre>  | ||
----  | ----  | ||
| + | |||
| + | =Session 2=  | ||
  60 00 00 00 04 7E 2B 1A  20 01 0D B8 AB D0 00 0F  |   60 00 00 00 04 7E 2B 1A  20 01 0D B8 AB D0 00 0F  | ||
Revision as of 08:01, 5 April 2017
Session 3
 <problem>
 <p>Cette exercice reprend l'idée de celui que vous avez fait dans l'activité 21. Nous avons ici un autre en-tête IPv6 que nous vous proposon de décoder : <br/></p>
  <span style="font-family: courier new,courier;">
    <pre>
      <tt> 60 00 00 00 04 7E 2B 1A  20 01 0D B8 AB D0 00 0F </tt>
      <tt> 00 00 00 00 FF 01 00 01  20 01 0D B8 00 78 02 34 </tt>
      <tt> DC 20 8E EB 23 42 52 DF  06 04 00 01 00 00 00 00 </tt>
      <tt> 20 01 0D B8 00 78 00 01  00 00 00 00 00 00 00 01 </tt>
      <tt> 20 01 0D B8 00 82 02 03  00 00 00 00 00 00 03 85 </tt>
      <tt> 00 14 00 50 00 00 00 00  00 00 00 00 50 02 20 00 </tt>
      <tt> 83 20 00 00                                      </tt>
    
</span>
Note : Les données ci-dessus sont représentées en hexadécimal, une ligne pour 16 octets, soit 128 bits.
Conseil: Vous devez vous aider avec le document compagnon mais également avec le RFC 2460 pour retrouver le format du paquet et des extensions IPv6. Vous trouverez ci-dessous le rappel du format du paquet IPv6 dont le schéma a été repris du RFC 2460.
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.
A24Ex01 : Quelle est la valeur du champ En-tête suivant dans l'en-tête du paquet IPv6 ?
<stringresponse type="ci" answer="43"> <additional_answer>0x2b</additional_answer> <textline label="A24Ex01" size="20"/> </stringresponse>
A24Ex02 : À quel protocole la valeur de ce champ En-tête suivant du fait-elle référence ?
  <optionresponse>
   <optioninput label="A24Ex02" options="('Hop-by-Hop extension','Routing extension','Fragment extension','Destinatio extensionn','TCP protocol','UDP protocol')" correct="Next Header"/>
 </optionresponse>   
  
<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>
A24Ex03 : Quelle est l'adresse correspondante à la valeur du champ Adresse destination dans l'en-tête du paquet IPv6 ?
<customresponse cfn="test_address" expect="2001:db8:78:234:dc20:8eeb:2342:52df"> <textline size="40" correct_answer="11" label="Integer #2"/>
</customresponse>
A24Ex04 : Quel est le nom du premier champ de l'en-tête suivant l'en-tête du paquet IPv6?
 <optionresponse>
   <optioninput label="A24Ex04" options="('Version','Next Header','Source port','Destination port','Checksum')" correct="Next Header"/>
 </optionresponse>
 
  A24Ex05 : Quelle est la valeur de ce champ ?
<stringresponse answer="0x06"> <additional_answer>6</additional_answer> <additional_answer>0x6</additional_answer> <textline label="A24Ex05" size="20"/> </stringresponse>
A24Ex06 : Quelle est la valeur du deuxième champ de cet en-tête ?
<stringresponse answer="0x4"> <additional_answer>4</additional_answer> <additional_answer>0x04</additional_answer> <textline label="A24Ex06" size="20"/> </stringresponse>
A24Ex07 : Quelle est la valeur du quatrième champ de cet en-tête ?
<stringresponse answer="0x1"> <additional_answer>1</additional_answer> <additional_answer>0x01</additional_answer> <textline label="A24Ex07" size="20"/> </stringresponse>
A24Ex08 : Que contient le reste de cet en-tête ?
 <optionresponse>
   <optioninput label="A24Ex08" options="('des adresses IPv6','des données applicatives','un nouvel en-tête','une somme de contrôle')" correct="des adresses IPv6"/>
 </optionresponse>
 
</problem>
</pre>
Session 2
60 00 00 00 04 7E 2B 1A 20 01 0D B8 AB D0 00 0F 00 00 00 00 FF 01 00 01 20 01 0D B8 00 78 02 34 DC 20 8E EB 23 42 52 DF 06 04 00 01 00 00 00 00 20 01 0D B8 00 78 00 01 00 00 00 00 00 00 00 01 20 01 0D B8 00 82 02 03 00 00 00 00 00 00 03 85 00 14 00 50 00 00 00 00 00 00 00 00 50 02 20 00 83 20 00 00
Entête IPv6 avec extension à disséquer :
- Valeur Trafic Class (=0)
 - Valeur Flow Label (=0)
 - Longueur de donnée (0x04fe / 1150 octets)
 - Type de l'en-tête suivante (0x2b / Entête Routage)
 - Valeur Hop-Limit (0x1A / 26)
 - Adresse source (2001:db8:abd0:f::ff01:1
 - Adresse destination (2001:db8:78:234:dc20:8eeb:2342:52df)
 -  Extension
- Type de l'en-tête suivante (0x06 / TCP)
 - Valeur Routing Type (0)
 - Valeur Segment left (1)
 - Combien d'adresses IPv6 à suivre ? (2 car la longueur de l'extension est de 4 mots de 64bits)
 
 
