DHCP Redondant Sous linux Charles SAINT-LÔ SIO2 Lycée Notre Dame de la Providence Session 2015
1
I.
Présentation
Le service DHCP est très répandu dans les entreprises afin de distribuer une configuration réseau dynamiquement aux clients du réseau. Ce service permet une souplesse dans l’administration et la gestion des adresses IP au sein d’un réseau d’entreprise. Toutefois, il se peut que le serveur DHCP de votre entreprise tombe en panne, vos clients n’obtiennent plus d’adresses IP dynamiquement et donc ne peuvent pas se connecter au réseau. Pour parer à cela, on peut mettre en place de la redondance de serveurs DHCP. La redondance consiste à avoir deux serveurs DHCP, ainsi dans le cas où il y en a un qui tombe en panne, le second peut assurer la continuité de service. La redondance de DHCP assure deux fonctionnalités : – Répartition de la charge / loadbalancing : Les deux serveurs sont actifs, chacun d’entre eux gère une partie de la plage d’adresses devant être distribuées aux clients. – Continuité de service / failover : Lorsqu’un serveur tombe en panne, le second prend le relais est assure la continuité de service. L’application DHCP utilisée est « isc-dhcp-server » sous Linux.
II.
Installation du service DHCP
Tout d’abord, il faut installer les paquets nécessaires sur les serveurs Linux. Pour installer isc-dhcp-server il faut installer le paquet dhcp3-server via la commande suivante : -
apt-get install dhcp3-server
Maintenant votre service dhcp est installé et le fichier de configuration se situe dans : -
/etc/dhcp/dhcpd.conf
Nous allons renommer le fichier de configuration afin de le garder par sécurité, ainsi nous partirons d’un fichier de configuration vierge. -
cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd.conf.sav
La base de données de gestion des adresses IP et des baux est située dans le fichier : -
/var/lib/dhcp/dhclient.leases
Pour ce qui concerne la gestion du service, pour le démarrer, le redémarrer ou l’arrêter la commande est : - Service isc-dhcp-server start/restart/stop
2
III.
Architecture
Le schéma suivant nous présente l’architecture d’une redondance DHCP :
IV.
Directive SPLIT
La directive SPLIT est présente dans la configuration du service DHCP en « failover ». Elle permet de de diviser la plage d’adresse IP disponible en deux partie, afin de répartir la charge sur les deux serveurs. Lorsque cette directive a la valeur 128, la répartition est de 50% sur chaque serveur c'est-à-dire que chaque serveur gère 50% de la plage d’adresse disponible.
3
V.
Configuration du serveur primaire
Nous allons commencer par configurer le serveur DHCP maitre. Tout d’abord il faut stopper le service DHCP puis ouvrir le fichier de configuration dhcpd.conf . 1 authoritative; #autorité sur ce réseau 2 3 # Paramétrage du failover du DHCP Master 4 failoverpeer "charles" { 5 primary ; # Déclare ce serveur comme master. 6 address 192.168.1.40 ; # Adresse du serveur master. 7 port 520 ; # Port d'écoute du serveur master. 8 peeraddress 192.168.1.50 ; # Adresse du serveur slave. 9 peer port 520 ; # Port d'écoute du serveur slave. 10 max-response-delay 60 ; # Temps de non réponse en secondes. 11 mclt 3600 ; 12 split 128 ; # Répartition des plages d'adresses. 13 load balance max seconds 3; 14 } 15 16 # Paramétrage de la configuration à distribuer aux postes clients 17 subnet 192.168.1.0 netmask 255.255.255.0 { 18 pool{ 29 failoverpeer "charles"; # Indique la configuration du failover 20 optionrouters 192.168.1.1; # Passerelle par défaut 21 optiondomain-name-servers 8.8.8.8 ; # Serveur DNS 22 range 192.168.1.120 192.168.1.139; # Plage d'adresses IP 23 default-lease-time 21600 ; # Bail de 6 heures par défaut 24 } 25 }
Les postes clients se verront attribuer une adresse sur la plage d’adresses IP allant de 192.168.19.120 à 192.168.19.139
4
VI.
Configuration du serveur esclave.
1 # Paramétrage du failover du DHCP Slave 2 failoverpeer "charles" { 3 secondary ; # Déclare ce serveur comme slave. 4 address 192.168.1.50 ; # Adresse du serveur slave. 5 port 520 ; # Port d'écoute du serveur slave. 6 peeraddress 192.168.1.40 ; # Adresse du serveur master. 7 peer port 520 ; # Port d'écoute du serveur master. 8 max-response-delay 60 ; # Temps de non réponse en secondes. 9 load balance max seconds 3; # Durée max avant de décharger la requête vers le pair 10 } 11 12 # Paramétrage de la configuration à distribuer aux postes clients 13 subnet 192.168.1.0 netmask 255.255.255.0 { 14 pool{ 16 failoverpeer "charles"; # Indique la configuration du failover 17 optionrouters 192.168.1.1; # Passerelle par défaut 18 optiondomain-name-servers 8.8.8.8; # Serveur DNS 19 range 192.168.1.120 192.168.1.139; # Plage d'adresses IP 20 default-lease-time 21600 ; # Bail de 6 heures par défaut 22 } 23 }
Une fois les deux configurations terminé il faut démarrer les deux services en commençant par le serveur maitre. -
service isc-dhcp-server start
VII. Conclusion Quand un serveur configuré en mode failover démarre et qu’il n’a jamais communiqué avec sa paire, il doit établir une communication avec l’autre serveur afin de se synchroniser. Cela avant même de commencer à distribuer des adresses aux clients, pour la simple et bonne raison qu’il doit connaître l’état de la base de données des baux, mais aussi, pour savoir dans quel état est le serveur paire.