Linux & Systèmes PDF Gratuit

Tutoriel Installation serveur DHCP Ubuntu (PDF)

Installation et configuration d’un serveur DHCP sous Ubuntu Server — Guide de projet étape par étape pour déployer un serveur DHCP, couvrant la gestion des baux, l'adressage IP dynamique, l'isc-dhcp-server configuration et l'inspection des fichiers de bail comme /var/lib/dhcp/dhcpd.leases. Compatible avec Ubuntu 24.04 LTS. PDF téléchargeable.

Objectifs pédagogiques

Mettre en place un service DHCP fonctionnel et reproductible sur Ubuntu Server, comprendre le cycle d'attribution DORA, planifier les pools d'adresses et automatiser l'administration réseau. Ce cours PDF gratuit présente des étapes pratiques, exemples de configuration et commandes de vérification pour une mise en production sûre et maintenable.

  • Principes du protocole : échanges DISCOVER, OFFER, REQUEST, ACK et concept de bail.
  • Création et renouvellement de bail : mécanismes d'attribution et de renouvellement des adresses IP.
  • Installation du paquet : déploiement via isc-dhcp-server et vérifications basiques avec apt.
  • Configuration du serveur : options courantes et exemples pour /etc/dhcp/dhcpd.conf.
  • Attribution d'adresses fixes par MAC : déclaration de blocs host dans /etc/dhcp/dhcpd.conf.
# Exemple d'entrée pour adresse fixe dans /etc/dhcp/dhcpd.conf
host workstation-01 {
  hardware ethernet 00:11:22:33:44:55;
  fixed-address 192.168.1.50;
  option host-name "workstation-01";
}

Avantages de l'utilisation d'un serveur DHCP

La mise en place d'un serveur DHCP centralisé simplifie l'administration réseau et réduit les erreurs manuelles. Ces bénéfices s'appliquent autant aux petites infrastructures qu'aux environnements d'entreprise où la cohérence et la traçabilité des attributions sont essentielles.

  • Centralisation de l'adressage
  • Gain de temps
  • Réduction des erreurs de configuration
  • Gestion optimisée des adresses IP

À qui s'adresse ce cours ?

  • Public cible : techniciens et administrateurs systèmes responsables d'infrastructures réseau souhaitant déployer et exploiter un serveur sous Ubuntu.
  • Prérequis : connaissances intermédiaires en Linux (ligne de commande), notions de base en TCP/IP et adressage réseau. L'installation initiale d'Ubuntu Server peut se faire depuis une image ISO ; la distribution se gère ensuite via le gestionnaire de paquets apt.

Fonctionnement du protocole DHCP (DORA)

Le cycle DORA décrit les quatre étapes d'attribution d'une adresse : DISCOVEROFFERREQUESTACK. Le client découvre une offre, réserve l'adresse puis le serveur confirme et enregistre le bail. Les durées de bail déterminent la fréquence des renouvellements et la gestion des collisions d'adresses. Le serveur gère l'attribution via des pools d'adresses définis dans dhcpd.conf ; chaque subnet contient une ou plusieurs plages (range) associées à des options réseau.

Installation et mise à jour du service sous Ubuntu 24.04

Avant d'installer le paquet, mettre à jour les dépôts pour récupérer les dernières versions et correctifs de sécurité. Sur Ubuntu 24.04 LTS, la commande suivante met à jour les listes puis installe le serveur DHCP officiel et, si nécessaire, l'agent de relais. Vérifiez la présence de isc-dhcp-server dans les dépôts de votre miroir avant l'installation.

sudo apt update
sudo apt install isc-dhcp-server

Pour installer également l'agent de relais : sudo apt install isc-dhcp-relay. Après l'installation, contrôler l'état du service avec sudo systemctl status isc-dhcp-server et consulter les journaux via journalctl -u isc-dhcp-server ou /var/log/syslog pour détecter d'éventuels problèmes de configuration.

Le paquet isc-dhcp-server

