Difference between revisions of "Exemples d'extensions"
From Livre IPv6
(→Exemple de fragmentation) |
|||
(11 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | {{suivi |Les extensions|Les extensions|Checksum au niveau transport|Checksum au niveau transport}} | ||
+ | |||
== Exemple de routage par la source == | == Exemple de routage par la source == | ||
Le paquet suivant a été capturé lors de l'ouverture d'une connexion telnet. La commande telnet permet de spécifier des paramètres de routage par la source. Ainsi <tt>telnet @routeur1@destination</tt> permet un routage libéral vers la destination en passant par le routeur intermédiaire routeur1. | Le paquet suivant a été capturé lors de l'ouverture d'une connexion telnet. La commande telnet permet de spécifier des paramètres de routage par la source. Ainsi <tt>telnet @routeur1@destination</tt> permet un routage libéral vers la destination en passant par le routeur intermédiaire routeur1. | ||
Line 22: | Line 24: | ||
Options TCP | Options TCP | ||
− | 0000: | + | ''0000: 6<font color="blue">0 0</font>0 00 00 <font color="blue">00 40</font> 2b <font color="blue">40</font> 3f fe 03 02 00 12 00 02'' |
− | 0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05 | + | ''0010: 00 00 00 00 00 00 00 13 <font color="blue">3f fe 03 02 00 12 00 05</font>'' |
− | 0020: 02 a0 c9 ff fe aa 22 01|06 02 00 01 00 00 00 00 | + | ''0020: <font color="blue">02 a0 c9 ff fe aa 22 01</font>|06 <font color="blue">02</font> 00 <font color="blue">01</font> 00 00 00 00'' |
− | 0030: 3f fe 03 05 10 02 00 01 02 00 c0 ff fe 11 cb a0| | + | ''0030: <font color="blue">3f fe 03 05 10 02 00 01 02 00 c0 ff fe 11 cb a0</font>|'' |
− | 0040: ff b1 00 17 17 10 7e 57 00 00 00 00 a0 02 40 00 | + | ''0040: ff b1 00 17 17 10 7e 57 00 00 00 00 a0 02 40 00'' |
− | 0050: 35 6e 00 00 02 04 05 a0 01 03 03 00 01 01 08 0a | + | ''0050: 35 6e 00 00 02 04 05 a0 01 03 03 00 01 01 08 0a'' |
− | 0060: 00 9a 1d 04 00 00 00 0b | + | ''0060: 00 9a 1d 04 00 00 00 0b'' |
− | Dans l'en-tête IPv6, le numéro de protocole 0x2b indique qu'une extension de routage est insérée. Noter que le champ longueur des données utiles prend en compte la longueur de l'extension. Le champ adresse de destination de l'en-tête IPv6 contient l'adresse du routeur intermédiaire. | + | Dans l'en-tête IPv6, le numéro de protocole <tt>0x2b</tt> indique qu'une extension de routage est insérée. Noter que le champ longueur des données utiles prend en compte la longueur de l'extension. Le champ adresse de destination de l'en-tête IPv6 contient l'adresse du routeur intermédiaire. |
− | La partie extension commence par l'encapsulation suivante, ici 0x06 pour TCP. Le champ suivant (0x02) donne la longueur de l'extension en mots de 64 bits. La partie données contient donc une seule adresse IPv6. Il s'agit de la destination. Le type de routage vaut 0 et le champ segment restant vaut 1 et pointe vers l'adresse de destination. | + | La partie extension commence par l'encapsulation suivante, ici <tt>0x06</tt> pour TCP. Le champ suivant (<tt>0x02</tt>) donne la longueur de l'extension en mots de 64 bits. La partie données contient donc une seule adresse IPv6. Il s'agit de la destination. Le type de routage vaut <tt>0</tt> et le champ segment restant vaut <tt>1</tt> et pointe vers l'adresse de destination. |
== Exemple de fragmentation == | == Exemple de fragmentation == | ||
Line 52: | Line 54: | ||
Port Source : 0xf38e Port Destination : 0x000d | Port Source : 0xf38e Port Destination : 0x000d | ||
Longueur : 3508 (0x0db4) Checksum : 0xc227 | Longueur : 3508 (0x0db4) Checksum : 0xc227 | ||
− | 0000: | + | |
− | 0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05 | + | ''0000: 6<font color="blue">0 0</font>0 00 00 <font color="blue">05 b0</font> 2c <font color="blue">40</font> 3f fe 03 02 00 12 00 02'' |
− | 0020: 02 a0 c9 ff fe aa 22 01|11 | + | ''0010: 00 00 00 00 00 00 00 13 <font color="blue">3f fe 03 02 00 12 00 05</font>'' |
− | 0030: f3 8e 00 0d 0d b4 c2 27 30 31 32 33 34 35 36 37 | + | ''0020: <font color="blue">02 a0 c9 ff fe aa 22 01</font>|11 <font color="blue">02</font> 00 01 <font color="blue">00 00 00 8e</font>|'' |
− | 0040: 38 39 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e | + | ''0030: f3 8e 00 0d 0d b4 c2 27 30 31 32 33 34 35 36 37'' |
− | 0050: 4f 50 51 52 53 54 55 56 57 58 59 5a 61 62 63 64 | + | ''0040: 38 39 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e'' |
− | 0060: 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 | + | ''0050: 4f 50 51 52 53 54 55 56 57 58 59 5a 61 62 63 64'' |
− | 0070: ... | + | ''0060: 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74'' |
+ | ''0070: ...'' | ||
− | Le bit M de l'option de fragmentation est à 1, un autre fragment va suivre. | + | Le bit <tt>M</tt> de l'option de fragmentation est à <tt>1</tt>, un autre fragment va suivre. |
IPv6 | IPv6 | ||
Line 72: | Line 75: | ||
En-tête Suivant : 17 (0x11) UDP | En-tête Suivant : 17 (0x11) UDP | ||
Longueur Extension : 0x02 => 128 bits | Longueur Extension : 0x02 => 128 bits | ||
− | Place du Fragment : | + | Place du Fragment : 0x05a8 bit M =1 |
Identificateur : 0x0000008e | Identificateur : 0x0000008e | ||
− | 0000: | + | ''0000: 6<font color="blue">0 0</font>0 00 00 <font color="blue">05 b0</font> 2c <font color="blue">40</font> 3f fe 03 02 00 12 00 02'' |
− | 0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05 | + | ''0010: 00 00 00 00 00 00 00 13 <font color="blue">3f fe 03 02 00 12 00 05</font>'' |
− | 0020: 02 a0 c9 ff fe aa 22 01|11 | + | ''0020: <font color="blue">02 a0 c9 ff fe aa 22 01</font>|11 <font color="blue">02</font> 05 a9 <font color="blue">00 00 00 8e</font>|'' |
− | 0030: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 | + | ''0030: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54'' |
− | 0040: 55 56 57 58 59 5a 61 62 63 64 65 66 67 68 69 6a | + | ''0040: 55 56 57 58 59 5a 61 62 63 64 65 66 67 68 69 6a'' |
− | 0050: 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a | + | ''0050: 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a'' |
− | 0060: 30 31 32 33 34 35 36 37 38 39 41 42 43 44 45 46 | + | ''0060: 30 31 32 33 34 35 36 37 38 39 41 42 43 44 45 46'' |
− | 0070: 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 | + | ''0070: 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56'' |
− | + | ''0080: ...'' | |
+ | |||
+ | Ce fragment est la suite du précédent puisque la valeur de l'identificateur est la même (<tt>0x0000008e</tt>), le bit <tt>M</tt> étant à 1, d'autres fragments vont suivre. Le champ Place du fragment contient 1 448. Si l'on prend en compte la taille des extensions (8 octets), on retrouve bien la taille des informations utiles (1 456) transportées dans le paquet précédent. | ||
− | + | {{suivi |Les extensions|Les extensions|Checksum au niveau transport|Checksum au niveau transport}} |
Latest revision as of 22:07, 20 February 2007
Les extensions | Table des matières | Checksum au niveau transport |
Exemple de routage par la source
Le paquet suivant a été capturé lors de l'ouverture d'une connexion telnet. La commande telnet permet de spécifier des paramètres de routage par la source. Ainsi telnet @routeur1@destination permet un routage libéral vers la destination en passant par le routeur intermédiaire routeur1.
IPv6 Version : 6 Classe : 00 Label : 00000 Longueur : 64 octets (0x0040) Protocole : 43 (0x2b) En-tête de routage Nombre de sauts : 64 (0x40) Source : 3ffe:302:12:2::13 Desti. : 3ffe:302:12:5:2a0:c9ff:feaa:2201 (routeur1) Routage En-tête Suivant : 06 (0x06) TCP Longueur Extension : 0x02 => 128 bits Type de routage = 0x00 (Routage par la source) Segments restant : 0x01. Réservé 0x00 Réservé : 0x00000000 Adresse suivante : 3ffe:305:1002:1:200:c0ff:fe11:cba0 (destination) TCP Port Source, 0xffb1 Port Destination :0x0017 (Telnet) Sequence : 0x17107e57 Acquittement : 0x00000000 Offset : 0xa Drapeau : 0x02 (SYN) Fenêtre : 0x4000 Checksum : 0x356e Ptr Msg Urgent : 0x0000 Options TCP 0000: 60 00 00 00 00 40 2b 40 3f fe 03 02 00 12 00 02 0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05 0020: 02 a0 c9 ff fe aa 22 01|06 02 00 01 00 00 00 00 0030: 3f fe 03 05 10 02 00 01 02 00 c0 ff fe 11 cb a0| 0040: ff b1 00 17 17 10 7e 57 00 00 00 00 a0 02 40 00 0050: 35 6e 00 00 02 04 05 a0 01 03 03 00 01 01 08 0a 0060: 00 9a 1d 04 00 00 00 0b
Dans l'en-tête IPv6, le numéro de protocole 0x2b indique qu'une extension de routage est insérée. Noter que le champ longueur des données utiles prend en compte la longueur de l'extension. Le champ adresse de destination de l'en-tête IPv6 contient l'adresse du routeur intermédiaire.
La partie extension commence par l'encapsulation suivante, ici 0x06 pour TCP. Le champ suivant (0x02) donne la longueur de l'extension en mots de 64 bits. La partie données contient donc une seule adresse IPv6. Il s'agit de la destination. Le type de routage vaut 0 et le champ segment restant vaut 1 et pointe vers l'adresse de destination.
Exemple de fragmentation
Les paquets suivants correspondent à l'envoi d'un datagramme de longueur 3 500 octets en UDP alors que le MTU de l'interface est 1 500.
IPv6 Version : 6 Classe : 00 Label : 00000 Longueur : 1456 octets (0x05b0) Proto. : 44 (0x2c) En-tête de frag. Nombre de sauts : 64 (0x40) Source : 3f fe 03 02 00 12 00 02 00 00 00 00 00 00 00 13 Desti. : 3f fe 03 02 00 12 00 05 02 a0 c9 ff fe aa 22 01 Fragmentation En-tête Suivant : 17 (0x11) UDP Longueur Extension : 0x02 => 128 bits Place du Fragment : 0x0000 bit M =1 Identificateur : 0x0000008e UDP Port Source : 0xf38e Port Destination : 0x000d Longueur : 3508 (0x0db4) Checksum : 0xc227 0000: 60 00 00 00 05 b0 2c 40 3f fe 03 02 00 12 00 02 0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05 0020: 02 a0 c9 ff fe aa 22 01|11 02 00 01 00 00 00 8e| 0030: f3 8e 00 0d 0d b4 c2 27 30 31 32 33 34 35 36 37 0040: 38 39 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 0050: 4f 50 51 52 53 54 55 56 57 58 59 5a 61 62 63 64 0060: 65 66 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 0070: ...
Le bit M de l'option de fragmentation est à 1, un autre fragment va suivre.
IPv6 Version : 6 Classe : 00 Label : 00000 Longueur : 1456 octets (0x05b0) Proto. : 44 (0x2c) En-tête de frag. Nombre de sauts : 64 (0x40) Source : 3f fe 03 02 00 12 00 02 00 00 00 00 00 00 00 13 Desti. : 3f fe 03 02 00 12 00 05 02 a0 c9 ff fe aa 22 01 Fragmentation En-tête Suivant : 17 (0x11) UDP Longueur Extension : 0x02 => 128 bits Place du Fragment : 0x05a8 bit M =1 Identificateur : 0x0000008e 0000: 60 00 00 00 05 b0 2c 40 3f fe 03 02 00 12 00 02 0010: 00 00 00 00 00 00 00 13 3f fe 03 02 00 12 00 05 0020: 02 a0 c9 ff fe aa 22 01|11 02 05 a9 00 00 00 8e| 0030: 45 46 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 0040: 55 56 57 58 59 5a 61 62 63 64 65 66 67 68 69 6a 0050: 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 77 78 79 7a 0060: 30 31 32 33 34 35 36 37 38 39 41 42 43 44 45 46 0070: 47 48 49 4a 4b 4c 4d 4e 4f 50 51 52 53 54 55 56 0080: ...
Ce fragment est la suite du précédent puisque la valeur de l'identificateur est la même (0x0000008e), le bit M étant à 1, d'autres fragments vont suivre. Le champ Place du fragment contient 1 448. Si l'on prend en compte la taille des extensions (8 octets), on retrouve bien la taille des informations utiles (1 456) transportées dans le paquet précédent.
Les extensions | Table des matières | Checksum au niveau transport |