dhcpciscobind9
MDstable
NoteSnippetChecklistPlaybook
DHCP — Configuration & Sécurisation
ISC DHCP / Kea, Cisco IOS DHCP server & relay, Windows DHCP, réservations, options, snooping
snippetintermediate 2026-05-14 4 min read
dhcpciscobind9windowsdhcp-snoopingrelayreservationskeaisc-dhcp
ISC DHCP Server (Linux)
Installation
bash
apt install isc-dhcp-server# Interface d'écouteecho 'INTERFACESv4="eth0"' >> /etc/default/isc-dhcp-server
Configuration — /etc/dhcp/dhcpd.conf
text
# Paramètres globauxauthoritative; # rejette les rogue DHCPdefault-lease-time 86400; # 24hmax-lease-time 172800; # 48h maxlog-facility local7; # syslog# Options globalesoption domain-name "example.local";option domain-name-servers 192.168.1.1, 192.168.1.2;option ntp-servers 192.168.1.254;# Subnet 192.168.1.0/24subnet 192.168.1.0 netmask 255.255.255.0 {range 192.168.1.100 192.168.1.200;option routers 192.168.1.254;option broadcast-address 192.168.1.255;default-lease-time 86400;}# Réservation par adresse MAChost srv-web {hardware ethernet aa:bb:cc:dd:ee:ff;fixed-address 192.168.1.10;option host-name "srv-web";}host poste-compta {hardware ethernet 11:22:33:44:55:66;fixed-address 192.168.1.50;}
Multi-VLAN (plusieurs subnets)
text
# VLAN 10 — Utilisateurssubnet 10.10.10.0 netmask 255.255.255.0 {range 10.10.10.50 10.10.10.250;option routers 10.10.10.1;option domain-name-servers 192.168.1.1;default-lease-time 28800; # 8h pour les postes utilisateurs}# VLAN 20 — Serveurs (pas de plage dynamique : tout en réservations)subnet 10.10.20.0 netmask 255.255.255.0 {option routers 10.10.20.1;}# VLAN 30 — IoTsubnet 10.10.30.0 netmask 255.255.255.0 {range 10.10.30.100 10.10.30.200;option routers 10.10.30.1;# Pas de DNS interne pour l'IoToption domain-name-servers 1.1.1.1;max-lease-time 3600; # bail court}
Commandes de gestion
bash
# Vérifier la syntaxedhcpd -t -cf /etc/dhcp/dhcpd.conf# Redémarrersystemctl restart isc-dhcp-server# Baux actifscat /var/lib/dhcpd/dhcpd.leases# Voir les attributions en temps réeltail -f /var/log/syslog | grep dhcp# Libérer un bail spécifique# (depuis le client Linux)dhclient -r && dhclient eth0
Cisco IOS — DHCP Server
text
! Exclure les adresses réservées (gateways, serveurs, imprimantes)ip dhcp excluded-address 192.168.1.1 192.168.1.20ip dhcp excluded-address 192.168.1.250 192.168.1.254! Créer le pool DHCPip dhcp pool VLAN10-USERSnetwork 192.168.1.0 255.255.255.0default-router 192.168.1.254dns-server 192.168.1.1 192.168.1.2domain-name example.locallease 1 0 0 ! durée : 1 jour! Réservation par MAC (Cisco)ip dhcp pool RESERVE-SRV-WEBhost 192.168.1.10 255.255.255.0client-identifier 01aa.bbcc.ddee.ff ! 01 + MAC sans séparateursdefault-router 192.168.1.254! Vérificationsshow ip dhcp poolshow ip dhcp bindingshow ip dhcp conflictshow ip dhcp statistics
Cisco IOS — DHCP Relay Agent
text
! Sur le routeur ou switch L3, interface du VLAN clientinterface vlan 10ip address 10.10.10.1 255.255.255.0ip helper-address 192.168.1.5 ! IP du serveur DHCP centraliséno shutdown! Vérifier que le relay fonctionnedebug ip dhcp server eventsshow ip dhcp relay information
Windows DHCP Server
powershell
# Installer le rôle DHCPInstall-WindowsFeature DHCP -IncludeManagementTools# Autoriser le serveur dans Active DirectoryAdd-DhcpServerInDC -DnsName "srv-dhcp.example.local" -IPAddress 192.168.1.5# Créer un scopeAdd-DhcpServerv4Scope `-Name "VLAN10-Users" `-StartRange 192.168.1.100 `-EndRange 192.168.1.200 `-SubnetMask 255.255.255.0 `-LeaseDuration 1.00:00:00# Options du scopeSet-DhcpServerv4OptionValue -ScopeId 192.168.1.0 `-Router 192.168.1.254 `-DnsServer 192.168.1.1, 192.168.1.2 `-DnsDomain "example.local"# Réservation par MACAdd-DhcpServerv4Reservation `-ScopeId 192.168.1.0 `-IPAddress 192.168.1.10 `-ClientId "AA-BB-CC-DD-EE-FF" `-Name "srv-web"# Exclure des plagesAdd-DhcpServerv4ExclusionRange `-ScopeId 192.168.1.0 `-StartRange 192.168.1.1 `-EndRange 192.168.1.20# Haute disponibilité DHCP (failover)Add-DhcpServerv4Failover `-Name "DHCP-HA" `-PartnerServer "srv-dhcp2.example.local" `-ScopeId 192.168.1.0 `-LoadBalancePercent 50# Lister les baux actifsGet-DhcpServerv4Lease -ScopeId 192.168.1.0# Vérifier les conflitsGet-DhcpServerv4Conflict
DHCP Snooping — Switch Cisco
text
! Activer globalementip dhcp snoopingip dhcp snooping vlan 10,20,30! Désactiver l'insertion de l'option 82 si pas nécessaireno ip dhcp snooping information option! Marquer les ports uplink / connexion serveur DHCP comme trustedinterface GigabitEthernet0/1description UPLINK-DISTRIBUTIONip dhcp snooping trustinterface GigabitEthernet0/24description SERVEUR-DHCPip dhcp snooping trust! Les ports clients restent untrusted (par défaut)! Optionnel : limiter le taux de requêtes DHCP par portinterface range GigabitEthernet0/2 - 23ip dhcp snooping limit rate 15 ! max 15 paquets/s! Vérificationsshow ip dhcp snoopingshow ip dhcp snooping bindingshow ip dhcp snooping statistics
💡 Tip —
Activer Dynamic ARP Inspection (DAI) conjointement au DHCP snooping — DAI utilise la table de binding DHCP snooping pour valider les requêtes ARP et bloquer l'ARP spoofing.
text
! DAI — Dynamic ARP Inspectionip arp inspection vlan 10,20,30interface GigabitEthernet0/1ip arp inspection trust ! même ports trusted que DHCP snoopingshow ip arp inspectionshow ip arp inspection vlan 10
Checklist0/12
OPS·BRAIN v1.027 notes · Networklocal