Vous êtes sur la page 1sur 14

Mastère Professionnel :

Administration des Systèmes, Sécurité et Cloud Computing

Cours : Services Réseaux

Chapitre 2 :

Services et protocoles de conguration

automatique des hôtes

Enseignant : Azer Zairi


E-mail : azer.zairi@gmail.com

Introduction

An de pouvoir communiquer sur des réseaux, chaque hôte nécessite une adresse IP.

Bien que l’adresse IP puisse être attribuée manuellement, en pratique, la plupart des
appareils obtiennent leur adresse de façon automatique.

Ce qui facilite l’utilisation des réseaux et d’internet

Pour ce faire, le protocole de communication DHCP est utilisé.

DHCP :

Celui-ci aide les systèmes cherchant à établir une connexion à acquérir les
informations nécessaires, principalement :
– L’adresse IP
– Le masque sous réseau
– L’adresse de la passerelle par défaut
– L’adresse du serveur DNS

Au début de l’informatique les PC utilisaient le protocole Bootstrap, également connu
sous le nom de BOOTP, qui assumait la fonction de gestionnaire des adresses.

1
Qu’est-ce que le Bootstrap Protocol (BOOTP) (1)


En septembre 1985, le Stanford University Network Group publiait dans
RFC 951 la première version du Bootstrap Protocol (BOOTP).

Développé en collaboration avec une équipe du fabricant de systèmes
informatiques Sun Microsystems (Actuellement Oracle),

Ce protocole de communication permettait pour la première fois aux
terminaux et aux postes de travail sans disque dur (utilisés à l’époque) :
– L’adresse IP,
– Le masque sous réseau,
– L’adresse de la passerelle,
– l’adresse du serveur de démarrage,
– et le registre du chier de démarrage (nécessaires au chargement du
système d’exploitation).

Il venait remplacer le Reverse Address Resolution Protocol (RARP) utilisé
jusqu’alors qui livrait exclusivement des adresses réseau et pouvait
uniquement être utilisé dans les sous-réseaux.
3

Qu’est-ce que le Bootstrap Protocol (BOOTP) (2)



Le Bootstrap Protocol fait partie de la suite des protocoles Internet et fonctionne
selon le modèle du client-serveur.

La communication de messages en vue de la transmission de l’information
réseau est donc eectuée entre un client BOOTP et le serveur BOOTP.

Comme la majorité des services de conguration des systèmes et des réseaux,
BootP utilise le protocole de transport UDP : User Datagram Protocol

Les ports sont : 67 (Serveur) et 68 (Client).

Comparé au TCP, ce protocole UDP est non seulement moins complexe mais
supporte également la télédiusion, contrairement au protocole standard pour
le transport de données.

Étant donné que le client ne connaît ni sa propre adresse ni l’adresse du serveur
BOOTP lors de l’établissement de la connexion,

Cette méthode de communication de messages, dans le cadre de laquelle tous
les participants du réseau sont contactés, est la seule solution pour une
acquisition automatique de l’adresse.
4

2
Fonctionnement de la communication d’informations réseau via BOOTP (5)

Informations propres au réseau (1)



Adresse IP du client (ciaddr) : le label « ciaddr » (client ip address) indique le champ de 32
bits dans lequel le client a renseigné son adresse IP s’il l’a connaît déjà. Si tel n’est pas le
cas, le champ prend la valeur 0.

Adresse IP du client (yiaddr) : le champ « yiaddr » (your ip address) est également
réservé à l’adresse IP du client. Ce champ de 32 bits est complété par le serveur si le
client ne connaît pas son adresse IP au moment de la création de la requête de réseau.

Adresses IP du serveur (siaddr) : dans la séquence de 32 bits « siaddr » (server ip
address), le serveur BOOTP communique son adresse IP au client.

Adresse IP de la passerelle (giaddr) : si une passerelle/gateway est intégrée au processus
de communication, son adresse est renseignée dans le champ « giaddr » (gateway ip
address).

Adresse matérielle du client (chaddr) : l’adresse matérielle (128 bits) fait partie des
champs obligatoires du client dans le cadre de la communication des messages du
Bootstrap Protocol. Sans cet ID, également appelé adresse de l’appareil ou adresse MAC,
le serveur ne peut ni attribuer l’adresse au client ni aecter les paramètres réseau
adéquats.
9

Fonctionnement de la communication d’informations réseau via BOOTP (6)

Informations propres au réseau (2)



Nom d’hôte du serveur (sname) : en option, le serveur peut d’autre part indiquer son nom
d’hôte dans la réponse BOOTP. Un champ d’une longueur de 512 bits est disponible à cet
e et dans lequel il peut insérer une chaîne de caractère correspondante terminée par un
zéro (un zéro marque la n de la chaîne).

