Le Service DHCP IPv4 sur CISCO
Le service DHCP attribue dynamiquement une adresse IP à un hôte : principe, requêtes, bail et configuration sur un routeur CISCO.
DHCP = Dynamic Host Configuration Protocol
Traduction : protocole de configuration dynamique de l’hôte
Ce protocole date de 1993 !
Mise en situation :
Je suis dans un café avec des amis et je souhaite aller sur Internet via le Wifi. Je tape le mot de passe Wifi et hop ! je suis sur Internet !
Magique ? Pas vraiment. Que s’est-il passé lorsque votre équipement a mis quelques secondes avant de se connecter ?
- Il a demandé une adresse IP !
- Grâce à quoi ? Au protocole DHCP !
Pour naviguer sur Internet, tout ordinateur, tablette ou téléphone a besoin d’avoir une adresse IP ! Pour mettre une adresse IP sur un ordinateur, il existe deux méthodes :
- Adresse IP fixe
- Adresse IP dynamique
Vous vous voyez expliquer à votre mamie comment changer son adresse IP sur son ordinateur ? Non ! Trop compliqué ! Le DHCP est né !
Le protocole DHCP
Principe de fonctionnement
Le protocole ou service DHCP permet d’attribuer dynamiquement une adresse IP à un hôte. Le DHCP permet à un client qui arrive sur un réseau de demander une configuration réseau dynamique.

Cette dernière va contenir au minimum :
- Une adresse IP.
- Un masque de sous-réseau.
- Une passerelle par défaut.
- Un ou plusieurs serveurs DNS.
Comment cela se passe ?
- Le client = DHCP DISCOVER : Salut tout le monde ! J’ai besoin d’une adresse IP !
- Le serveur = DHCP OFFER : Salut mec ! Voilà ton adresse IP 😉
- Le client = DHCP REQUEST : Merci ! Je la prends. 😉
- Le serveur = DHCP ACK : C’est noté !
Les différentes requêtes DHCP

Les requêtes principales :
- DHCP DISCOVER (le client souhaite localiser les serveurs DHCP).
- DHCP OFFER (réponse du serveur DHCP, il contient les premiers paramètres IP).
- DHCP REQUEST (requête diverse du client pour, par exemple, prolonger son bail).
- DHCP ACK (réponse du serveur qui contient des paramètres et l’adresse IP du client).
Les requêtes secondaires :
- DHCP NAK (réponse du serveur pour signaler au client que son bail est échu, ou si le client annonce une mauvaise configuration réseau).
- DHCP DECLINE (le client refuse l’adresse IP car elle est déjà utilisée).
- DHCP RELEASE (le client libère son adresse IP).
- DHCP INFORM (le client demande des paramètres locaux, il a déjà son adresse IP).
Les options DHCP
Documentation officielle de l’IANA, avec les liens vers les RFC :
Documentation officielle CISCO sur les options DHCP :
Le bail DHCP

Bail = contrat de location.
Notre serveur DHCP ne va pas réellement DONNER une adresse IP à notre client. Il va lui PRÊTER pendant un laps de temps. Passons de suite au concret :
Ouvrez votre invite de commande Windows (CMD) et tapez la commande suivante :
C:\Users\Noël NICOLAS> ipconfig /allRésultat :

Grâce à cette commande, nous pouvons voir la configuration IP de notre ordinateur.
Les paramètres appris sont les suivants :
- Adresse IPv4 : 192.168.43.5
- Masque de sous-réseau : 255.255.255.0
- Bail obtenu : mercredi 26 septembre 2018 22:29:25
- Bail expirant : jeudi 27 septembre 2018 03:11:46
- Passerelle par défaut : 192.168.43.1
- Serveur DHCP : 192.168.43.1
- Serveur DNS : 192.168.43.1
Notre ordinateur a l’adresse IP 192.168.43.5 pendant 4 heures 42 minutes ! Notre serveur DHCP ne pourra pas redonner cette adresse à une autre personne durant ce laps de temps !
Configuration
Mise en situation :
- Je veux que mon routeur fasse serveur DHCP pour le réseau 192.168.1.0 /24.
- Les adresses IP finissant par .254, .1 et .2 sont déjà utilisées.
- L’adresse IP 192.168.1.90 est réservée à l’ordinateur possédant l’adresse MAC 000B.6B52.3268.
- La passerelle par défaut pour mon réseau est l’adresse 192.168.1.254.
- Les adresses IP de mes serveurs DNS sont les suivantes : 192.168.1.1 et 192.168.1.2.
- Le client doit demander une nouvelle adresse IP toutes les 10 minutes.
Voici la configuration :
ip dhcp excluded-address 192.168.1.254 < Exclure la Gateway
ip dhcp excluded-address 192.168.1.1 192.168.1.2 < Autres Exclusions
ip dhcp pool FINGER_POOL < Nom de notre Pool DHCP
network 192.168.1.0 255.255.255.0 < Plage d'adresse IP
default-router 192.168.1.254 < Passerelle par défaut
dns-server 192.168.1.1 192.168.1.2 < Serveur DNS
lease 0 0 10 [Day_Hours_Minutes] < Durée du bail DHCP
ip dhcp pool FINGER_POOL_FIXE_90 < Réservation de bail DHCP
network 192.168.1.90 255.255.255.0
hardware-address 000b.6b52.3268 < Adresse MAC de notre client
default-router 192.168.1.254
dns-server 192.168.1.1 192.168.1.2
lease 0 0 10Conclusion
Le DHCP Spoofing consiste à donner intentionnellement de mauvaises informations DHCP à nos clients (attaque). Le DHCP Snooping permet de se protéger du DHCP Spoofing.
Consulter l’article sur le DHCP Snooping afin d’avoir plus d’informations.
