DHCP est l’abréviation de Dynamic Host Configuration Protocol. En gros, c’est un mécanisme qui attribue des adresses IP aux ordinateurs de manière dynamique. Habituellement, DHCP est un service fonctionnant sur une machine serveur dans le réseau afin d’attribuer des adresses IP dynamiques aux hôtes.
Cependant, Les routeurs Cisco (et d’autres appareils tels que les pare-feu ASA etc) peuvent fonctionner également comme serveur DHCP remplaçant ainsi une machine dédiée à cette tâche.
L’une des pièces de configuration les plus excitantes au sein de Cisco IOS, à mon avis, est l’IP DHCP Pools. Avec cette fonctionnalité, vous pouvez configurer un commutateur ou un routeur Cisco pour qu’il agisse comme un serveur DHCP.
Cette fonctionnalité est utile dans plusieurs cas, notamment dans certains des cas suivants ; serveur DHCP de petite entreprise, serveur DHCP de reprise après sinistre ou aide à la configuration des périphériques à adresse IP statique. Examinons chaque cas plus en détail.
Les pools DHCP de Cisco IOS peuvent être configurés pour les petites entreprises où l’achat d’un DHCP autonome n’est pas économiquement rationnel. Les petites entreprises doivent « travailler avec ce qu’elles ont » et l’utilisation d’un routeur ou d’un commutateur de couche 3 qui se trouve déjà dans l’environnement du réseau est un excellent moyen de le faire.
Avoir un plan de reprise après sinistre est un pivot de la continuité des activités. Avoir Cisco Router DHCP dans votre poche arrière peut faire de vous un héros à la fin d’une journée inattendue. En utilisant cette technologie, vous pouvez avoir un modèle de configuration de sauvegarde dans votre arsenal pour les mauvais jours.
De plus en plus de périphériques réseau sont livrés avec DHCP activé par défaut ces jours-ci. Certains appareils comme, les caméras IP, les imprimantes, le point d’accès sans fil et d’autres appareils. Using a configured DHCP pool makes it much easier to remotely access these devices and assign static IP addresses as desired.
Lets take a closer look at the configuration and design.
Steps:
1- Create DHCP Pool
2- Specify the following:
- Network (Subnet Address with Network Mask)
- Default Router (Better known as « Default Gateway »)
- DNS Servers
- DHCP Options (Optional)
3- Exclude any addresses reserved for static address assignment, including the default gateway.
DHCP Configuration Commands:
Router(config)# ip dhcp pool VLAN_10
Creates a DHCP Pool named VLAN_10. Au sein de ce Pool, nous spécifierons les éléments mentionnés ci-dessus.
Router(dhcp-config)# network 172.16.10.0 255.255.255.0
Spécifie le réseau pour le Pool DHCP VLAN_10 comme étant le réseau 172.16.10.0/24.
Router(dhcp-config)# default-router 172.16.10.1
Spécifie que la « passerelle par défaut » pour les clients dhcp sera 172.16.10.1.
Routeur(dhcp-config)# dns-server 172.16.2.10
Spécifie que le serveur DNS sera 172.16.2.10
Routeur(config)# ip dhcp excluded-address 172.16.10.1 172.16.10.20
La commande ci-dessus indique au routeur d’exclure les adresses 172.16.10.1 à 172.16.10.20 de l’allocation DHCP. Ces adresses ne seront pas distribuées aux clients. La première adresse à être utilisée sera 172.16.10.21.
Optionnelle
Router(dhcp-config)# option 150 ip 172.16.2.20
Spécifie les options DHCP optionnelles nécessaires. Ci-dessus, l’option DHCP de 150 pour le serveur TFTP a été définie sur 172.16.2.20.
Vérification:
Show ip dhcp binding
La commande ci-dessus affichera toutes les adresses IP DHCP allouées et leur durée de location.
Renvoi des requêtes DHCP à l’aide de la commande ip helper address
DHCP, comme nous le savons tous, est un protocole de diffusion (honte à vous si vous ne le savez pas déjà 🙂 ! !) qui ne fonctionne normalement que sur le même domaine de diffusion de couche 2.
Cela signifie-t-il que vous devez avoir votre serveur DHCP connecté au même sous-réseau que les clients DHCP ? Si c’était le cas, ce ne serait pas du tout flexible ou économique.
Et si vous avez segmenté votre réseau interne en plusieurs sous-réseaux différents et que vous avez des clients DHCP dans tous ces sous-réseaux. Cela voudrait-il dire que vous devez avoir un serveur DHCP pour chaque sous-réseau ?
Heureusement, vous n’avez pas besoin d’avoir cette situation. Avec la commande Cisco « ip helper-address » configurée sur l’interface de couche 3 qui reçoit la diffusion DHCP du client, vous pouvez transformer la demande de diffusion en unicast et l’envoyer à un serveur DHCP centralisé qui peut être situé à un sous-réseau différent dans votre réseau.
La demande DHCP monodiffusion sera acheminée normalement vers le serveur DHCP de destination au sein du réseau, même si le serveur est éloigné du client DHCP.
Le serveur DHCP doit avoir une étendue de pool IP appropriée configurée pour le sous-réseau spécifique d’où provient la demande DHCP.
En utilisant cette étendue IP, le serveur attribuera une adresse IP appropriée au client demandeur. Par exemple, si le sous-réseau du client DHCP est 192.168.1.0/24, alors le serveur DHCP distant doit avoir un pool IP configuré pour attribuer des adresses dans la plage 192.168.1.0/24.
Le sous-réseau du client DHCP source est déterminé par l’adresse IP attribuée à l’interface Layer3 qui a l’adresse ip helper-address configurée.
Voyons un exemple de scénario ci-dessous avec un instantané de configuration.
Selon le schéma réseau ci-dessus, deux PC clients DHCP sont situés derrière le routeur A.
L’interface Fe0/0 du routeur a l’adresse IP 192.168.1.1/24.
Les clients DHCP vont commencer à diffuser des requêtes DHCP afin d’obtenir leurs informations d’adresse IP attribuées par un serveur.
Par défaut, ces requêtes de diffusion DHCP seront confinées dans le commutateur A et n’atteindront jamais un autre sous-réseau au-delà du routeur A.
En configurant une « ip helper-address 10.10.10.1 » sous l’interface Fe0/0 du routeur A, nous indiquons au routeur de transformer la diffusion DHCP en unicast DHCP et de l’envoyer au serveur DHCP de destination 10.10.10.1.
Le serveur verra que la demande DHCP provient du sous-réseau source 192.168.1.0/24 et attribuera donc une adresse IP appropriée à partir d’une étendue de pool IP configurée dans la plage 192.168.1.0.
Configuration sur le routeur A
RouterA# conf t
RouterA(config)# interface fastethernet0/0
RouterA(config-if)# ip address 192.168.1.1 255.255.255.0
RouterA(config-if)# ip helper-address 10.10.10.1
Quelques autres considérations importantes pour ip helper-address
Par défaut, la commande ip helper-address transmet également certains autres protocoles de diffusion en plus du protocole DHCP (BOOTP). Elle transmet par défaut les huit protocoles de diffusion UDP suivants :
- UDP 37 (Time protocol)
- UDP 49 (TACACS)
- UDP 53 (DNS)
- UDP 67 (DHCP Server)
- UDP 68 (DHCP Client)
- UDP 69 (TFTP)
- UDP 137 (NetBios)
- UDP 138 (Service de datagramme NetBios)
Si vous voulez ajouter plus de protocoles de diffusion à transférer, ou même supprimer certains des protocoles transférés par défaut, vous pouvez utiliser la commande « ip forward-protocol » sous le mode de configuration globale.
Exemple : Retirez les protocoles NetBios (137,138) d’être transférés par défaut, et ajoutez le protocole NTP 123 pour être transféré par ip helper-address.
RouteurA(config)# no ip forward-protocol udp 137
RouteurA(config)# no ip forward-protocol udp 138
RouteurA(config)# ip forward-protocol udp 123
Exemple de configuration de DHCP sur les routeurs Cisco
Tous les modèles de la série Cisco ont la capacité de fonctionner comme des serveurs DHCP, attribuant ainsi des adresses aux hôtes internes du réseau local. Sans serveur DHCP dans le réseau, vous devriez attribuer des adresses IP manuellement à chaque hôte. Ces adresses attribuées manuellement sont également appelées « adresses IP statiques ».
Dans la section suivante, je vais vous montrer comment configurer un routeur Cisco 851 ou 871 pour qu’il fonctionne comme serveur DHCP. La même configuration s’applique également aux autres modèles de la série de routeurs.
Routeur> enable
Routeur# config t
! définir un nom de pool d’adresses IP et une plage
Routeur(config)# ip dhcp pool LANPOOL
! définir une plage de réseau pour les adresses qui seront attribuées
Router(dhcp-config)# network 192.168.1.0 255.255.255.0
! définir un nom dns à attribuer aux clients
Router(dhcp-config)# domain-name mycompany.com
! définir une passerelle par défaut pour les clients
Router(dhcp-config)# default-router 192.168.1.1
! définir le serveur dns pour les clients
Router(dhcp-config)# dns-server 100.100.100.1
! définir un serveur WINS si vous en avez un
Router(dhcp-config)# netbios-name-server 192.168.1.2
Router(dhcp-config)# exit
!Les adresses suivantes ne seront pas distribuées aux clients
Router(config)# ip dhcp excluded-address 192.168.1.1 192.168.1.10
.