Comment configurer IPv6 sur votre serveur [DHCPv6]

04/12/2023 |
Loading...

1- Comment configurer le client DHCPv6

Nous utiliserons dhclient.
Vous devrez modifier le fichier suivant /etc/dhcp/dhclient6.conf :

interface "eno1" {
  send dhcp6.client-id DUID;
}

Vous devrez adapter le nom de l'interface (eno1) et le DUID

DÉMARRER VOTRE CLIENT DHCPV6 AU DÉMARRAGE

Une fois le client configuré, vous devrez créer un nouveau service SystemD.
Créez le fichier suivant, en adaptant le nom de l'interface (eno0) et le DUID /etc/systemd/system/dhclient.service:

[Unit]
Description=dhclient pour envoyer DUID IPv6
After=network-online.target
Wants=network-online.target

[Service]
Restart=always
RestartSec=10
Type=forking
ExecStart=/sbin/dhclient -cf /etc/dhcp/dhclient6.conf -6 -P -v eno1
ExecStop=/sbin/dhclient -x -pf /var/run/dhclient6.pid

[Install]
WantedBy=network.target

Le chemin de dhclient peut varier selon votre OS. Pour connaître le chemin exact, utilisez la commande suivante : which dhclient

Ensuite, activez-le pour chaque redémarrage : systemctl enable dhclient.service.

2 - COMMENT CONFIGURER LE RÉSEAU

CONFIGURER LE RÉSEAU SUR UBUNTU 16 & DEBIAN 8 ET 9

Commencez par éditer /etc/network/interfaces comme suit :

auto eno1
iface eno1 inet6 static
    address IPV6ADDRESS
    netmask PREFIXLENGTH

Vous devrez remplacer eno1 par le nom d'interface approprié.
Avec Debian & les anciennes versions d'Ubuntu, c'est généralement eth0.

L'interface réseau est initialisée avec la commande allow-hotplug par défaut sur Debian 9. Il est possible que le redémarrage du réseau échoue avec cette configuration. Dans ce cas, vous pouvez initialiser le réseau avec auto pour éviter le problème.

Configuration alternative sans SystemD

Si vous n'utilisez pas SystemD pour démarrer vos services, vous pouvez configurer votre /etc/network/interfaces comme suit :

iface eno1 inet6 static
    pre-up modprobe ipv6
    pre-up dhclient -cf /etc/dhcp/dhclient6.conf -6 -P -d -v $IFACE
    address IPV6ADDRESS
    netmask PREFIXLEN

Toujours en adaptant le nom de votre interface (eno1) à vos besoins, ainsi que l'adresse IPv6 et le masque réseau.

CONFIGURER LE RÉSEAU AVEC NETPLAN

Ubuntu utilise depuis la version Ubuntu 18.04 LTS un nouvel outil pour configurer le réseau, appelé netplan.
Il remplace la configuration réseau classique par de nouveaux fichiers de configuration, écrits au format YAML, et situés dans le répertoire /etc/netplan. Pour plus d'informations sur netplan, référez-vous à la documentation officielle d'Ubuntu.
Ouvrez le fichier de configuration par défaut /etc/netplan/01-netcfg.yaml dans un éditeur de texte, et modifiez-le comme suit :

# Ce fichier décrit les interfaces réseau disponibles sur votre système
# Pour plus d'informations, voir netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp1s0:
      dhcp4: no
      dhcp6: no
      addresses:
       - "aaa.bbb.ccc.ddd/24" # L'adresse IP principale de votre serveur Dedibox
       - "/" # Une adresse IP de votre bloc IPv6 et son masque de sous-réseau
      gateway4: aaa.bbb.ccc.1 # La passerelle est l'adresse IP de votre Dedibox, se terminant par .1
      nameservers:
       addresses: [62.210.16.6, 62.210.16.7]
      routes:
       - to: 0.0.0.0
         via: aaa.bbb.ccc.1
         on-link: true

