Sie sind auf Seite 1von 33

DHCP

Dynamic Host
Configuration Protocol
I. Dfinition du terme DHCP
Il s'agit d'un protocole qui permet
un ordinateur qui se connecte sur un
rseau d'obtenir dynamiquement
(c'est--dire sans intervention
particulire) sa configuration rseau.
Le but principal tant la
simplification de l'administration d'un
rseau.
II. Fonctionnement du protocole DHCP
Il faut dans un premier temps au
moins un serveur DHCP qui distribue
des adresses IP. Cette machine va
servir de base pour toutes les
requtes DHCP, aussi elle doit avoir
une adresse IP fixe.
NB: Dans un rseau, on peut donc
n'avoir qu'une seule machine avec
adresse IP fixe le serveur DHCP.
1. les requtes DHCP
En fait, il existe plusieurs types de paquets DHCP susceptibles d'tre
mis soit par le client pour le ou les serveurs, soit par le serveur DHCP
vers un client :
DHCPDISCOVER dcouvrir (pour localiser les serveurs DHCP disponibles)
DHCPOFFER proposer (rponse du serveur un paquet DHCPDISCOVER, qui
contient les premiers paramtres)
DHCPREQUEST (requte diverse du client pour par exemple prolonger son bail)
DHCPACK (rponse du serveur qui contient des paramtres et l'adresse IP du
client)
DHCPNAK (rponse du serveur pour signaler au le client que son bail est chu ou si
le client annonce une mauvaise configuration rseau)
DHCPDECLINE refuser (le client annonce au serveur que l'adresse est dj utilise)
DHCPRELEASE librer (le client libre son adresse IP)
DHCPINFORM informer (le client demande des paramtres locaux, il a dj son
adresse IP)
2. bail
Pour des raisons d'optimisation des ressources
rseau, les adresses IP sont dlivres avec une date
de dbut et une date de fin de validit. C'est ce qu'on
appel un bail.
Un client qui voit son bail arriver terme peut
demander au serveur une prolongation du bail par un
DHCPREQUEST (?). De mme, lorsque le serveur
verra un bail arriv terme, il mettra un paquet
DHCPNAK(?) pour demander au client s'il veut
prolonger son bail. Si le serveur ne reoit pas de
rponse valide, il rend disponible l'adresse IP.
3. Scnario de fonctionnement
3.1- Demande de bail IP
Le processus de cration de bail commence lorsquun ordinateur
client dmarre ou initialise le protocole TCP/IP pour la premire
fois. Il commence galement lorsquun ordinateur client tente de
renouveler son bail et est rejet (dplacement dun client vers
un autre sous rseaux).
Le client diffuse un message DHCPDISCOVER pour les
informations dadressage IP. Le client ne dispose pas encore
dadresse IP, Il utilise donc 0.0.0.0 comme adresse source. tant
donn que le client ne connat pas ladresse IP du serveur DHCP, il
utilise 255.255.255.255 comme adresse de destination. Le
massage est diffus lensemble des sous rseaux.
Le message de demande contient galement ladresse MAC et le
ladresses IP de ordinateur client pour que les serveurs DHCP
puissent dterminer le client qui a envoy la demande.
3.2- Proposition de bail IP
Tous les serveurs DHCP qui disposent dune adresse IP valide pour le segment de
rseau auquel le client est connect rpondent avec un message DHCPOFFER, qui
contient les informations suivantes :
Ladresse matrielle du client
Une adresse IP propose
Un masque de sous rseau
La dure du bail
ladresse IP du serveur DHCP qui fait la proposition
Chaque serveur DHCP qui rpond rserve ladresse IP propose pour ne pas la
proposer un autre client avant lacceptation par le client ayant fait la demande.
Le client DHCP attend loffre pendant une seconde. Sil ne la reoit pas, il rediffuse
la demande quatre fois selon des intervalles de 2,4,8 et 16 secondes, plus une
dure alatoire comprise entre 0 et 1000 millisecondes.
Si le client ne reoit pas doffre aprs les quatre demandes, il utilise une adresse IP
de la plage rserve comprise entre 169.254.0.1 et 169.254.255.254. Le client
DHCP continue rechercher un serveur DHCP toutes les cinq minutes.
Lorsquun serveur DHCP est enfin disponible, les clients reoivent des adresses IP
valides. Ce qui leur permet de communiquer avec des htes internes et externes.
3.3- Choix du bail IP
Le client DHCP rpond la premire
offre quil reoit en diffusant un
message DHCPREQUEST pour
laccepter. Celui-ci contient
lidentification du serveur dont il a
accept loffre. Tous les autres
serveurs DHCP retirent alors leur
offre et conservent leurs adresses IP
pour dautres demandes de bail IP.
3.4- Accus de rception du bail IP
Le serveur DHCP qui met
lacceptation de loffre envoie un
message daccus de rception
DHCPACK pour notifier le bail. Ce
massage contient un bail valide pour
ladresse IP et dautres informations
de configuration (passerelle par
dfaut, serveur DNS ..).
3.5- Renouvellement automatique dun bail
Lorsqu'un client redmarre, il tente d'obtenir un bail pour la mme adresse
avec le serveur DHCP d'origine, en mettant un DHCPREQUEST. Si la
tentative se solde par un chec, le client continue utiliser la mme adresse
IP s'il lui reste du temps sur son bail.
Un client DHCP tente automatiquement de renouveler son bail lorsque 50%
sa dure a expir. Pour renouveler un bail, le client DHCP envoie un
message DHCPREQUEST directement au serveur DHCP duquel il a obtenu ce
bail. Si le serveur DHCP est disponible il envoie un DHCPACK avec la
nouvelle dure et ventuellement les mises jour des paramtres de
configuration.
Si le serveur DHCP nest pas disponible, le client continue utiliser ses
paramtres de configuration actuels. Il diffuse ensuite un message
DHCPDISCOVER pour mettre jour le bail de son adresse lorsque 87,5% de
la dure a expir. A ce stade, le client DHCP accepte un bail mis par
importe quel serveur DHCP.
Si le bail expire, le client doit immdiatement cesser d'utiliser l'adresse IP
en cours. Le client DHCP commence alors le processus de cration dun bail
DHCP en vue dobtenir une nouvelle adresse IP.
3.6- Renouvellement manuel dun bail
Vous pouvez renouveler manuellement un bail IP si vous
devez mettre jour immdiatement les informations de
configuration DHCP. Par exemple, si vous souhaitez que les
clients DHCP obtiennent immdiatement dun serveur DHCP
ladresse dun nouveau routeur, renouvelez le bail partir du
client pour changer cette configuration.
Pour renouveler le bail manuellement, utilisez les
commandes :
# dhclient -r eth0
Demande au client DHCP d'abandonner l'adresse IP utilise par
l'interface rseau. (Sous Windows utilisez la commande
ipconfig /release)
# dhclient eth0
Provoque l'mission d'une demande de renouvellement du bail
par le client DHCP. (Sous Windows utilisez la commande
ipconfig /renew).
Configuration
d'un serveur
DHCP
NB : Les mots-cls sont sensibles la casse
Il existe deux types de dclarations
dans le fichier de configuration :

