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)