Autoconfiguration IPv6 et neighbor discovery
Définition
IPv6 permet a un equipement de se configurer automatiquement grace a deux mecanismes :
- SLAAC (Stateless Address Autoconfiguration) : l'hote genere sa propre adresse a partir d'un prefixe annonce par le routeur
- Neighbor Discovery Protocol (NDP) : protocole ICMPv6 qui remplace ARP, DHCP discover et ICMP Redirect d'IPv4
Contexte
CCST demande de comprendre comment un poste IPv6 obtient son adresse sans serveur DHCP, comment il decouvre sa passerelle et comment il resout les adresses MAC sans ARP.
Details techniques
SLAAC — Autoconfiguration sans etat
Processus en 3 etapes :
| # | Etape | Description |
|---|---|---|
| 1 | L'hote genere une adresse link-local | FE80:: + Interface ID (EUI-64 ou aleatoire) |
| 2 | L'hote envoie un Router Solicitation (RS) | Multicast FF02::2 (tous les routeurs) |
| 3 | Le routeur repond avec un Router Advertisement (RA) | Contient le prefixe (ex: 2001:db8:1::/64), la duree de vie, les flags |
| 4 | L'hote construit son adresse globale | Prefixe du RA + Interface ID |
PC Routeur
|-- RS (FF02::2) ------------>|
| |
|<-- RA (prefixe, flags) -----| (aussi envoye periodiquement)
| |
Adresse: 2001:db8:1::21a:2bff:fe3c:4d5e/64
DAD — Duplicate Address Detection
Avant d'utiliser une adresse, l'hote verifie qu'elle n'est pas deja en usage :
- Envoyer un Neighbor Solicitation (NS) vers l'adresse cible (solicited-node multicast)
- Si aucune reponse → l'adresse est unique → OK
- Si une Neighbor Advertisement (NA) est recue → doublon → l'adresse est rejetee
Neighbor Discovery Protocol (NDP) — Messages ICMPv6
| Message | Type ICMPv6 | Direction | Role |
|---|---|---|---|
| Router Solicitation (RS) | 133 | Hote → routeurs | Demande de RA |
| Router Advertisement (RA) | 134 | Routeur → hotes | Annonce prefixe, gateway, flags |
| Neighbor Solicitation (NS) | 135 | Hote → multicast | Resolution MAC (remplace ARP) + DAD |
| Neighbor Advertisement (NA) | 136 | Hote → unicast | Reponse avec adresse MAC |
| Redirect | 137 | Routeur → hote | Indique un meilleur next-hop |
NDP vs ARP (IPv4)
| Fonction | IPv4 (ARP) | IPv6 (NDP) |
|---|---|---|
| Resolution MAC | ARP Request (broadcast) | NS (multicast cible) |
| Decouverte passerelle | DHCP ou config manuelle | RS / RA |
| Detection doublon | Gratuitous ARP (optionnel) | DAD (obligatoire) |
| Redirection | ICMP Redirect | ICMPv6 Redirect |
| Protocole | ARP (couche 2) | ICMPv6 (couche 3) |
Solicited-Node Multicast
Au lieu d'un broadcast (comme ARP), NDP utilise une adresse multicast sollicitee construite a partir des 24 derniers bits de l'adresse IPv6 :
Adresse IPv6 : 2001:db8:1::1234:00ab
Solicited-node : FF02::1:FF34:00AB
Seuls les hotes dont l'adresse se termine par 34:00AB ecoutent ce multicast → beaucoup plus efficace qu'un broadcast.
Adresse link-local automatique
Tout interface IPv6 active genere automatiquement une adresse link-local :
- Prefixe :
FE80::/10 - Interface ID : EUI-64 ou genere aleatoirement
- Utilisee pour : NDP, routage local, next-hop dans les tables de routage
Exemple concret
Un PC est branche sur un VLAN IPv6. Il genere immediatement une adresse link-local FE80::21a:2bff:fe3c:4d5e. Il envoie un RS en multicast. Le routeur repond avec un RA contenant le prefixe 2001:db8:1::/64. Le PC construit son adresse globale 2001:db8:1::21a:2bff:fe3c:4d5e/64, verifie par DAD qu'elle est unique, puis peut communiquer sur Internet.