Paramtres Les paramtres rglent l'excution d'une


tche, la faon dont une tche est excute ou les options
de configuration rseau envoyer au client.

Dclarations Les dclarations dcrivent la topologie du


rseau, les clients ; elles fournissent des adresses pour les
clients ou appliquent un groupe de paramtres un
groupe de dclarations.
Les paramtres qui commencent avec le mot-cl
option sont considrs comme des options. Ces
options configurent les options DHCP alors que les
paramtres eux, configurent des valeurs qui ne sont
pas facultatives ou contrlent le comportement du
serveur DHCP.
Les paramtres (y compris les options) dclars avant
une section entre accolades ( { } ) sont considrs
comme des paramtres globaux. Ceux-ci s'appliquent
toutes les sections se trouvant en dessous.
Si vous modifiez le fichier de configuration, les
modifications ne prendront pas effet tant que vous
n'aurez pas redmarr le dmon DHCP l'aide de la
commande service dhcpd restart .
cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample
/etc/dhcpd.conf
La configuration de base pour un rseau local
# Fichier de configuration du serveur DHCPd : /etc/dhcpd.conf
# Dure par dfaut du bail IP en secondes (0 = infini)
default-lease-time 3600;
# Dure maximale de bail IP possible en secondes
# (Si le client demande une dure de bail plus importante)
max-lease-time 7200;
# Demande de non-prise en charge du DNS dynamique
ddns-update-style none;
# Dclaration de sous-rseau 10.0.0.0
# Il faut obligatoirement dclarer chaque sous-rseau auxquels le
# serveur DHCP sera connect
subnet 10.0.0.0 netmask 255.0.0.0 {
# Masque de sous-rseau du client
option subnet-mask 255.0.0.0;
# Adresse de broadcast prfrentielle
option broadcast-address 10.255.255.255;
# Nom de domaine auxquels appartiendront les clients
option domain-name "unix.ebc-informatique.com";
# Adresses IP des serveurs de noms par ordre croissant de prfrence
option domain-name-servers 10.0.0.1;
# Adresses IP des routeurs par ordre croissant de prfrence
option routers 10.0.0.1;
# Adresses IP des serveurs WINS par ordre croissant de prfrence
option netbios-name-servers 10.0.0.1;
# Etendue des adresses IP distribuables
range 10.0.100.2 10.0.100.254;
range 10.0.101.2 10.0.101.254;
}
# Affectation dune adresse IP fixe un client
host Directeur{
# Adresse ETHERNET de la carte rseau du client
hardware ethernet 08:00:2b:4c:59:23;
# Adresse IP associe
fixed-address 192.168.1.222;
}
Dclaration de sous-rseau
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.254;
option subnet-mask 255.255.255.0;
option domain-name "ista.com";
option domain-name-servers 192.168.1.1;
option time-offset -18000; # Eastern Standard Time
range 192.168.1.10 192.168.1.100;
}
Dclaration de rseau partag
Tous les sous-rseaux partageant le mme rseau physique doivent
tre dclars dans une dclaration shared-network.
shared-network name {
option domain-name "test.ista.com";
option domain-name-servers ns1.ista.com, ns2.ista.com;
option routers 192.168.0.254;
subnet 192.168.1.0 netmask 255.255.252.0 {
range 192.168.1.1 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.252.0 {
range 192.168.2.1 192.168.2.254;
}
}
Dclaration de groupe
la dclaration group est utilise pour appliquer des paramtres globaux un groupe
de dclarations. Vous pouvez, par exemple, regrouper des rseaux partags, des sous-
rseaux et des htes.
group {
option routers 192.168.1.254;
option subnet-mask 255.255.255.0;
option domain-name "ista.com";
option domain-name-servers 192.168.1.1;
option time-offset -18000; # Eastern Standard Time
host tmsir{
option host-name " tmsir.ista.com";
hardware ethernet 00:A0:78:8E:9E:AA;
fixed-address 192.168.1.4;
}
host tri {
option host-name "tri.ista.com";
hardware ethernet 00:A1:DD:74:C3:F2;
fixed-address 192.168.1.6;
}
}
Base de donnes d'attribution

Sur le serveur DHCP, le fichier /var/lib/dhcpd/dhcpd.leases


stocke la base de donnes d'attribution client DHCP. Ne
modifiez pas ce fichier. Les informations d'attribution DHCP
pour toutes les adresses IP rcemment attribues sont
automatiquement stockes dans cette base de donnes.
Ces informations incluent :
la dure de l'attribution,
le destinataire de l'adresse IP,
les dates de dbut et de fin pour l'attribution
et l'adresse MAC de la carte d'interface rseau qui a t
utilise pour l'attribution.
Restaurer ses fichiers de configuration

Si vous avez prcdemment sauvegard vos


fichiers de configuration DHCP, vous pouvez
les restaurez en dplaant le fichier
dhcpd.leases dans le rpertoire que le
programme vous a indiqu prcdemment
ainsi quen dplacant le fichier dhcpd.conf
dans /etc/.
Le client ne trouve pas le serveur DHCP

Vrifions dabord que votre noyau dispose du


support multicast :

Si cela ne fonctionne toujours pas, il faut ajouter


une route pour le BROADCAST.
Excutez la commande suivante :
# route add -host 255.255.255.255 dev eth0
Configuration du client sous Windows
Configuration du client sous Linux
Pour configurer manuellement un client DHCP, vous devez modifier le fichier
/etc/sysconfig/network afin d'activer la mise en rseau. Ce fichier doit contenir la
ligne suivante:
NETWORKING=yes
Les fichiers paramtrant les priphriques rseau doivent aussi tre modifis. Par
exemple pour activer le client DHCP de linterface eth0, le fichier
/etc/sysconfig/network-scripts/ifcfg-eth0 doit contenir les lignes ci-dessous:

La configuration de la carte est termine, vous pouvez tester en relanant le service


rseau : # service network restart
Test du fonctionnement du serveur
DHCP
Le test du bon fonctionnement du serveur DHCP consiste
vrifier si les clients arrivent communiquer avec le
serveur et obtenir des adresses IP de la plage que celui ci
fournie.
Test au niveau du client Linux
Aprs toute configuration faite au niveau du serveur et du
client Linux, lancez la commande ifconfig.

Test au niveau du client sous Windows


Pour vrifier si le client Windows a rcupr une adresse IP du
serveur DHCP lancez la commande ipconfig /all partir de
linvite de commandes.
Une configuration avec prise en charge du
DNS dynamique
La machine qui supporte le serveur DHCP est galement le
serveur DNS du rseau. Dans la configuration suivante, le
serveur DHCP ctoie le serveur DNS matre du domaine
ebc-informatique.com. . Ce serveur comprend deux
interfaces rseaux : eth0 qui est connect au rseau ebc-
informatique.com. (adresses IP 172.16.x.x) et eth1 qui est
connect au sous-rseau dynamique unix.ebc-
informatique.com. (adresses IP 10.x.x.x). Le serveur DHCP,
cette fois-ci lcoute de la seule interface eth0, devra donc
informer le serveur DNS de larrive dun client sur le sous-
rseau 10.0.0.0 afin que celui-ci modifie les
correspondances DNS en consquences.
# Fichier de configuration du serveur DHCPd : /etc/dhcpd.conf
default-lease-time 3600;
max-lease-time 7200;
ddns-update-style ad-hoc; # Demande de prise en charge du DNS dynamique
# Dclaration dune cl de protection pour les MAJ du DNS
key DHCP_UPDATER { # (ATTENTION : il faudra configurer le serveur DNS en consquence)
algorithm HMAC-MD5.SIG-ALG.REG.INT;
secret pRP5FapFoJ95JEL06sv4PQ==;
}
# Dclaration dinformations DNS spcifiques certaines zones (Comme par exemple
la cl de MAJ transmettre)
zone ebc-informatique.com. {
primary 127.0.0.1; # Serveur primaire du domaine
key DHCP_UPDATER; # Cl de cryptage
}
zone 10.in-addr.arpa. {
primary 127.0.0.1;
key DHCP_UPDATER;
}
subnet 10.0.0.0 netmask 255.0.0.0 { # Dclaration de sous-rseau 10.0.0.0
option subnet-mask 255.0.0.0; # Masque de sous-rseau du client
option broadcast-address 10.255.255.255; # Adresse de broadcast prfrentielle
option domain-name "unix.ebc-informatique.com"; # Nom de domaine auxquels
appartiendront les clients
option domain-name-servers 10.0.0.1; # Adresses IP des serveurs de noms par ordre
croissant de prfrence
option routers 10.0.0.1; # Adresses IP des routeurs par ordre croissant de prfrence
option netbios-name-servers 10.0.0.1; # Adresses IP des serveurs WINS par ordre
croissant de prfrence
# Etendue des adresses IP distribuables
range 10.0.100.2 10.0.100.254;
range 10.0.101.2 10.0.101.254;
}
host patron { # Affectation dune adresse IP fixe un client
hardware ethernet 08:00:2b:4c:59:23; # Adresse ETHERNET de la carte rseau du
client
fixed-address 192.168.1.222; # Adresse IP associe
}

Das könnte Ihnen auch gefallen