Le Dynamic Host Configuration Protocol (DHCP) est un protocole rĂ©seau qui permet dâattribuer automatiquement des adresses IP et dâautres paramĂštres de configuration Ă des Ă©quipements (postes, serveurs, imprimantes) sur un rĂ©seau. Il simplifie lâadministration et Ă©vite les conflits dâadresses.
DHCP est un protocole de la couche application (OSI) qui fonctionne en mode client/serveur. Il utilise les ports UDP 67 (serveur) et 68 (client).
Le processus dâobtention dâune adresse IP se dĂ©roule en 4 Ă©tapes :
| Ătape | Description | Message |
|---|---|---|
| 1. Discovery | Le client envoie un message de découverte en broadcast (255.255.255.255) pour trouver un serveur DHCP. | DHCPDISCOVER |
| 2. Offer | Le serveur répond avec une offre contenant une adresse IP proposée. | DHCPOFFER |
| 3. Request | Le client accepte lâoffre et demande lâadresse IP au serveur. | DHCPREQUEST |
| 4. Acknowledgment | Le serveur confirme lâattribution et envoie les paramĂštres (masque, DNS, etc.). | DHCPACK |
Une fois le bail obtenu, le client renouvellera automatiquement avant expiration.
sudo apt update && sudo apt install isc-dhcp-server -y
Le fichier de configuration principal est /etc/dhcp/dhcpd.conf.
Exemple de configuration pour le réseau 192.168.1.0/24
# /etc/dhcp/dhcpd.conf
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 1.1.1.1;
option domain-name "mon-domaine.local";
default-lease-time 600;
max-lease-time 7200;
}
subnet : dĂ©finit le rĂ©seau et son masque.range : plage dâadresses attribuables.option routers : passerelle par dĂ©faut.option domain-name-servers : DNS.default-lease-time : durĂ©e du bail en secondes.
host imprimante {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.10;
}
Associe une adresse IP fixe à une adresse MAC donnée.
sudo systemctl enable isc-dhcp-server sudo systemctl start isc-dhcp-server
Vérifier le statut : sudo systemctl status isc-dhcp-server
sudo tail -f /var/log/syslog | grep dhcp cat /var/lib/dhcp/dhcpd.leases
1. DĂ©finir lâinterface rĂ©seau sur laquelle Ă©couter
# /etc/default/isc-dhcp-server INTERFACESv4="eth0"
2. Configurer le fichier dhcpd.conf (exemple ci-dessus)
3. Redémarrer le service : sudo systemctl restart isc-dhcp-server
4. Tester depuis un client : dhclient eth0
Quelle est la premiÚre étape du cycle DORA ?
La premiÚre étape est le DHCPDISCOVER (Discovery).
Ăcrire la configuration DHCP pour un rĂ©seau 10.0.0.0/24 avec une plage de 10.0.0.50 Ă 10.0.0.100, passerelle 10.0.0.1, DNS 8.8.8.8 et un bail de 1 heure.
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.50 10.0.0.100;
option routers 10.0.0.1;
option domain-name-servers 8.8.8.8;
default-lease-time 3600;
}
1. DHCP utilise les ports UDP 67 (serveur) et 68 (client).
2. La réservation DHCP associe une adresse IP à une adresse MAC.
3. Le fichier de configuration principal de isc-dhcp-server est /etc/dhcp/dhcpd.conf.
4. Le message DHCPOFFER est envoyé par le client.
5. La commande dhclient eth0 permet de libérer et renouveler un bail.