Configurer deux serveurs DHCP ISC en mode failover pour assurer une haute disponibilité du service DHCP.
192.168.110.207192.168.110.208192.168.110.10 - 192.168.110.74192.168.110.0/24
Fichier /etc/dhcp/dhcpd.conf :
option domain-name "cpfp.loc";
option domain-name-servers 192.168.110.206, 1.1.1.1, 1.0.0.1;
default-lease-time 86400;
max-lease-time 604800;
ddns-update-style none;
authoritative;
failover peer "dhcp-failover" {
primary;
address 192.168.110.207;
port 647;
peer address 192.168.110.208;
peer port 647;
max-response-delay 60;
max-unacked-updates 10;
mclt 1800;
split 128;
load balance max seconds 3;
}
shared-network "cpfp-network" {
subnet 192.168.110.0 netmask 255.255.255.0 {
option routers 192.168.110.254;
option broadcast-address 192.168.110.255;
pool {
range 192.168.110.10 192.168.110.74;
failover peer "dhcp-failover";
}
}
}
host serveur-web {
hardware ethernet AA:BB:CC:DD:EE:01;
fixed-address 192.168.110.200;
}
host imprimante-hp {
hardware ethernet AA:BB:CC:DD:EE:02;
fixed-address 192.168.110.201;
}
host pc-admin {
hardware ethernet AA:BB:CC:DD:EE:03;
fixed-address 192.168.110.202;
}
Fichier /etc/dhcp/dhcpd.conf (identique au primaire sauf secondary au lieu de primary) :
option domain-name "cpfp.loc";
option domain-name-servers 192.168.110.206, 1.1.1.1, 1.0.0.1;
default-lease-time 86400;
max-lease-time 604800;
ddns-update-style none;
authoritative;
failover peer "dhcp-failover" {
secondary;
address 192.168.110.208;
port 647;
peer address 192.168.110.207;
peer port 647;
max-response-delay 60;
max-unacked-updates 10;
load balance max seconds 3;
}
shared-network "cpfp-network" {
subnet 192.168.110.0 netmask 255.255.255.0 {
option routers 192.168.110.254;
option broadcast-address 192.168.110.255;
pool {
range 192.168.110.10 192.168.110.74;
failover peer "dhcp-failover";
}
}
}
host serveur-web {
hardware ethernet AA:BB:CC:DD:EE:01;
fixed-address 192.168.110.200;
}
host imprimante-hp {
hardware ethernet AA:BB:CC:DD:EE:02;
fixed-address 192.168.110.201;
}
host pc-admin {
hardware ethernet AA:BB:CC:DD:EE:03;
fixed-address 192.168.110.202;
}
Sur les deux serveurs, tester la configuration :
sudo dhcpd -t -cf /etc/dhcp/dhcpd.conf
Si aucune erreur n’apparaît, redémarrer le service DHCP :
sudo systemctl restart isc-dhcp-server sudo systemctl status isc-dhcp-server
Sur les deux serveurs, exécuter :
sudo journalctl -u isc-dhcp-server --no-pager | grep failover
Si tout fonctionne, on doit voir :
failover peer dhcp-failover: Both servers normal
192.168.110.207) :sudo systemctl stop isc-dhcp-server
192.168.110.208) :sudo journalctl -u isc-dhcp-server --no-pager | grep failover
On doit voir :
failover peer dhcp-failover: I move from normal to partner down
192.168.110.207) :sudo systemctl start isc-dhcp-server
sudo journalctl -u isc-dhcp-server --no-pager | grep failover
On doit voir :
failover peer dhcp-failover: Both servers normal
✔ Serveur DHCP primaire et secondaire installés et configurés. ✔ Failover DHCP activé et fonctionnel avec synchronisation automatique. ✔ Baux DHCP dynamiques et statiques attribués sur les deux serveurs. ✔ Test réussi : le serveur secondaire prend bien le relais en cas de panne du primaire. ✔ Retour à la normale après redémarrage du serveur principal.
🎉 Ton infrastructure DHCP failover est prête et opérationnelle ! 🚀 Si tu veux ajouter encore plus d’options (VLANs, logs avancés, monitoring, etc.), n’hésite pas !