En jouant avec les règles de filtrage IPv4 et IPv6 de Netfilter, je perd régulièrement ma connectivité IPv6. J'ai supprimé mes règles de filtrage et lancé sudo tcpdump -p -i any -s 0 -w snif.pcap 'ip6' pour observer quels paquets sont envoyés au routeur pour obtenir une adresse IPv6. Pour renouveller mon adresse IPv6, j'ai démonté (sudo ifconfig eth0 down) puis remonté (sudo ifconfig eth0 up) mon interface réseau.

Questions

En 1,5 secondes, Linux envoie 3 paquets ICMPv6 en multicast :

  • (t=0,0 sec) Multicast Listener Report Message v2 (type 143)
    • De :: vers ff02::16:
    • Avec « Changed to exclude: ff02::1:ffab:79ed »
    • Annonce au routeur qu'on écoute sur le canal multicast « ff02::16: »
  • (t=0,5 sec) Neighbor solicitation (type 135)
    • De :: vers ff02::1:ffab:79ed:
    • Avec « Target: fe80::216:76ff:feab:79ed »
    • Vérifie auprès des voisins que mon adresse de lien (fe80::216:76ff:feab:79ed) est unique : qu'elle n'est utilisée par aucun autre équipement
  • (t=1,5 sec) Router solicitation (type 133)
    • De fe80::216:76ff:feab:79ed vers ff02::2:
    • Demande au routeur les informations sur le réseau IPv6

Réponse

Le routeur (dans mon cas, une Freebox) répond en 10 ms par un message ICMPv6 « Router advertisement » (type 134), de fe80::207:cbff:fe3c:edd8 vers ff02::1. Les informations les plus importantes sont celles relatives au préfixe : longueur (64), préfixe (2a01:e35:8a04:25b0::), durée de vie/durée de vie préférée (86400 secondes = 1 jour). Le paquet contient également le MTU (1480 octets) et l'adresse MAC du routeur.

Création de l'adresse

Avec ses informations, mon ordinateur peut calculer sa propre adresse IPv6 publique à partir du préfixe (2a01:e35:8a04:25b0::/64) et de l'adresse MAC de mon interface réseau (00:16:76:AB:79:ED). L'adresse résultante est 2a01:e35:8a04:25b0:216:76ff:feab:79ed.

Enfin, un paquet ICMPv6 de type Neighbor solicitation est envoyé aux voisins pour vérifier que la nouvelle adresse (2a01:e35:8a04:25b0:216:76ff:feab:79ed) est bien unique.

Pour plus d'informations, lisez l'article Découverte de voisins.