DHCPv6

De Justine's wiki
Aller à la navigation Aller à la recherche

Configuration automatique des adresses sans état ICMPv6

Les adresses IPv6 qui sont configurée dynamiquement peuvent l'être de 2 façons :

  • SLAAC
  • DHCPv6

SLAAC

SLAAC permet à un périphérique de s'auto-configurer. ICMPv6 est au coeur de SLAAC, et il inclut des fonctions supplémentaires par rapport à ICMPv4. SLAAC utilise des messages d'annonce de routeur ICMPv6 pour fournir les informations d'adressage et d'autres informations de configuration qui seraient normalement fournies par un DHCP :

  • RS : Router Sollicitation, envoyé par un client lorsque celui-ci est configuré en SLAACpour demander un RA. Il est envoyé sur le groupe des routeurs FF02::2
  • RA : Router Anouncement envoyés par les routeurs toutes les 200 secondes ou en réponse à un RS; ils contiennent le préfixe et la longueur d'en-tête de l'adresse IPv6. Les clients utilisent ces informations pour s'auto-configurer. Ils sont envoyés sur le groupe de mutlidiffusion à tous les noeuds FF02::1

SLAAC est dit sans état car aucun service ne fait appel à un serveur. Aucun serveur quelles sont les adresses utilisées ou pas.

Fonctionnement de SLAAC

Pour qu'il puisse envoyer des RA, un routeur doit être activé en tant que routeur IPv6. Sur un routeur Cisco, cela se fait par la commande :

ipv6 unicast-routing

Ensuite, la logique suit l'image suivante :

Il est à noter que la création de l'ID interface peut se faire de deux façons :

  • Soit avec EUI-64 (cf IPv6 )
  • Soit par génération aléatoire


SLAAC et DHCPv6

Ce sont les paramètres indiqués dans le RA qui déterminent si un client est configuré pour obtenir automatiquement ses informations d'adressage par SLAAC, DHCPv6 ou les deux. Les RA contiennent deux indicateurs qui signalent l'option à utiliser par le client : l'indicateur de configuration des adresses générées (indicateur M) et l'indicateur de configuration autre (O). Différentes combinaisons d'indicateurs M et O permettent aux messages RA d'indiquer une des trois option d'adressage pour le périphérique, voir l'image :

SLAAC2.png

Quelle que soit l'option utilisée, d'après la RFC 4861 il faut faire une détection des adresses dupliquées (DAD) sur toutes les adresses de monodiffusion, y compris celles configurées via SLAAC ou DHCPv6. Bien entendu, l'OS peut choisir d'ignorer le contenu du RA et se configurer comme il le souhaite.

Rappel des indicateurs:

  • M : configuration des adresses générées
  • O : Autre

Nous allons détailler les 3 options :

Option SLAAC

C'est l'option par défaut sur les routeurs Cisco : les indicateur M et O sont tous les deux à 0. Le RA contient alors toutes les informations dont un ordinateur aurait besoin pour s'autoconfigurer.

Cette option indique au client d'utiliser exclusivement les informations fournies dans le message RA; aucune information supplémentaire n'est disponible auprès d'un serveur DHCPv6. Je ne détaillerais pas son fonctionnement ici, il est disponible dans les cours sur IPv6 et Cisco.

Côté routeur, les messages RA sont activés par rapport à une interface. Pour les remettre sur une interface, les indictauer M et O doivent retrouver leur valeur initiale par les commandes suivantes:

<span class="cmd">Router(config-if)#</span> <span class="cmd"> '''no''' </span> <span class="cmd"> '''ipv6 nd managed-config-flag''' </span>

<span class="cmd">Router(config-if)#</span> <span class="cmd"> '''no ipv6 nd other-config-flag''' </span>

Option DHCPv6 sans état

Cette option enjoint le client à utiliser des informations dans le RA pour l'adressage, mais les paramètres de configuration supplémentaires sont fournis par un serveur DHCPv6.

Le client commence par configurer son adresse après réception d'un RA. Il communique ensuite avec le serveur DHCPv6 sans état pour obtenir des informations complémentaires non fournies dans le message RA. Il peut s'agir d'une liste d'adresses de serveurs DNS, par exemple. Ce processus est dit sans état car le serveur ne conserve aucune information sur l'état des clients (c'est-à-dire une liste des adresses IPv6 utilisées): il ne fournit que des paramètres de configuration.

L'indictauer O est à 1 et l'indicateur M est à 0. Le O à 1 informe le client que des informations de configuration supplémentaires sont à demander auprès d'un serveur DHCPv6. On peut configurer ce type de RA sur un routeur Cisco par la commande :

Router(config-if)# ipv6 nd other-config-flag

Option DHCPv6 avec état (DHCPv6 uniquement)

Cette option est la plus proche de DHCPv4. Dans ce cas le RA enjoint le client de ne pas utiliser les informations qu'il contient. Toutes les informations d'adressage et de configuration doivent être obtenues auprès d'un serveur DHCPv6 avec état.  On dit "avec état" car le serveur conserve des informations sur les clients. L'indicateur M indique si DHCPv6 stateful est activé. L'indicateur O n'as pas d'effet. Pour activer l'indicateur M sur un routeur Cisco :

Router(config-if)# ipv6 nd managed-config-flag