DHCP – Cluster FailOver DHCP

Publié: 8 août 2013 dans Architecture, Debian, Haute disponibilite, Informatique, Linux
Tags:, , , , , , , , , , ,

1. Pourquoi mettre en place un cluster failover DHCP ?

Nous avons vu dans l’article consacré à l’implémentation d’un serveur DHCP que cet élément d’infrastructure fournit la configuration réseau des postes de travail (et serveurs si vous le souhaitez). AInsi, lorsqu’une station de travail démarre ou renouvelle son bail, elle s’adresse au serveur DHCP qui se charge de lui fournir sa configuration et son bail.

Que se passe-t-il si le serveur est down ? les stations de travail déjà configurée ne modifieront pas leur configuration. Par contre, les nouvelles machines se retrouveront avec une adresse IP en 169.1.1.1 et ne pourront pas se connecter au réseau.

2. Préparation des serveurs DHCP

Nous installerons 2 serveurs DHCP identiques (cf DHCP – Dynamic Host Configuration Protocol).

Les deux serveurs DHCP1 et DHCP2 doivent être synchronisées (cf NTP : Serveur de temps)

Rappel :

Pour ce faire, vous devez tout d’abord installer le service NTPD sur chacun des  serveurs à synchroniser, puis les configurer comme suit :

Dans le fichier /etc/ntp.conf, ajoutez :
server adresse IP de votre serveur de temps
puis redémarrez votre service NTPD.

A ce stade, vous disposez de deux serveurs DHCP, synchronisés sur la même horloge et qui fournissent tous deux la même plage d’IP.

Si une station de travail se connecte à cet instant, elle prendra sa configuration auprès du serveur DHCP qui répondra le plus rapidement. Nous verrons ensuite le mode de fonctionnement en cas de fourniture d’une adresse IP déjà occupée.

3. Configuration du cluster failover

DHCP1 et DHCP ont le fichier de configuration /etc/dhcp3/dhcpd.conf suivant :

On suppose que DHCP1 a l’adresse IP 192.168.1.21 et DHCP2 à l’adresse IP 192.168.1.22

Fichier de configuration de base :

option domain-name "mondomaine.priv";
option domain-name-servers 192.168.0.10, 194.168.0.11;
option routers 192.168.0.1;
default-lease-time 3600;
max-lease-time 3600;

authoritative; 

subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.200 192.168.0.254;
}

Configuration de DHCP1 :

option domain-name "mondomaine.priv";
 option domain-name-servers 192.168.0.10, 194.168.0.11;
 option routers 192.168.0.1;
 default-lease-time 3600;
 max-lease-time 3600;
 authoritative;
 
failover peer "dhcp-failover" {
 primary;
 address 192.168.0.21;
 port 647;
 peer address 192.168.0.22;
 peer port 847;
 max-response-delay 60;
 max-unacked-updates 10;
 load balance max seconds 3;
 mclt 3600;
 split 128;
 }
subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.200 192.168.0.254;
 }

Configuration de DHCP2 :

option domain-name "mondomaine.priv";
option domain-name-servers 192.168.0.10, 194.168.0.11;
option routers 192.168.0.1;
default-lease-time 3600;
max-lease-time 3600;
authoritative;
 
failover peer "dhcp-failover" {
 secondary;
 address 192.168.0.22;
 port 847;
 peer address 192.168.0.21;
 peer port 647;
 max-response-delay 60;
 max-unacked-updates 10;
 load balance max seconds 3;
 }
subnet 192.168.0.0 netmask 255.255.255.0 {
 range 192.168.0.200 192.168.0.254;
 }

puis :

DHCP1 # /etc/init.d/dhcp3server restart   
DHCP2 # /etc/init.d/dhcp3server restart 

Différence entre DHCP1 et DHCP2 : pour DHCP1, on indique en premier l’adresse IP du primaire et ensuite l’adresse IP du pair (secondaire).
On ajoute (uniquement pour le primaire) les paramètres mclt et split.
Pour DHCP2, on indique l’adresse IP du secondaire puis l’adresse IP du pair (primaire).

3. Mode de fonctionnement

En temps normal, le serveur DHCP1 est le seul serveur DHCP à répondre. Il détient l’autorité pour fournir les configurations réseaux et la « base de données » des adresses IP attribuées.

Le serveur DHCP1 s’arrête alors le serveur DHCP2 devient autoritée. Il détient l’autorité pour fournir les configurations réseaux et la « base de données » des adresses IP attribuées. Attention : cette « base de données » est alors VIDE.

Lorsqu’une station de travail se présente et demande sa configuration IP, le serveur lui attribue une adresse IP « disponible ». SI cette dernière est en cours d’utilisation, la station de travail renvoi un message DHCPDECLINE. Le serveur secondaire enregistre que l’adresse IP est utilisée et attribue une autre adresse IP « disponible ».

commentaires
  1. frederic Landouge dit :

    mouai je me trompe peut etre, mais je ne vois pas en quoi il s’agit d’un cluster de basculement..

    • zerotyler dit :

      Que se passe-t-il si le serveur est down ? les stations de travail déjà configurée ne modifieront pas leur configuration. Par contre, les nouvelles machines se retrouveront avec une adresse IP en 169.1.1.1 et ne pourront pas se connecter au réseau.
      Alors le second serveur prends le relai

Laisser un commentaire