Vous devrez remplacer enp1s0 par le nom d'interface approprié. Pour trouver le nom d'interface de votre machine, utilisez la commande ifconfig.
Redémarrez votre serveur une fois que vous avez configuré les nouveaux paramètres réseau.

 

CONFIGURER LE RÉSEAU SUR CENTOS 7

Après avoir configuré votre dhclient et SystemD, vous devrez éditer /etc/sysconfig/network-scripts/ifcfg-eth0:

# Généré par parse-kickstart
UUID=xxxxx
DNS1=62.210.16.6
BOOTPROTO=none
DEVICE=eth0
ONBOOT=yes
TYPE=Ethernet
IPADDR=62.210.xx.xx
PREFIX=24
GATEWAY=62.210.xx.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6ADDR="IPV6ADDRESS/PREFIXLEN"
IPV6_AUTOCONF=yes
NAME="System eth0"

Une fois la configuration terminée, vous pouvez redémarrer votre serveur pour vérifier que le service & la configuration sont correctement appliqués au démarrage !

Vous devrez autoriser dans votre pare-feu 546/UDP Entrant & 547/UDP Sortant.

TESTER VOTRE CONFIGURATION

Lancez le dhclient avec la commande suivante :

dhclient -cf /etc/dhcp/dhclient6.conf -6 -P -v eth0

Pour vérifier votre connectivité IPv6, vous pouvez utiliser la commande PING :

ping6 ipv6.google.com

DÉBOGAGE

Si la configuration ne fonctionne pas pour vous, vérifiez le nom de votre interface avec la commande suivante :

ifconfig -a

De plus, votre serveur doit être configuré pour accepter RA (Router Advertisement).
Par défaut, votre serveur n'acceptera pas de transférer les paquets d'une interface à une autre s'il est configuré automatiquement (via DHCPv6).

Si vous avez besoin de transférer des paquets IPv6 et d'utiliser une configuration automatique, vous devrez définir votre sysctl net.ipv6.conf.all.accept_ra à 2 dans /etc/sysctl.conf.
Ceci est généralement utile pour les hôtes Hyperviseur tels que Proxmox.

Les exemples sont donnés pour eth0/eno1, si votre interface principale a un nom différent, vous devrez le modifier dans tous vos fichiers de configuration.

LIMITATION DE TRAFIC DE VOTRE CLIENT

Dans certains cas, certains clients DHCPv6 peuvent malheureusement envoyer plusieurs requêtes par seconde (surtout dchp6c).

Cela déclenche le blocage du port réseau de votre serveur par notre protection automatique, car il sera vu comme une source de flood UDP.

Pour éviter ce problème, nous vous invitons à limiter le trafic envoyé depuis votre dhclient6 directement dans la configuration de votre pare-feu.

Voici un exemple pour IPTABLES :

ip6tables -A OUTPUT -p udp --dport 547 -m limit --limit 10/min --limit-burst 5 -j ACCEPT
ip6tables -A OUTPUT -p udp --dport 547 -j DROP

En mode Rescue

Pour tester l'IPv6 sur votre serveur en mode rescue, redémarrez le serveur en mode rescue avec le mode "Ubuntu 14 - Trusty". Le dhclient est déjà disponible dessus.

Créez le fichier qui contiendra votre DUID.

nano /etc/dhcp/dhclient6.conf

D'abord, démarrez le dhclient :

dhclient -cf /etc/dhcp/dhclient6.conf -6 -P -v  <interface>

Ensuite, ajoutez l'adresse IPv6 à votre interface réseau :

/sbin/ifconfig <interface> inet6 add IPV6ADDRESS/PREFIXLENGTH

Ensuite, vous pouvez essayer de ping6 :

ping6 ipv6.google.com

Obtenez des offres exclusives et des promotions !

Restez à jour avec les dernières offres, réductions et promotions spéciales.

Update cookies preferences