Nom du chier de démarrage (le) : l’indication d’un chier de démarrage précis, dont le
client a besoin pour démarrer le système d’exploitation sur le terminal concerné ou la
station de travail, est également facultative.
– Ce champ prévoit également une chaîne de caractère terminée par un zéro qui représente dans
ce cas le chemin de registre complet du  chier.
– La séquence de caractères peut atteindre ici une longueur de 1024 bits.
– Dans la requête du client, ce champ comporte soit la valeur 0 soit un nom générique.

Informations spéciques au fabricant (vend) : la n du message du protocole BOOTP est
constituée par des informations spéciques au fabricant, qui ne sont pas couvertes par le
protocole.
– Il peut par exemple s’agir de l'indication de types et de numéros de série de matériel
spéciques.
– Par ailleurs, ce champ d’information disposant d’une longueur de 512 bits peut être réservé
pour un troisième processus Bootstrap ou de noyau.
10

5
Le protocole DHCP (1)


DHCP : Dynamic Host Conguration Protocol : Protocole de con guration dynamique
des hôtes.

Le protocole DHCP est une extension du protocole BOOTP (Bootstrap Protocol)

DHCP est conçu comme une solution pour les grands réseaux et pour les
équipements portables

Il complète BOOTP avec des fonctionnalités telles que la possibilité d’assigner
automatiquement des adresses réseau réutilisables et des options de con guration
supplémentaires.

Après les premières dénitions du protocole dans les RFC 1531 et 1541 (tous les deux
de 1993), la spécication standard a été ocialisée en 1997 et a été enregistrée dans
le RFC 2131.

L’IANA (Internet Assigned Numbers Authority) a attribué les ports UDP 67 et 68 (pour
IPv6 : ports 546 et 547) au protocole de communication, qui sont également aectés
pour le protocole Bootstrap.

Les détails du DHCP sont dé nis dans les RFC :
– RFC 1531 - RFC 1534 - RFC 2131 - RFC 2132
13

Le protocole DHCP (2)


L’attribution d’adresses avec le DHCP fonctionne selon le principe
du client-serveur :
– Les appareils qui recherchent une connexion demandent la
conguration de l’adresse IP à un serveur DHCP,
– qui accède à son tour à une base de données dans laquelle sont
saisies les paramètres réseau à dé nir.

De plus, ce serveur, qui fait partie intégrante de tout routeur DSL
moderne, peut assigner les paramètres suivants au client en
utilisant ses informations de base données :
– Adresse IP unique
– Masque de sous-réseau
– Passerelle standard
– Serveur DNS
– Conguration du proxy via WPAD (Web Proxy Auto-Discovery Protocol)
14

7
Utilisation des serveurs DHCP

Divers types de périphériques peuvent être
des serveurs DHCP lorsqu’ils exécutent des
logiciels de service DHCP.

Dans la plupart des réseaux de taille
moyenne à grande, le serveur DHCP est
généralement un serveur local dédié basé
sur un ordinateur.

Dans le cas des réseaux domestiques, le
serveur DHCP est généralement situé sur le
routeur local qui connecte le réseau
domestique au FAI (Fournisseur d’Accès
Internet).

Les hôtes locaux reçoivent les informations
d’adresse IP directement du routeur local.

Le routeur local reçoit une adresse IP du
serveur DHCP auprès du FAI.

15

Communication entre le client et le serveur DHCP (1)


L’attribution automatiques des adresses via le protocole de conguration dynamique
de l‘hôte (DHCP) se déroule en quatre étapes consécutives :
– Etape 1 : Le client envoie un paquet DHCPDISCOVER avec l’adresse cible
255.255.255.255 et l’adresse source 0.0.0.0.
– Etape 2 : Tous les serveurs DHCP qui écoutent les requêtes du port 67 répondent à la
demande du client avec un paquet DHCPOFFER.
– Etape 3 : Le client DHCP en sélectionne un à partir des données d’adresse reçues et
informe le serveur concerné via DHCPREQUEST.
– Etape 4 : Enn, le serveur conrme les paramètres TCP/IP et va les transmettre à
nouveau au client à l’aide d’un paquet DHCPACK (DHCP acknowledged : Acquittement).

16

8
Communication entre le client et le serveur DHCP (2)


