Analyser une panne de serveur DHCP

Si vos postes clients n'arrivent plus à récupérer une adresse IP via DHCP votre serveur est peut-être en panne, ou un équipement réseau interdit peut-être le trafic DHCP…

Avant tout, lisez la documentation générale sur les principes du DHCP :

Le protocole DHCP utilise les ports 67 et 68 en UDP.

ps ax | grep dhcpd

devrait vous retourner une ligne d'information au sujet du processus dhcp serveur :

23943 ?  Ss 0:00 /usr/sbin/dhcpd3 -q -pf /var/run/dhcp3-server/dhcpd.pid -cf /etc/dhcp3/dhcpd.conf eth0
/etc/init.d/dhcp3-server restart

Vérifiez ensuite que le process tourne bien … avec la commande précédente.

tail -f /var/log/syslog

Cette commande ne vous rendra pas la main, elle affiche en temps réel tout ce qui s'ajoute dans le fichier log. Une fois cette commande lancée, vous pouvez par exemple relancer le service dhcp dans un autre terminal de commande : vous verrez alors apparaître les lignes concernant ce service qui redémarre. S'il y a un problème les informations affichées devraient vous aider à trouver la solution

Aug 24 12:50:34 servecole dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.
Aug 24 12:50:34 servecole dhcpd: Internet Systems Consortium DHCP Server V3.1.3
Aug 24 12:50:34 servecole dhcpd: Copyright 2004-2009 Internet Systems Consortium.
Aug 24 12:50:34 servecole dhcpd: All rights reserved.
Aug 24 12:50:34 servecole dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Aug 24 12:50:36 servecole dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.
Aug 24 12:50:36 servecole dhcpd: Internet Systems Consortium DHCP Server V3.1.3
Aug 24 12:50:36 servecole dhcpd: Copyright 2004-2009 Internet Systems Consortium.
Aug 24 12:50:36 servecole dhcpd: All rights reserved.
Aug 24 12:50:36 servecole dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Aug 24 12:50:36 servecole dhcpd: WARNING: Host declarations are global.  They are not limited to the scope you declared them in.
Aug 24 12:50:36 servecole dhcpd: Internet Systems Consortium DHCP Server V3.1.3
Aug 24 12:50:36 servecole dhcpd: Copyright 2004-2009 Internet Systems Consortium.
Aug 24 12:50:36 servecole dhcpd: All rights reserved.
Aug 24 12:50:36 servecole dhcpd: For info, please visit https://www.isc.org/software/dhcp/
Aug 24 12:50:36 servecole dhcpd: Wrote 0 class decls to leases file.
Aug 24 12:50:36 servecole dhcpd: Wrote 0 deleted host decls to leases file.
Aug 24 12:50:36 servecole dhcpd: Wrote 0 new dynamic host decls to leases file.
Aug 24 12:50:36 servecole dhcpd: Wrote 0 leases to leases file.

Il en sera de même lorsqu'un ordinateur fera une requête DHCP sur le réseau, vous verrez des lignes ressemblant à celles-ci dans le fichier log :

Aug 23 14:17:03 servecole dhcpd: DHCPDISCOVER from 74:27:ea:c8:f6:6d via eth0
Aug 23 14:17:03 servecole dhcpd: DHCPOFFER on 192.168.10.84 to 74:27:ea:c8:f6:6d via eth0
Aug 23 14:17:03 servecole dhcpd: DHCPREQUEST for 192.168.10.84 (192.168.10.1) from 74:27:ea:c8:f6:6d via eth0
Aug 23 14:17:03 servecole dhcpd: DHCPACK on 192.168.10.84 to 74:27:ea:c8:f6:6d via eth0

Ce qui peut se comprendre par : « À 14h17 et 03 secondes, le poste dont l'adresse MAC est 74:27:ea:c8:f6:6d a fait une demande DHCP (DHCPDISCOVER). Le serveur lui a proposé l'adresse IP 192.168.10.84 (DHCPOFFER) que le client a confirmé par un DHCPREQUEST qui a été accepté par le serveur via le DHCPACK. » Relisez le principe de gestion du dhcp proposé en début de cet article si ce n'est pas assez clair.

À vous de déduire ce qui ne marche pas, un switch qui filtre des ports UDP, un câble défectueux, un équipement réseau particulier…