Lien-local
Un article de IPv6.
Adresses Globales | Table des matières | Identifiant d'interface |
Les adresses de type lien-local (link local use address) sont des adresses dont la validité est restreinte à un lien, c'est-à-dire l'ensemble de interfaces directement connectées sans routeur intermédiaire : par exemple machines branchées sur un même Ethernet, machines reliées par une connexion PPP, ou extrémités d'un tunnel. Les adresses lien-local sont configurées automatiquement à l'initialisation de l'interface et permettent la communication entre noeuds voisins. L'adresse est obtenue en concaténant le préfixe FE80::/64 aux 64 bits de l'identifiant d'interface.
Ces adresses sont utilisées par les protocoles de configuration d'adresse globale, de découverte de voisins (neighbor discovery) et de découverte de routeurs (router discovery). Ce sont de nouveaux dispositifs, le premier supplantant en particulier le protocole ARP (Address Resolution Protocol), qui permettent pas à un réseau local de se configurer automatiquement (voir Découverte de voisins).
Les adresses lien-local sont uniques à l'intérieur d'un lien. Le protocole de détection de duplication d'adresse (voir Détection d'adresse dupliquée) permet de s'en assurer. Par contre la duplication d'une adresse lien-local entre deux liens différents, ou entre deux interfaces d'un même noeud est autorisée.
Un routeur ne doit en aucun cas retransmettre un paquet ayant pour adresse source ou destination une adresse de type lien-local.
Le fait que ces adresses aient une portée très faible les limite dans la pratique au cas où un démarrage automatique (bootstrap) est nécessaire. Leur usage ne doit pas être généralisé dans les applications classiques en régime stabilisé.
Portée de l'adresse (scoped address)
Pour les adresses de type lien-local ou multicast qui ne permettent de désigner sans ambiguïté l'interface de sortie, il est nécessaire de la spécifier en ajoutant à la fin le nom de l'interface voulue, précédé du caractère "%".
Ainsi dans l'exemple suivant, issue d'une machine BSD :
>ping6 fe80::200:c0ff:fee4:caa0 PING6 fe80::1%lo0 --> fe80::200:c0ff:fee4:caa0 ping6: sendmsg: No route to host ping6: wrote fe80::200:c0ff:fee4:caa0 16 chars, ret=-1 ping6: sendmsg: No route to host ping6: wrote fe80::200:c0ff:fee4:caa0 16 chars, ret=-1 ^C --- fe80::200:c0ff:fee4:caa0 ping6 statistics --- 2 packets transmitted, 0 packets received, 100% packet loss
La station est incapable de déterminer l'interface de sortie, par contre si l'on utilise la même adresse de destination en précisant l'interface de sortie :
>ping6 fe80::200:c0ff:fee4:caa0%xl0 PING6 fe80::2b0:d0ff:fe3b:e565%xl0 --> fe80::200:c0ff:fee4:caa0%xl0 16 bytes from fe80::200:c0ff:fee4:caa0%xl0, icmp_seq=0 hlim=255 time=1 ms 16 bytes from fe80::200:c0ff:fee4:caa0%xl0, icmp_seq=1 hlim=255 time=1.067 ms ^C --- fe80::200:c0ff:fee4:caa0%xl0 ping6 statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max = 1/1.033/1.067 ms
on obtient le résultat attendu.
Adresses Globales | Table des matières | Identifiant d'interface |