L’attribution automatiques des adresses via le protocole de conguration dynamique de
l‘hôte (DHCP) se déroule en quatre étapes consécutives :
– Etape 1 : Le client envoie un paquet DHCPDISCOVER avec l’adresse cible
255.255.255.255 et l’adresse source 0.0.0.0. Avec cette diusion, il contacte tous les
participants du réseau pour localiser les serveurs DHCP disponibles et les informer de la
demande d’adresse. Dans le meilleur des cas, seul un serveur existe, ainsi il n’y a pas de
complications avec l’attribution.
– Etape 2 : Tous les serveurs DHCP qui écoutent les requêtes du port 67 répondent à la
demande du client avec un paquet DHCPOFFER. Cette réponse, en plus d’une éventuelle
adresse IP libre et l’adresse MAC du client, contient aussi le masque de sous-réseau ainsi que
l’adresse IP et ID du serveur.
– Etape 3 : Le client DHCP en sélectionne un à partir des données d’adresse reçues et informe
le serveur concerné via DHCPREQUEST. Tous les autres serveurs reçoivent aussi ce message
et savent ainsi que le choix a été fait en faveur d’un autre serveur. De plus, le client demande
au serveur d’activer les données proposées. Le DHCPREQUEST est aussi utilisé pour conrmer
les paramètres reçus précédemment.
– Etape 4 : Enn, le serveur conrme les paramètres TCP/IP et va les transmettre à nouveau au
client à l’aide d’un paquet DHCPACK (DHCP acknowledged : Acquittement). Il contient des
informations supplémentaires, par exemple sur les serveurs DNS, SMTP ou POP3. Le DHCP
client enregistre maintenant toutes les données reçues localement et se connecte au réseau.
Si le serveur n’est plus disponible ou si l’adresse IP a été attribuée à un autre client au cours
du processus de conguration, le serveur répond alors avec DHCPNAK (DHCPnot
acknowledged « non reconnu »).
17

Communication entre le client et le serveur DHCP (3)


L’adresse automatiquement assignée est enregistrée en combinaison avec l’adresse MAC dans la base de
données du serveur, ce qui signi e que la con guration devient permanente.

L’appareil se connecte toujours au réseau avec l’adresse IP a ectée, qui est bloquée pour les autres
clients.

Toutefois, cela présente aussi l’inconvénient que les nouveaux clients DHCP ne reçoivent pas d’adresse si
toute la plage d’adresses a déjà été assignée, même si certaines adresses IP ne sont plus utilisées
activement.

les con gurations IP transmises par le serveur DHCP ne sont pas valables pour une durée indéterminée
mais avec un bail dé ni par l’administrateur.
– Le délai de bail indique la durée pendant laquelle l’appareil peut accéder au réseau avec l’adresse IP
correspondante.
– Avant l’expiration de ce délai, les clients doivent demander une prolongation en envoyant un autre
paquet DHCPREQUEST.
– Si cela ne se produit pas, il y a alors un DHCP refresh et le serveur libère l’adresse.

Il est possible de réserver des adresses IP à des hôtes particuliers
(Généralement des serveurs) :
– Cette solution est connue sous le nom de DHCP statique : Les adresses IP
disponibles sont assignées manuellement à des adresses MAC spéciques
– Dans ce cas, il n’y a aucune restriction concernant la période de validité.
18

9
Renouvellement du bail

Les adresses IP dynamiques sont octroyées pour une durée limitée :
– durée du bail, ou lease time),
– qui est transmise au client dans l’accusé de réception qui clôture la transaction
DHCP (DHCPACK)

La valeur T1 (par défaut, 50 % de la durée du bail) qui détermine la durée
après laquelle le client commence à demander périodiquement le
renouvellement de son bail auprès du serveur qui lui a accordé son adresse.

Cette fois, la transaction est eectuée par transmission IP en monodiusion.

Si, lorsque le délai xé par la deuxième valeur, T2 (par défaut, 87,5 % de la
durée du bail), est écoulé et que le bail n’a pas pu être renouvelé (par
exemple, si le serveur DHCP d’origine est hors service), le client demande une
nouvelle allocation d’adresse par diusion.

Si, au terme du bail le client n’a pu ni en obtenir le renouvellement, ni obtenir
une nouvelle allocation, l’adresse est désactivée et il perd la possibilité
d’utiliser le réseau TCP/IP de façon normale.
21

Client et serveur sur des segments di érents


Lorsque le serveur DHCP et le client ne sont pas sur le même segment ethernet, les
di usions émises par le client ne parviennent pas au serveur parce que les routeurs ne
transmettent pas les di usions globales (255,255,255,255).

Dans ce cas, on utilise un agent de relais DHCP : Cet agent peut être généralement un
routeur ou un serveur.