Le paquet isc-dhcp-server fournit le démon dhcpd et les outils associés distribués dans les dépôts officiels d'Ubuntu. Il est la solution standard pour la gestion DHCP sur Debian/Ubuntu en raison de sa stabilité, de la compatibilité avec la syntaxe historique de dhcpd.conf et de son intégration avec les mécanismes de gestion de services (systemd). La documentation officielle et les pages de manuel fournissent les options de configuration et les recommandations pour les environnements de production.

Configuration du serveur

Le fichier principal de configuration est /etc/dhcp/dhcpd.conf. Options courantes :

  • default-lease-time : durée par défaut (en secondes) d'un bail attribué si le client ne précise pas de préférence.
  • max-lease-time : durée maximale autorisée pour un bail, utilisée pour limiter la rétention d'adresses.
  • authoritative : marque le serveur comme autoritaire pour un subnet donné afin d'éviter les conflits.
  • subnet : déclaration d'un réseau géré par le serveur, contenant les paramètres et plages associées.
  • range : plage d'adresses dynamiques disponibles pour les clients au sein d'un subnet.
  • routers : option spécifiant la passerelle par défaut fournie aux clients dans la plage.

Validez la syntaxe après modification puis redémarrez le service pour appliquer les changements.

Configuration de l'agent de relais DHCP (dhcrelay)

Lorsque clients et serveur DHCP sont sur des sous-réseaux distincts, un agent de relais transfère les requêtes DHCP (broadcast) vers le serveur central. Le paquet Debian/Ubuntu correspondant s'appelle isc-dhcp-relay et fournit le binaire dhcrelay. Installer l'agent on un routeur ou un hôte relais situé sur le même segment que les clients, puis indiquer l'adresse IP du serveur DHCP et les interfaces à surveiller.

# Exemple de configuration dans /etc/default/isc-dhcp-relay
SERVERS="192.168.1.10"
INTERFACES="eth0"
OPTIONS=""

Après configuration, redémarrer le service : sudo systemctl restart isc-dhcp-relay. L'agent conserve les adresses source/destination utiles pour le dépannage et n'altère pas les paquets DHCP sauf pour l'encapsulation nécessaire au relais. Documenter les relais et tester les flux UDP 67/68 pour vérifier la bonne propagation des requêtes.

Analyse des messages DHCP avec Wireshark

Capturer le trafic DHCP permet de visualiser les messages DISCOVER, OFFER, REQUEST et ACK pour diagnostiquer des problèmes d'attribution. Filtrez sur les ports UDP 67 (serveur) et 68 (client) pour isoler les échanges. L'inspection des options DHCP dans les trames révèle les informations envoyées (gateway, DNS, lease time) et permet d'identifier offres non reçues, retransmissions ou réponses provenant d'un serveur non attendu. Corrélez les captures avec les journaux système du serveur afin de valider la cohérence entre ce que le serveur enregistre et ce que voit le client.

Architecture et topologie du réseau DHCP

Concevoir la topologie implique de définir des sous-réseaux logiques, des VLAN et des relais DHCP si clients et serveurs sont sur des segments différents. Documentez les subnet et les range pour éviter les chevauchements et prévoyez des pools séparés pour les machines invitées, les serveurs et les équipements réseau. Intégrez la gestion des réservations MAC et la planification des baux pour maintenir la stabilité des services dépendants, comme DNS et NTP.

Différences de configuration entre versions d'Ubuntu (Netplan vs Interfaces)

Les versions récentes d'Ubuntu (18.04+) utilisent Netplan pour la configuration des interfaces réseau. Sur Ubuntu 24.04 LTS, privilégier des fichiers YAML dans /etc/netplan/ et l'outil netplan apply. Si des exemples historiques montrent /etc/network/interfaces, adaptez-les au gestionnaire en place pour éviter les erreurs de démarrage du service DHCP. Lors d'assignations d'adresse statique sur l'hôte serveur, documentez la méthode utilisée afin que le service dhcpd utilise l'interface correcte.

