Comment configurer le service DHCP sur un routeur Cisco ?
Sommaire
I. Présentation
Dans ce tutoriel, nous allons apprendre à configurer un serveur DHCP directement sur un routeur Cisco, en ligne de commande, afin de distribuer automatiquement une configuration réseau (adresse IP, passerelle et serveur DNS) aux machines du réseau local. Nous verrons comment créer une étendue, mais aussi comment exclure certaines adresses et vérifier la configuration active.
Un routeur Cisco peut servir à la fois de passerelle et de serveur DHCP pour le réseau local. Malgré tout, c'est un rôle que l'on peut aussi déployer sur un firewall ou un serveur Linux ou Windows.
- Tutoriel - Configurer un serveur DHCP sous Windows Server
- Tutoriel - Configurer un serveur DHCP sous Linux
Ce tutoriel s’adresse aux administrateurs réseaux souhaitant maîtriser la configuration DHCP sur Cisco IOS, que ce soit pour un lab CCNA, un réseau d’entreprise ou un environnement de test sur Packet Tracer. Vous pouvez aussi appliquer cela avec d'autres outils, car les commandes seront les mêmes (GNS3, Cisco CML, etc.). Ici, Packet Tracer sera utilisé.
Version originale de l'article : 13 mars 2014.
II. Infrastructure simple pour le TP
Nous suivrons l'architecture suivante avec un réseau en 192.168.0.0/24 :

Ici, l'interface fa0/0 du routeur est connectée au switch. Cette interface dispose de l'adresse IP 192.168.0.1. Il est important que le routeur dispose d'une adresse IP dans la plage d'adresses à distribuer. L'interface a été configurée de cette façon sur le routeur :
Router>enable
Router#configure terminal
Router(config)#interface fastEthernet 0/0
Router(config-if)#ip address 192.168.0.1 255.255.255.0
Router(config-if)#no shutdown
III. Configuration du DHCP sur un routeur
Nous allons donc nous connecter à notre routeur Cisco (Cisco 2811). Notre serveur DHCP devra donc distribuer des adresses IP pour le réseau 192.168.0.0/24 avec une exclusion des adresses IP 192.168.0.240-250, il distribuera la passerelle par défaut (lui-même), et le serveur DNS (8.8.8.8).
Voici la série de commandes à exécuter :
Router>enable
Router#configure terminal
Router(config)#ip dhcp pool CLIENT_LAN
Router(dhcp-config)#network 192.168.0.0 255.255.255.0
Router(dhcp-config)#dns-server 8.8.8.8
Router(dhcp-config)#default-router 192.168.0.1
Quelques explications :
ip dhcp pool: nom de l'étendue (pool), ce qui permet de s'y retrouver s'il y a plusieurs pools configurés sur un même routeur.network: adresse du réseau, le routeur va distribuer toutes les adresses IP disponibles.dns-server: serveur DNS à distribuer.default-router: passerelle par défaut à distribuer.
Ici, c'est vraiment la configuration de base. Vous pouvez aller plus loin en configurant des options DHCP spécifiques, en fonction de vos besoins.
Router(dhcp-config)#option <code option>
Par ailleurs, voici comment définir le nom du domaine de recherche :
Router(dhcp-config)#domain-name it-connect.local
Comme je le disais précédemment, le routeur Cisco va distribuer toutes les adresses disponibles sur le réseau spécifié. Il peut donc s'avérer judicieux d'effectuer une exclusion d'adresses IP que nous ne souhaitons pas distribuer. Nous devons quitter le mode actuel pour retourner en mode configuration afin d'effectuer cette modification. Par exemple, ici, nous allons exclure les adresses IP de 192.168.0.240 à 192.168.0.250 :
Router(dhcp-config)#exit Router(config)#ip dhcp excluded-address 192.168.0.240 192.168.0.250
La configuration peut être affichée à des fins de vérification :
Router#show run

IV. Tester la configuration
Depuis un PC présent sur le réseau Packet Tracer, nous pouvons effectuer une demande de bail pour tester le bon fonctionnement du serveur DHCP configuré sur le routeur Cisco. Le renouvellement d'un bail se fait de cette façon :
ipconfig /release ipconfig /renew
Tout est fonctionnel !

