Contexte et besoins
Cet atelier prend la suite de la mise en place HSRP : la passerelle est désormais redondée, mais chaque poste du LAN doit toujours être configuré à la main pour obtenir une IP, un masque, une passerelle et un DNS. Sur les VLAN COMPTA et INFO d’une PME (une dizaine de postes par VLAN, plus quelques imprimantes), c’est rapidement ingérable et source de doublons.
Le besoin était donc clair : automatiser l’adressage IP des postes utilisateurs en gardant les services à IP fixe (imprimantes, serveurs, switches) hors du périmètre dynamique. Le routeur Cisco lui-même peut jouer le rôle de serveur DHCP, ce qui évite de devoir installer un service supplémentaire.
Rappel théorique sur DHCP
Le protocole DHCP est défini par la RFC 2131 et utilise les ports UDP 67 (serveur) et 68 (client). Il sert à fournir aux clients toute la configuration IP nécessaire pour communiquer sur un réseau, sans intervention humaine.
L’attribution se déroule en quatre messages, retenus sous l’acronyme DORA :
- Discover — le client diffuse en broadcast un appel pour trouver un serveur DHCP.
- Offer — le serveur lui propose une adresse libre.
- Request — le client demande officiellement à utiliser cette adresse.
- Acknowledge — le serveur valide et grave le bail.
Astuce
Sur un sniffer Wireshark, le filtre bootp (ou dhcp sur les versions récentes) permet de visualiser le DORA en clair. C’est un excellent moyen de comprendre ce qui se passe quand un poste « ne récupère pas d’IP ».
Le bail DHCP
Une adresse n’est pas distribuée pour toujours : elle est louée pour une durée de bail (lease time). À 50 % du bail, le client tente de le renouveler auprès du serveur d’origine (T1). À 87,5 %, il interroge n’importe quel serveur DHCP du réseau (T2). Si tout échoue, l’adresse est libérée à expiration.
Topologie de laboratoire
On reprend la topologie de l’atelier HSRP avec deux VLAN clients et deux routeurs. Le DHCP est configuré sur les deux routeurs pour assurer une continuité de service même si R1 tombe.
| Élément | VLAN | Sous-réseau | Plage exclue (statique) | Plage distribuée (DHCP) |
|---|---|---|---|---|
| COMPTA | 10 | 192.168.10.0/24 | 192.168.10.240 → 192.168.10.254 | 192.168.10.1 → 192.168.10.239 |
| INFO | 20 | 192.168.20.0/24 | 192.168.20.240 → 192.168.20.254 | 192.168.20.1 → 192.168.20.239 |
Les adresses hautes (.240 à .254) sont réservées aux équipements à IP fixe : VIP HSRP .254, routeurs physiques .253 et .252, switch d’accès, imprimantes, serveurs internes. Les clients reçoivent une adresse dans la zone basse.
Note
On peut tout à fait inverser la logique en plaçant la zone fixe en bas (.1 → .10) et la zone DHCP en haut. L’important est que les deux ne se chevauchent jamais.
Configuration du routeur R1
R1 est désigné comme serveur DHCP principal du fait de sa priorité HSRP supérieure. La syntaxe Cisco IOS pour DHCP suit toujours le même schéma : on déclare d’abord les exclusions, puis on crée les pools.
enable
configure terminal
hostname R1
! 1) Exclusions : ces adresses ne seront jamais attribuées par le DHCP
ip dhcp excluded-address 192.168.10.240 192.168.10.254
ip dhcp excluded-address 192.168.20.240 192.168.20.254
! 2) Pool DHCP pour le VLAN 10 (COMPTA)
ip dhcp pool POOL_COMPTA
network 192.168.10.0 255.255.255.0
default-router 192.168.10.254
dns-server 1.1.1.1 9.9.9.9
domain-name compta.lab.local
lease 1 0 0
exit
! 3) Pool DHCP pour le VLAN 20 (INFO)
ip dhcp pool POOL_INFO
network 192.168.20.0 255.255.255.0
default-router 192.168.20.254
dns-server 1.1.1.1 9.9.9.9
domain-name info.lab.local
lease 1 0 0
exit
end
write memoryExplications ligne par ligne :
ip dhcp excluded-address 192.168.10.240 192.168.10.254: exclut toute la plage comprise entre ces deux adresses, bornes incluses. C’est la zone dédiée aux IP fixes.ip dhcp pool POOL_COMPTA: entre dans le mode de configuration du pool, dont le nom est libre mais doit être explicite.network 192.168.10.0 255.255.255.0: indique le sous-réseau couvert par le pool.default-router 192.168.10.254: c’est la VIP HSRP qui est distribuée comme passerelle, pas l’IP physique de R1. Si R1 tombe, le client garde la même passerelle (R2 reprend la VIP).dns-server 1.1.1.1 9.9.9.9: serveurs DNS distribués (Cloudflare et Quad9 ici, on peut mettre un DNS interne en production).domain-name compta.lab.local: suffixe DNS poussé via l’option DHCP 15.
Avertissement
L’ordre est important : si on crée le pool avant d’écrire les exclusions, le routeur peut très bien attribuer une IP réservée à un client. Toujours déclarer les exclusions en premier.
Configuration du routeur R2
R2 est configuré à l’identique. En IOS classique, il n’y a pas de réplication automatique : si on modifie un pool sur R1, il faut faire la même modification sur R2.
enable
configure terminal
hostname R2
ip dhcp excluded-address 192.168.10.240 192.168.10.254
ip dhcp excluded-address 192.168.20.240 192.168.20.254
ip dhcp pool POOL_COMPTA
network 192.168.10.0 255.255.255.0
default-router 192.168.10.254
dns-server 1.1.1.1 9.9.9.9
domain-name compta.lab.local
lease 1 0 0
exit
ip dhcp pool POOL_INFO
network 192.168.20.0 255.255.255.0
default-router 192.168.20.254
dns-server 1.1.1.1 9.9.9.9
domain-name info.lab.local
lease 1 0 0
exit
end
write memoryPrudence
Avec ce montage, deux serveurs DHCP distribuent dans le même sous-réseau, ce qui peut entraîner des doublons d’IP. Pour un labo, ça reste acceptable car le bail couvre vite l’incohérence. En production, on préfère soit une réservation des plages (ex. R1 attribue 1-100, R2 attribue 101-200), soit un mécanisme de DHCP failover disponible sur les serveurs Windows ou ISC DHCP.
Vérifications
R1# show ip dhcp pool POOL_COMPTA
Pool POOL_COMPTA :
Utilization mark (high/low) : 100 / 0
Subnet size (first/next) : 0 / 0
Total addresses : 254
Leased addresses : 8
Excluded addresses : 15
Pending event : noneR1# show ip dhcp binding
Bindings from all pools not associated with VRF:
IP address Client-ID/ Lease expiration Type
Hardware address/
User name
192.168.10.1 0100.0c29.aabbcc Jan 25 2025 06:12 PM Automatic
192.168.10.2 0100.0c29.112233 Jan 25 2025 06:14 PM AutomaticD’autres commandes utiles :
show ip dhcp server statistics ! compteurs Discover / Offer / Request / Ack
show ip dhcp conflict ! adresses en conflit (ping avant offer)
clear ip dhcp binding * ! libère tous les baux (utile en TP)
debug ip dhcp server events ! événements DHCP en directAstuce
Avant d’attribuer une adresse, le routeur la pingue (ICMP echo) pour s’assurer qu’elle est libre. S’il reçoit une réponse, il la place dans la table de conflits visible avec show ip dhcp conflict. Cela permet de détecter qu’un appareil utilise déjà une IP en statique alors qu’il ne le devrait pas.
Test côté client
Sur un PC du VLAN COMPTA dans Packet Tracer :
- Onglet Desktop → IP Configuration.
- Cocher DHCP.
- Vérifier l’attribution : IPv4, masque, passerelle (
192.168.10.254), DNS. - Sur le routeur,
show ip dhcp bindingdoit lister la nouvelle entrée.
Sur un PC réel, l’équivalent en ligne de commande est :
# Linux
sudo dhclient -v -r enp0s3 && sudo dhclient -v enp0s3
# Windows
ipconfig /release
ipconfig /renew
ipconfig /allCas particulier : DHCP relay
Si le serveur DHCP n’est pas dans le même sous-réseau que les clients (par exemple un serveur Windows centralisé), il faut configurer un agent relais sur l’interface du routeur côté client.
interface GigabitEthernet 0/0.10
ip helper-address 192.168.50.10
exitL’agent relais relaie les broadcasts DHCP en unicast vers l’IP indiquée. Cela évite d’avoir un serveur DHCP par sous-réseau.
Problèmes rencontrés et solutions
| Symptôme | Cause probable | Correction |
|---|---|---|
Le poste reste en 169.254.x.x (APIPA) | Pas de réponse du serveur DHCP : VLAN, trunk ou pool mal configuré | Vérifier le VLAN du port d’accès, la commande show ip dhcp pool, l’absence d’ACL bloquante |
| IP attribuée mais pas d’Internet | default-router mal configuré (IP physique au lieu de la VIP) | Corriger en mettant la VIP HSRP .254 |
| DNS ne résout rien | dns-server absent ou serveurs DNS injoignables | Mettre des DNS publics (1.1.1.1, 9.9.9.9) ou un DNS interne joignable |
Conflits d’IP visibles dans show ip dhcp conflict | Un appareil en statique utilise une IP de la plage DHCP | Décaler la plage exclue ou changer la conf statique |
| Le pool n’attribue plus rien | Pool plein ou bails non expirés | clear ip dhcp binding * ou agrandir le sous-réseau |
Compétences du bloc 1 mobilisées
| Compétence officielle | Mobilisation concrète |
|---|---|
| Recenser et identifier les ressources numériques | Plans d’adressage des deux VLAN (COMPTA et INFO) consignés : réseau, masque, plages exclues pour les IP statiques, plage dynamique disponible, passerelle (VIP HSRP), DNS distribués. |
| Mettre en place et vérifier les niveaux d’habilitation associés à un service | Cloisonnement par VLAN appliqué côté DHCP : chaque pool ne distribue d’IP qu’aux postes de son propre VLAN, et les plages ip dhcp excluded-address réservent les adresses des équipements (passerelle, serveurs) hors de la distribution dynamique. |
| Déployer un service | Mise en service du DHCP directement sur le routeur Cisco : deux pools dédiés, options default-router et dns-server configurées, durée de bail définie, service vérifié opérationnel sur les deux VLAN. |
| Réaliser les tests d’intégration et d’acceptation d’un service | Validation côté client (ipconfig /all) et côté routeur (show ip dhcp binding, show ip dhcp pool), scénarios de relâchement / renouvellement (ipconfig /release puis /renew) rejoués pour s’assurer du bon comportement. |
Bilan
À l’issue de l’atelier, les postes des VLAN COMPTA et INFO obtiennent automatiquement une IP, une passerelle (la VIP HSRP) et des DNS. La cohabitation DHCP + HSRP montre tout son intérêt : même si R1 tombe, R2 prend le relais à la fois pour la passerelle et pour le DHCP. Le poste utilisateur ne voit aucune coupure, et un nouveau collaborateur peut être branché sans qu’on ait à toucher la configuration.
Sources
- RFC 2131 — Dynamic Host Configuration Protocol , IETF, 1997.
- RFC 2132 — DHCP Options and BOOTP Vendor Extensions , IETF, 1997.
- Cisco — IP Addressing: DHCP Configuration Guide, Cisco IOS XE 17 .
- Cisco — Configuring the Cisco IOS DHCP Server .
- CCNA 200-301 Official Cert Guide (Volume 1), Wendell Odom, Cisco Press, 2019 , chapitre sur DHCP.
Fichier Packet Tracer
Le fichier .pkt correspondant à cette configuration est disponible ici.