Dépannage et vérification du serveur DHCP

Vérifier l'état du service, consulter les journaux système et inspecter le fichier des baux sont des étapes essentielles. Contrôlez la correspondance entre les plages configurées et la topologie réseau pour éviter les chevauchements. En cas de problème, vérifiez que le pare-feu autorise le trafic UDP sur les ports 67 et 68 et que les relais DHCP sont correctement configurés.

Pour visualiser les baux actifs en temps réel, consulter /var/lib/dhcp/dhcpd.leases permet d'identifier les clients actuellement enregistrés, les durées de bail et les réservations. Utilisez tail -f /var/lib/dhcp/dhcpd.leases pour suivre les mises à jour durant les tests et corrélez ces informations avec /var/log/syslog ou les entrées systemd pour diagnostiquer les anomalies.

Vérification de l'installation

sudo systemctl status isc-dhcp-server

Consulter ensuite /var/log/syslog ou le journal systemd pour messages d'erreur. Vérifier la validité du fichier /etc/dhcp/dhcpd.conf en regardant la syntaxe et les déclarations de subnet et de range.

Suivi et gestion des baux actifs

Le suivi des baux facilite la gestion quotidienne et la résolution des incidents liés à l'adressage IP dynamique. Le fichier de baux, généralement situé dans /var/lib/dhcp/dhcpd.leases, contient l'historique et l'état courant des baux ; l'examiner aide à repérer des conflits d'adresse, des clients qui ne renouvellent pas leurs baux ou des réservations mal configurées. Pour les opérations courantes, consulter ce fichier, corréler avec les journaux système et utiliser des outils de supervision permettent de maintenir un service DHCP fiable et d'automatiser les actions correctives lorsque nécessaire.

Exercices pratiques et cas d'étude

  • Configuration d'un pool d'adresses IP pour un subnet et tests d'attribution.
  • Réservation d'adresses par adresse MAC et vérification des baux.
  • Analyse de trames DHCP avec Wireshark pour diagnostiquer un échange incomplet.
  • Déploiement et test d'un agent de relais entre VLANs distincts.

Le PDF inclut des exercices corrigés pour valider chaque étape de configuration et les procédures de dépannage, permettant de reproduire les cas en laboratoire et de comparer les résultats avec les solutions proposées.

Exercices corrigés sur le serveur DHCP

Les exercices corrigés fournis couvrent la mise en route, la résolution de conflits d'adresses et la configuration de réservations. Chaque exercice comporte l'énoncé, les commandes à exécuter, les fichiers de configuration attendus et une solution commentée pour faciliter l'apprentissage autonome et la validation en environnement de test.

Configuration des clients DHCP

Pour solliciter un bail depuis un client Linux, utiliser le démon client standard. Sur la plupart des distributions basées sur Debian/Ubuntu, la commande suivante renouvelle ou demande un bail au serveur :

sudo dhclient -v eth0

Sur Windows, les commandes ipconfig /release puis ipconfig /renew forcent respectivement la libération et la demande d'un nouveau bail. Vérifiez que le client reçoit la passerelle et les DNS attendus, et corrélez la transaction observée avec les journaux du serveur. Cette section aborde également l'impact des paramètres du pool d'adresses IP sur le comportement des clients et les durées de bail.

Foire Aux Questions (FAQ)

Le cours se limite-t-il à une version particulière d'Ubuntu ? Les exemples illustrent des procédures compatibles avec Ubuntu Server (incluant les versions 22.04 et 24.04 LTS) ; les principes du protocole restent applicables. Vérifiez toutefois les noms de paquetages et chemins de configuration selon la version utilisée.

Le serveur doit-il disposer d'une adresse IP statique ? Oui. Le serveur DHCP doit avoir une adresse IP fixe dans son sous-réseau pour garantir la stabilité des attributions et des relais.

Les commandes et configurations suivent la documentation officielle d'Ubuntu et le manuel du paquet isc-dhcp-server.