On voit donc bien ici que les paramètres distribués sont bien ceux que nous avons configurés sur notre routeur. Dans un premier temps, le routeur a tenté de distribuer sa propre adresse IP, ce qui a généré un avertissement dans la console :
%DHCPD-4-PING_CONFLICT: DHCP address conflict: server pinged 192.168.0.1.
Vous pouvez tout à fait exclure l'adresse IP du routeur dans la configuration du serveur DHCP. Désormais, vous savez comment faire.
Nous pouvons vérifier les baux attribués par notre routeur Cisco avec la commande suivante :
Router#sh ip dhcp binding
L'information est bien visible :
IP address Client-ID/ Lease expiration Type
Hardware address
192.168.0.2 0040.0BBD.1332 -- Automatic
V. Conclusion
Grâce à cette configuration, votre routeur Cisco est désormais capable d’attribuer automatiquement des adresses IP aux clients de votre réseau. Le service DHCP intégré offre une solution simple, rapide et efficace pour les petites infrastructures.
Pour ceux qui souhaitent s'exercer, nous vous proposons de mettre en application ce tutoriel via un exercice Packet Tracer prêt à l'emploi. Il vous suffit de télécharger le fichier .pka suivant et de l'ouvrir avec Packet Tracer.

Pour configurer la fonction IP-Helper, qui permet de mettre en place un DHCP relais sur Cisco, je vous oriente vers ce tutoriel :
Peut-on utiliser plusieurs pools DHCP sur un même routeur ?
Oui, il est possible de créer plusieurs pools DHCP pour desservir différents sous-réseaux ou VLANs, chacun avec ses propres paramètres d’adressage.
Comment forcer un client à obtenir une nouvelle adresse DHCP ?
Sur une machine, on peut forcer le renouvellement du bail DHCP via la commande ipconfig /renew (Windows) ou dhclient -r && dhclient (Linux).
Comment afficher les détails sur un pool DHCP ?
Sur le routeur Cisco, vous pouvez afficher les détails sur un pool DHCP, notamment pour connaître le taux d'utilisation, via la commande suivante : (Router#) show ip dhcp pool CLIENT_LAN. Il convient de spécifier le nom du pool tel qu'il a été renseigné dans la configuration.


très bon tuto et simple mon ami,mais il faut préciser les commandes de bail linux pour ce qui ne maîtrise pas linux.
sur linux : dhclient -r pour enlever le renouvellement, dhclient pour le renouvellement de bail et enfin ifconfig pour vérifier toutes les adresses attribuées sur linux.
Merci Ambelly pour le complément d’infos, c’est toujours appréciable 🙂
Salut merci a toi jeune homme
Mikael merci pour cette initiative que tu mis en place en fin que nous nous puissions partager jusque a faire avancer la technologie de l’avant .que Dieu te bénisse
merci
Bonjour et Merci pour le tutoriel, il y a quelque chose qui capte mon Attention, c’est la plage d’adresse du Rx 192.168.1.0/24 du schéma, alors qu’on est sensé par de la plage d’@ 192.168.0.0/24.
Selon mon expérience la passerelle d’un Rx IP doit appartenir au même Rx IP pourquoi parce que l’ensemble du Rx passe par elle (passerelle) pour communiquer avec le monde extérieur (avec les autres réseaux).
Bonjour d’abord merci pour le tuto très intéressant. Mais je pense qu’il faut ajouter la partie de l’attribution de l’@ IP au port Fa0/1. Parce que sans cela il n’est pas possible qu’ils prennent les adresses. Et la remarque de Abbahalou est vrai. Encore merci
Bonjour,
J’ai une simulation sur cisco packet tracer mais, je ne parviens pas a faire communiquer mes deux routeurs.Voici mon schéma, aidez-moi:
Bonjour.je ne sais comment faire pour reactiver le materiel
bonjour je vous remercie beaucoup c’est très intéressant
bonjour, merci beaucoup, cela m’a aidé beaucoup
trop top merci
Bonjour
Merci beaucoup pour ce partage.
Merci pour ce cours.
Comment faire une réservation d’adresse ip par adresse mac?
Merci
bonjour merci pour le tuto mais mon probleme je vx faire un routeur dhcp et un relais de dhcp pour differents vlans de mon reeau
debrouille toi
Whoaaaaaw merci c’est super cool sa dit donc !!
Bonjour
je viens vers vous car je voudrais utilisé les cours mais les cours sont bloqué par l’auteur et j’aurais voulu savoir comment les débloqué.
merci d’avance
Juste que j’ai bien fait.. Tout mais.. Ça marche sur l interface Fa0/0 .. Cela ne prend pas en compte le Fa0/1