Introduction aux bases du protocole DHCP

Transcription

Introduction aux bases du protocole DHCP
DHCP
Présentation
DHCP
Dynamic Host Configuration Protocol
_______________________
SOMMAIRE
Page 1 sur 12
DHCP
Présentation
I – INTRODUCTION ................................................................................................................................................ 3
II – QUI ET QUAND ................................................................................................................................................ 3
III – LA FONCTION DU SERVICE DHCP .................................................................................................................. 3
IV – LE FONCTIONNEMENT ................................................................................................................................... 4
LES REQUETES ET LES MESSAGES DHCP ....................................................................................................................... 5
1.
Demande initiale du client : « DHCP Discover » ...................................................................................... 5
2.
Réponse des serveurs DHCP : « DHCP Offer » ....................................................................................... 6
3.
Choix du serveur DHCP par le client : « DHCP Request » ....................................................................... 6
4.
Confirmation de l’offre par le serveur : « DHCPACK » .......................................................................... 6
POUR RENOUVELER UNE ADRESSE, LE FONCTIONNEMENT EST LE SUIVANT (LES 2 SERVEURS CONNAISSENT LE CLIENT) : ................ 7
LES MESSAGES DHCP : ............................................................................................................................................ 8
INSTALLATION SERVEUR............................................................................................................................................. 9
CONFIGURATION POSTE CLIENT SUR UN POSTE WINDOWS .......................................................................................... 11
V - CONCLUSION ................................................................................................................................................. 12
Page 2 sur 12
DHCP
Présentation
I – Introduction
DHCP signifie Dynamic Host Configuration Protocol, c’est un protocole qui configure
dynamiquement des hôtes (éléments actifs sur un réseau) sur un réseau TCP/IP. Il permet de
soulager le travail des administrateurs réseaux au niveau des paramètres nécessaires à la
configuration IP : adresse, masque de réseau, adresse de passerelle par défaut, adresses
des serveurs DNS. Le protocole DHCP est généralement utilisé pour distribuer des adresses IP,
mais il a été conçu au départ comme complément au protocole BOOTP (Bootstrap Protocol) qui
est utilisé par exemple lorsque l'on installe une machine à travers un réseau (on peut
effectivement installer complètement un ordinateur, et c'est beaucoup plus rapide que de le
faire en à la main). Cette dernière possibilité est très intéressante pour la maintenance de gros
parcs machines. Les versions actuelles des serveurs DHCP fonctionnent pour IPv4, (adresses IP
sur 4 octets).Des spécifications pour le IPv6 (adresses IP sur 16 octets) est en cours de
développement par l'IETF. Nous allons voir le fonctionnement général de protocole.
II – Qui et quand
Le DHCP est définit par l’IETF - Internet Engineering Task Force « Détachement d'ingénierie d'Internet »,
c’est un groupe informel, international, ouvert à tout individu, qui participent à l'élaboration
de standards pour Internet appelé RFC – Request For Comments.
Le DHCP a été mis en place en Octobre 1993 au travers de la RFC 1531 et aussitôt mise a
jour par la RFC 1541.
En mars 1997 la RFC 2131 remplace la RFC 1541.En outre un nouveau type de message,
DHCPINFORM à été ajouté ; Le mécanisme de classement pour l'identification des clients DHCP
aux serveurs DHCP a été étendu pour inclure les classes "fournisseurs" ; La restriction au niveau
du temps de bail minimum a été enlevée. Enfin, plusieurs changements éditoriaux ont été faits
pour clarifier le texte.
III – La fonction du service DHCP
Pour un administrateur réseau, TCP/IP pose principalement deux problèmes
-
La gestion des adresses IP manuelle
L’administrateur doit tenir à jour une liste des pc avec leur adresse IP pour
éviter d’attribuer deux fois la même adresse IP, ce qui provoquerait un
conflit dans son réseau !
-
Les paramètres IP
Le masque de sous réseau, la passerelle, les serveurs DNS, le serveur
WINS sont des paramètres qui peuvent changer, imaginez si le réseau
comporte 300 ordinateurs, il faudrait intervenir sur chaque machine une
par une : travail laborieux !
Page 3 sur 12
DHCP
Présentation
Le service DHCP permet d’attribuer les adresses et les paramètres IP à la volée. Il suffit de
configurer les poste clients en « configuration IP automatique » ensuite le serveur lui transmet
une adresse et les paramètres qui vont avec. En cas par exemple de modification de la
passerelle sur le réseau il y a juste à modifier une fois le paramètre sur le serveur et au
prochain redémarrage (ou renouvellement du bail) des machines, la modification sera effectif.
IV – Le fonctionnement
Le DHCP fonctionne sur le modèle client-serveur, Pour communiquer entre le serveur et le
client le protocole DHCP utilise le protocole UDP. Les ports 67-68 sont utilisés. Un serveur,
qui détient la politique d'attribution des configurations IP, envoie une configuration donnée
pour une durée donnée à un client donné (typiquement, une machine qui vient de démarrer). Le
serveur va servir de base pour toutes les requêtes DHCP (il les reçoit et y répond), aussi doit-il
avoir une configuration IP fixe. Dans un réseau, on peut donc avoir plusieurs machines avec
une adresse IP fixe, celle-ci sont essentiellement réservées aux divers serveurs.
Quand une machine vient de démarrer, elle n'a pas de configuration réseau, et pourtant elle
doit arriver à émettre un message sur le réseau pour qu'on lui donne une vraie configuration.
La technique utilisée est le broadcast : pour trouver et dialoguer avec un serveur DHCP, la
machine va simplement émettre un paquet spécial, dit de broadcast, sur l'adresse IP
255.255.255.255 sur le réseau local. Ce paquet particulier va être reçu par toutes les
machines connectées au réseau. Lorsque le serveur DHCP reçoit ce paquet, il répond par un
autre paquet de broadcast contenant toutes les informations requises pour la configuration. Si
le client accepte la configuration, il renvoit un paquet pour informer le serveur qu'il garde les
paramètres, sinon, il fait une nouvelle demande.
Le client ne connaîssant pas, au moment de la requête, sa propre adresse, tous les échanges
DHCP s'effectuent en utilisant l'adresse de diffusion.
Les choses se passent de la même façon si le client a déjà une adresse IP sauf que le dialogue
ne s'établit plus avec du broadcast.
Un serveur DHCP va fournir de nombreuses informations. La fonction la plus souvent utilisée par
DHCP est l'attribution d'adresse IP. DHCP propose trois moyens de faire:
– allocation manuelle : Le serveur attribue une IP à chaque machine en fonction d'une
table remplie par l'administrateur.
– allocation automatique : Les adresses sont attribuées à partir d'un ensemble
d'adresses disponibles tenu à jour par le serveur.
– allocation dynamique : Ce système s'apparente à la « location » d'une adresse. Le
client obtient une adresse à durée limitée, appelée bail. Cette méthode permet une gestion
plus précise, le client signifiant sa déconnexion et renouvelant son bail, permettant de rendre
disponible plus rapidement une adresse non utilisée.
Page 4 sur 12
DHCP
Présentation
Les requêtes et les messages DHCP
En fait, il existe plusieurs messages DHCP qui permettent de compléter une configuration, la
renouveler... Ces messages sont susceptibles d'être émis soit par le client pour le ou les
serveurs, soit par le serveur pour le ou les clients:
La valeur entre parenthèses est utilisées pour identifier ces requêtes dans les messages DHCP
Le fonctionnement de ce mécanisme de demande et réception d’une adresse IP ce fait en4
grandes étapes. Ces étapes sont en faite des questions/réponses entres les deux entités. Le
protocole UDP est utilisé pour transporter la requête.
1. Demande initiale du client : « DHCP Discover »
La machine cliente envoie sur le réseau un datagrame UDP de diffusion
à la recherche d’un serveur DHCP. Il intègre un ID de transaction.
DETAILS DU DATAGRAMME ENVOYE
Adresse IP de destination : 255.255.255.255 (adr. Diffusion)
Adresse MAC : FF FF FF FF FF FF (adr. Diffusion)
ID de transaction : 1234 (Exemple valeur aléatoire)
CONFIGURATION ACTUELLE DE LA MACHINE
Adresse MAC : 00 EF A2 00 00 00 (Exemple)
Page 5 sur 12
DHCP
Présentation
2. Réponse des serveurs DHCP : « DHCP Offer »
Après réception du 1er datagramme, les serveur DHCP renvoie à leur
tour un datagramme UDP à une adresse IP qui est toujours une diffusions
puis qu’ils ne connaissent pas l’emplacement du client, par contre il est
dirigé vers l’adresse MAC de la machine cliente.
Il contient ce qu’on appelle un « bail ». Un « bail » indique l’adresse IP
proposée ainsi que la durée pour laquelle elle est disponible. A la fin
d’un bail la machine cliente reformulera une demande.
DETAILS DU DATAGRAMME ENVOYE
Adresse IP de destination : 255.255.255.255 (adr. Diffusion)
Adresse MAC : 00 EF A2 00 00 00 (adr. De la machine cliente)
ID de transaction : 1234 (Valeur précédente)
Adresse IP du bail : 192.168.0.101 (Exemple)
Durée du bail : 01/09/05 au 08/09/05
3. Choix du serveur DHCP par le client : « DHCP Request »
La machine cliente choisit une des offres qu’elle a reçue précédemment
et renvoie un datagramme de type diffusé (tout les serveur DHCP vont
:donc recevoir) qui acceptera l’offre et refusera toutes les autres.
DETAILS DU DATAGRAMME ENVOYE
Adresse IP de destination : 255.255.255.255 (adr. Diffusion)
Adresse MAC : FF FF FF FF FF FF (adr. De la machine cliente)
ID de transaction : 1231 (Exemple valeur aléatoire)
4. Confirmation de l’offre par le serveur : « DHCPACK »
Le serveur DHCP concerné accepte l’offre et transmet les autres
paramètres IP
DETAILS DU DATAGRAMME ENVOYE
Adresse IP de destination : 255.255.255.255 (adr. Diffusion)
Adresse MAC : 00 EF A2 00 00 00 (adr. De la machine cliente)
ID de transaction : 1231 (Valeur précédente)
Autres paramètres IP : passerelle, dns, wins, suffixe dns (Exemple)
Tant que la machine client n’a pas reçu « DHCPACK », elle émet « DHCP
REQUEST » toutes les 2 minutes jusqu’à 87,5% de la durée du bail. Sans
réponse alors elle repart à l’étape du « DHCP Discover ».
Page 6 sur 12
DHCP
Présentation
Pour demander une nouvelle adresse, le chronogramme-type est le suivant :
Pour renouveler une adresse, le fonctionnement est le suivant (les 2 serveurs connaissent le client) :
Page 7 sur 12
DHCP
Présentation
Les messages DHCP :
Dialogue client => serveur :
Les messages DHCP sont transmis via le protocole UDP. Bien que peu fiable, ce protocole suffit
au transport des paquets simples sur réseau local, et surtout il est très léger, donc intéressant
pour les petits systèmes. Le client n'utilise que le port 68 pour envoyer et recevoir ses
messages de la même façon, le serveur envoie et reçoit ses messages sur un seul port, le port
67.
La trame DHCP, (les chiffres entre parenthèses indiquent la taille du champ en octets) :
- op : vaut 1 pour BOOTREQUEST (requête client), 2 pour BOOTREPLY (réponse serveur)
- htype : type de l'adresse hardware (adresse MAC, par exemple.)
- hlen : longueur de l'adresse hardware (en octet). C'est 6 pour une adresse MAC
- hops : peut être utilisé par des relais DHCP
- xid : nombre aléatoire choisi par le client et qui est utilisé pour reconnaître le client
- secs : le temps écoulé (en secondes) depuis que le client a commencé sa requête
- flags : drapeau divers
- ciaddr : adresse IP du client, lorsqu'il en a déjà une
- yiaddr : la (future ?) adresse IP du client
- siaddr : adresse IP du (prochain) serveur à utiliser
- giaddr : adresse IP du relais (passerelle par exemple) lorsque la connexion directe
client/serveur n'est pas possible
- chaddr : adresse hardware du client
- sname : champ optionnel. Nom du serveur
- ile : nom du fichier à utiliser pour le boot
- options : Champs réservé pour les options. Dans une précédente RFC, la taille de ce
champ était limitée (limité à 64 octets par exemple pour la première version de Bootp) ;
maintenant, il n'y a plus de limitation. Dans tous les cas, un client DHCP doit être prêt à
recevoir au minimum 576 octets, mais la possibilité lui est offerte de demander au serveur de
restreindre la taille de ses messages.
Page 8 sur 12
DHCP
Présentation
Installation serveur
Installation du composant DHCP
Installation réaliser sur un serveur avec système d’exploitation de type windows server 2003
Avant tout il faut que le serveur soit en IP fixe, le composant DHCP n’est pas installé par
défaut sur le serveur il faut donc l’installé pour cela, il faut aller dans l’Ajout/Suppression de
programmes et cliquer sur Ajouter ou Supprimer des composants Windows.
Sélectionner la case Services de mise en réseau on entre dans l’option Détails et on coche la
case Protocole DHCP (Dynamic Host Configuration Protocol), après la validation le
composant s’installe.
A la suite de l’installation un nouvel icône « DHCP » apparaît dans les Outils d’administration
Il faut cliquer dessus pour rentrer dans la console DHCP
Avec le bouton droit on clique sur le serveur DHCP et on clique sur Nouvelle étendue.
Une Fenêtre apparaît où il est demandé un nom et une description pour l’étendue.
Dans la fenêtre suivante on doit renseigner la plage d’adresse utilisée.
Page 9 sur 12
DHCP
Présentation
Ensuite on peut, si on le souhaite, ajouter différentes plages d’exclusions.
Les adresses IP exclues ne seront pas attribuées par le serveur.
On clique sur suivant et là on renseigne sur la durée du bail que l’on veut. La durée du bail
spécifie la durée pendant laquelle un client peu utiliser une adresse IP de l’étendue.
Puis dans la fenêtre qui suit, on clique sur Oui je veux configurer ces options maintenant afin
que l’assistant configure l’étendue avec les options les plus courantes.
On entre l’adresse IP de la passerelle par défaut, puis on clique sur Suivant.
Là si on utilise un serveur DNS, il faut taper le nom du serveur puis cliquez sur Résoudre.
Enfin on clique sur Ajouter pour inclure ce serveur dans la liste des serveurs DNS affectés aux
clients DHCP.
On Fait de même pour le serveur WINS si il y a un, en ajoutant son nom et son adresse IP.
Cliquez sur Oui je veux activer cette étendue maintenant pour activer l’étendue et ainsi
délivrer des baux aux clients de l’étendue.
Page 10 sur 12
DHCP
Présentation
Pour éviter que des personnes puissent installer des serveurs DHCP, et par conséquent délivrer
des baux IP rentrant en conflit avec d’autres serveurs DHCP, il faut définir les serveurs
autorisés dans Active Directory.
Pour autoriser un serveur DHCP, il faut entrer dans la console DHCP, cliquer avec le bouton
droit sur le serveur DHCP, puis il faut sélectionner Autoriser.
Il faut Actualiser afin que le serveur apparaisse avec une flèche verte
Configuration poste client sur un poste Windows
Le but d'un serveur DHCP étant de simplifier le paramétrage des clients réseaux, la seule
chose à faire est de régler le protocole TCP/IP.
Pour cela, il suffit de se rendre dans les propriétés de la carte réseau. Ensuite il faut se rendre
dans les propriétés du protocole TCP/IP. Là il faut cocher Obtenir une adresse IP
automatiquement et de valider. Et voilà le poste est prêt à recevoir une configuration réseau
Page 11 sur 12
DHCP
Présentation
Il est possible de connaître l'adresse fournie par le serveur via la commande ipconfig ou
ipconfig /all en ligne de commande.
Résultat de l'Ipconfig :
V – CONCLUSION
Le protocole DHCP est un véritable gain de temps pour administrer des réseaux colossaux.
Page 12 sur 12