Post rapide, car la doc d’Online/Scaleway indique toujours de faire usage de dhclient pour avoir de l’IPv6 sur son serveur, et dhclient c’est le mal.
Heureusement, il existe un client DHCP qui a le mérite de ne pas avoir besoin de bricoler un service systemd à l’arrache pour qu’il fonctionne : dhcpcd
En pratique :
Dans mon setup, j’utilise dhcpcd seulement en ipv6 sur une base debian/proxmox avec une interface physique (enp1s0f0) et un bridge virtuel (vmbr0).
Également, je ne découpe pas mon /48, car j’en ai pas utilité pour le moment, si vous le découpez, il faudra noter le DUID du bloc que vous voulez utiliser et non celui du /48 et pensez à adapter les confs.
Pour commencer, on règle /etc/network/interfaces
avec ce qu’il nous faut.
# /etc/network/interfaces
auto lo
iface lo inet loopback
iface enp1s0f0 inet manual
iface enp1s0f1 inet manual
auto vmbr0
iface vmbr0 inet static
address 163.172.54.X/24
gateway 163.172.54.1
bridge-ports enp1s0f0
bridge-stp off
bridge-fd 0
iface vmbr0 inet6 static
address 2001:0bc8:XXXX::1/48
accept_ra 1
Ensuite, on s’assure d’avoir ifupdown2
et dhcpcd
d’installés.
apt install dhcpcd ifupdown2
Ensuite, on peut se créer un fichier /var/lib/dhcpcd/duid
avec l’éditeur de son choix et coller le DUID directement dedans.
Après, on peut configurer dhcpcd comme suit :
# /etc/dhcpcd.conf
dhcp6
denyinterfaces enp* veth* tap* ens* eth*
allowinterfaces vmbr0
interface vmbr0
static ip_address=163.172.54.XXX/24
static routers=163.172.54.1
static domain_name_servers=1.1.1.1
ipv6_rs
ia_pd 1 vmbr0/0
duid
persistent
vendorclassid
option classless_static_routes
option interface_mtu
option host_name
option rapid_commit
require dhcp_server_identifier
slaac private
Et c’est tout bon, vous pouvez systemctl enable dhcpcd
dans votre console et ensuite : - ou vous redémarrez le système- ou bien passer un coup de ifreload -a ; systemctl start dhcpcd
Normalement dhcpcd vous fournira une route par défaut fournie par le serveur dhcpv6 de Scaleway (vérifiable via ip -6 r
).