Le système d'exploitation GNU-Linux/Le serveur de configuration réseau DHCP
Fonctionnement du serveur DHCP
modifierDHCP : Dynamic Host Configuration Protocol. Ce service permet de configurer automatiquement les paramètres IP des machines du réseau local. Le principe est simple. Une machine se connecte sur le réseau local et envoie une requête DHCP Discover pour demander à un éventuel serveur DHCP une adresse IP. Si le serveur est présent, il renvoie un message DHCP Offer. Si plusieurs serveurs DHCP sont présents sur le réseau, le client retient une offre d'un des serveurs et diffuse une demande DHCP : DHCP Request. Le serveur choisit par le client renvoie alors un message de validation DHCP ACK. Le client reçoit donc : Adress IP, Masque de réseau, Adresse de passerelle et Adresse des serveurs DNS.
Installation du serveur DHCP (Sur Debian)
modifier# apt-get install isc-dhcp-server
Configuration du serveur DHCP
modifierLe fichier de configuration du serveur DHCP est /etc/dhcp3/dhcpd.conf.
$ more /etc/dhcp3/dhcpd.conf # Indique à DHCP de ne pas faire la mise à jour dans le DNS ddns-update-style none; # Le nom de domaine du réseau option domain-name "exemple.org"; # Le(s) nom(s) des serveurs de noms option domain-name-servers ns1.exemple.org, ns2.exemple.org; # Durée par défaut du bail default-lease-time 600; # Durée maximum du bail max-lease-time 7200; # Pour les logs, on utilise la facilité local7 log-facility local7;
subnet 192.168.30.0 netmask 255.255.255.0 { # La plage d'attributions des adresses IP range 192.168.30.20 192.168.30.240; # la liste des passerelles option routers fw.exemple.org, fw2.exemple.org; # L'adresse broadcast option broadcast-address 192.168.30.255; }
Pour certains ordinateurs, on peut leur attribuer tout le temps la même adresse IP en les identifiant avec leurs adresses MAC. Il suffit de rajouter la section suivante :
host monordi { hardware ethernet 0:0:c0:5d:bd:95; fixed-address 192.168.30.200; }
Chaque fois que l'on modifie ce fichier, ne pas oublier de relancer le serveur DHCP afin qu'il prenne en compte les modifications :
# /etc/init.d/dhcp3-server restart
ou
# /etc/init.d/isc-dhcp-server restart
Chaque fois que DHCP attribue une adresse IP, il enregistre un message dans /var/log/syslog :
... Feb 11 10:44:34 fw dhcpd: DHCPREQUEST for 192.168.30.33 from 00:50:ba:2d:d9:17 via eth0 Feb 11 10:44:34 fw dhcpd: DHCPACK on 192.168.30.33 to 00:50:ba:2d:d9:17 via eth0 ...
DHCP stocke les adresses IP attribuées dans le fichier /var/lib/dhcp/dhcpd.leases. Ceci lui permet notamment d'attribuer à un ordinateur la même adresse IP (même si ceci n'est pas obligatoire).
$ cat /var/lib/dhcp/dhcpd.leases ... lease 192.168.30.182 { starts 1 2008/02/11 09:46:23; ends 1 2008/02/11 09:56:23; hardware ethernet 00:1c:c0:0c:b6:25; client-hostname "pc231"; } ...