En-tête IPv6 et extension headers
Définition
L'en-tête IPv6 est la structure fixe de 40 octets placée au début de chaque paquet IPv6. Contrairement à l'en-tête IPv4 (20–60 octets, variable), l'en-tête IPv6 est simplifié et de taille fixe. Les fonctionnalités optionnelles sont déplacées dans des extension headers chaînés après l'en-tête principal.
Contexte
La certification CCST couvre la structure de l'en-tête IPv6 pour comprendre les différences fondamentales avec IPv4 : pas de checksum, pas de fragmentation par les routeurs, et un traitement plus rapide grâce à la taille fixe.
Détails techniques
En-tête IPv6 principal (40 octets)
| Champ | Taille | Description |
|---|---|---|
| Version | 4 bits | Toujours 6 |
| Traffic Class | 8 bits | Équivalent du ToS/DSCP en IPv4 (QoS) |
| Flow Label | 20 bits | Identifie un flux pour un traitement spécial |
| Payload Length | 16 bits | Taille des données après l'en-tête (max 65 535 octets) |
| Next Header | 8 bits | Type du prochain en-tête (extension ou protocole transport) |
| Hop Limit | 8 bits | Équivalent du TTL IPv4, décrémenté à chaque routeur |
| Source Address | 128 bits | Adresse IPv6 de l'émetteur |
| Destination Address | 128 bits | Adresse IPv6 du destinataire |
Comparaison avec l'en-tête IPv4
| Caractéristique | IPv4 | IPv6 |
|---|---|---|
| Taille de l'en-tête | 20–60 octets (variable) | 40 octets (fixe) |
| Checksum | Oui | Non (délégué aux couches supérieures) |
| Fragmentation | Par les routeurs | Uniquement par la source |
| Options | Dans l'en-tête (Header Length variable) | Extension headers séparés |
| Adresses | 32 bits (4 octets) | 128 bits (16 octets) |
| Champ TTL | TTL | Hop Limit |
Extension headers
Les extension headers sont chaînés via le champ Next Header de l'en-tête précédent :
En-tête IPv6 (NH=43) → Routing Header (NH=44) → Fragment Header (NH=6) → TCP
| Next Header Value | Extension Header | Usage |
|---|---|---|
| 0 | Hop-by-Hop Options | Options traitées par chaque routeur |
| 43 | Routing | Routage source (liste de nœuds intermédiaires) |
| 44 | Fragment | Fragmentation (par la source uniquement) |
| 50 | ESP | IPsec Encapsulating Security Payload |
| 51 | AH | IPsec Authentication Header |
| 60 | Destination Options | Options traitées par le destinataire final |
| 6 | TCP | Protocole de transport TCP |
| 17 | UDP | Protocole de transport UDP |
| 58 | ICMPv6 | Messages de contrôle IPv6 |
Fragmentation en IPv6
Contrairement à IPv4, les routeurs IPv6 ne fragmentent jamais les paquets. Si un paquet est trop grand :
- Le routeur envoie un message ICMPv6 Packet Too Big avec la MTU du lien
- La source réduit la taille de ses paquets (Path MTU Discovery)
- Si nécessaire, la source utilise le Fragment Extension Header pour fragmenter
Exemple concret
Un paquet IPv6 traverse un lien dont la MTU est 1280 octets (minimum IPv6). Le routeur envoie un ICMPv6 Packet Too Big au PC source. Le PC ajuste sa MTU à 1280 et retransmet. L'en-tête IPv6 fixe (40 octets) + l'en-tête TCP (20 octets) laissent 1220 octets de données applicatives par paquet.