L'agent relais est conguré avec une adresse IP statique, et on lui indique l’adresse d’un
serveur DHCP auquel il faudra transmettre les découvertes DHCP qui lui parviennent sur
le port 67 (écouté par le programme agent de relais).

Pour chercher une adresse IP au client nal,
– l'agent relais place sa propre adresse IP dans le champ GIADDR (Adresse de la passerelle) de
la trame DHCP qu'il a reçu du client.
– Il transmet ensuite cette trame en unicast, directement à l'adresse du serveur DHCP qu'on lui
a paramétré.
– Le serveur DHCP utilise le champ GIADDR pour déterminer le sous-réseau et proposer une
adresse dans la étendue d'adresses IP.
– Quand le serveur répond à l'agent, il envoie la réponse à l'adresse GIADDR qu'avait indiqué
l'agent relais, encore en unicast.
– L'agent relais transmet alors la réponse en broadcast sur le segment ethernet du client
demandeur.
22

11
Con guration du serveur DHCP

Pour qu’un serveur DHCP puisse servir des adresses IP, il est nécessaire de lui donner une
ou plusieurs plages d’adresses
– On l’appelle aussi pool d’adresses.
– Il est possible de dénir plusieurs plages, disjointes (séparées) ou contiguës (jointes)

Il est également possible d’exclure pour un usage en adressage statique par exemple, des
adresses ou blocs d’adresses compris dans une plage.

On peut eectuer des réservations d’adresses en limitant la possibilité d’aectation de ces
adresses aux clients possédant des adresses physiques ou aux clients identiés (Par leur
nom de hôte par exemple).
– Ceci peut s’avérer utile pour des machines dont l’adresse doit rester xe mais dont on veut
contrôler de manière centrale et automatique les autres paramètres IP.
– Ce mécanisme est assuré par l’option 61 (RFC 21313).

Une autre option permet de donner toujours la même adresse IP à un équipement
connecté à un port donné. Option 82 (RFC 30466)

Lors de l’utilisation sur un même segment de plusieurs serveurs DHCP, l’intersection des
plages d’adresses des di érents serveurs doit être vide,
– Sinon, ceci cause des ambiguïtés dans les a ectations et les renouvellements.
– En e et, les serveurs DHCP n’échangent aucune information relative aux baux qu’ils octroient.
23

Failles de sécurité de DHCP



Une des faiblesses du protocole DHCP est le fait qu’il est facile à manipuler :
– Puisque le client contacte tous les serveurs DHCP existants, cela permet
par exemple, aux hackers de faire intervenir leur propre machine, si ils
ont accès au réseau.
– On parle donc de serveur DHCP « Rogue », ce dernier essaie d’être plus
rapide avec sa réponse à la demande de connexion du client que le
serveur normal lui-même.
– En cas de succès, il transmet des paramètres manipulés ou bien
inutilisables.

Le hacker peut tenter d’introduire un routeur étranger qui sera la passerelle
par défaut des clients victimes.

Il peut aussi introduire des informations DNS incorrectes.

Le pirate peut donc intercepter tout le trac dans le réseau et avoir accès à
toutes les donnée sensibles
– ⇒ C’est l’attaque MITM : Man In The Middle
24

12
DHCP Snooping (3)

Ports dignes de con ance



Le commutateur qui implémente le protocole DHCP snooping
détermine un (des) port(s) de conance pour le(s) serveur(s) DHCP.

Tous les autres appareils essayant d’accéder au réseau via un autre
port sont considérés comme non dignes de conance.

Cela implique donc qu’un hôte sur lequel tourne un serveur DHCP
mais qui n’est pas approuvé par l’administrateur sera considéré
comme non digne de conance.

Mais si un paquet DHCP ne pouvant être envoyé que par un
serveur (DHCPOFFER, DHCPACK, DHCPNAK) arrive par le biais d’un
port qui n’est pas digne de conance, le commutateur bloque la
transmission.

27

Conclusion

DHCP est un protocole qui permet à un noeud qui se connecte sur un
réseau local d’obtenir dynamiquement et automatiquement ses
paramètres IP.

Le but principal étant la simpli cation de l’administration d’un réseau.

DHCP a été conçu au départ comme complément au protocole BOOTP
qui est utilisé par exemple lorsqu’on installe une machine à travers un
réseau.

Les versions actuelles des serveurs DHCP fonctionne pour IPv4 et
IPv6.

DHCP fonctionne en client-serveur :
– un serveur, qui détient le service d’attribution des con gurations IP,
– envoie les paramètres de con guration pour une durée prédéterminée
au client qui cherche ses paramètres IP automatiquement.

28

14

Vous aimerez peut-être aussi