Télécharger la présentation
Publié parAnouska Vaillant Modifié depuis plus de 11 années
1
Dynamic Host Configuration Protocol DHCP [RFC 2131 - 1997 ]
IUT d'Orsay réseaux IUT d'Orsay réseaux DHCP Dynamic Host Configuration Protocol DHCP [RFC ]
2
BUT Permet à un ordinateur qui se connecte sur un réseau local d'obtenir et de configurer dynamiquement et automatiquement : Son adresse IP masque de son sous-réseau passerelle par défaut adresse IP du serveur DNS nom de son domaine
3
Fonctionnement Lorsque vous connectez un ordinateur sur le réseau il n’a aucune connaissance de son adresse IP Par contre il connait: son adresse Mac L’adresse de broadcast
4
Demande d’adresse IP
5
Demande de bail/adresse IP
Le poste client vient de se connecter, il n’a pas d’adresse IP En DHCP une adresse IP n’est fournit que pour un temps donné : Le bail. C’est pourquoi on parle de demande de bail plutôt que d’adresse IP Un bail a une durée : lease-time
6
Demande de bail - UN serveur DHCP
time DHCPDiscover 2 DHCPOffer 1 DHCPRequest 3 4 DHCPAck client serveur t0 C’est SEULEMENT après t0 que le client peut utiliser l’adresse IP communiquée par le serveur jusqu’à t0 + lease-time
7
Trames DHCP DHCPDISCOVER :Permet de trouver un serveur DHCP. La trame est une trame de « broadcast », elle est envoyée à l’adresse Le client n’ayant pas d’adresse prend l’adresse DHCPOFFER : contient une proposition de bail, l’adresse IP du serveur et l’adresse Mac du client. DHCPREQUEST : indique à tous les serveurs quel bail il a accepté et/ou demande de renouvellement de bail DHCPACK : le serveur confirme le bail.
8
Renouvellement de bail
A la moitié du bail, le client demande le renouvellement (prolongation de son bail), il n’y aura alors que les trames DHCPREQUEST et DHCPACK qui seront échangées. Si au bout des 7/8 du bail pas de réponse du serveur (ie pas de DHCPACK) alors le client essayera de joindre un serveur DHCP quelconque sur le réseau. Lors du renouvellement, le client utilise l’adresse IP donnée précédemment par le serveur Un renouvellement est donc beaucoup plus simple
9
Demande de renouvellement de bail
time client 3 DHCPRequest serveur DHCPAck 4 t1 Le client peut utiliser l’adresse IP communiquée par le serveur jusqu’à t1+lease-time
10
Les paquets IP échangés Lors d’un renouvellement de bail
Source Destination Protocol Info DHCPRequest DHCPAck
11
Message DHCP
12
Message DHCP Envoyé par le Client
DHCPDISCOVER demande de localisation des serveurs DHCP DHCPREQUEST demande de bail DHCPDECLINE refus d’adresse IP, elle est déjà utilisée DHCPRELEASE libération son bail DHCPINFORM demande de paramètres locaux (autre qu’une adresse IP)
13
Message DHCP Envoyé par le Serveur DHCPOFFER réponse à un DHCPDISCOVER
DHCPACK contient des paramètres et l'adresse IP du client DHCPNAK refus de bail
14
Problème de l’œuf et de la poule
Encapsulation d’un message DHCP
15
Encapsulation d’un message DHCP
BOOTP DHCP Trame contenant un message « DHCP » UDP Message DHCP Eth IP UDP IP par exemple Ethernet
16
Trame contenant un message DHCP
Adresse physique de l’émetteur Adresse physique du destinataire de la trame Ethernet Adresse IP source Adresse IP destinataire du paquet IP IP Port source Port destination du datagramme UDP Message DHCP
17
Le Problème de l’oeuf et la poule
Niveau physique A moment de la demande de bail, Est-ce que le client connaît son adresse physique ? Est-ce que le client connaît l’adresse physique du serveur DHCP ? QUE FAIRE ???
18
Le Problème de l’oeuf et la poule
Niveau réseau A moment de la demande de bail, Est-ce que le client connaît l’adresse IP du serveur DHCP ? Est-ce que le client connaît son adresse IP ? Est-ce que le serveur DHCP connaît l’adresse IP du client? QUE FAIRE ???
19
DIFFUSION niveau physique
Diffusion (broadcast) distribution de la requête DHCP à tous les postes connectés Client DHCP Adresse de diffusion: ff:ff:ff:ff:ff:ff
20
DIFFUSION niveau réseau
Diffusion (broadcast) distribution de la requête DHCP à tous les postes connectés Client DHCP Utilsation de l’adresse IP de diffusion générique
21
Niveau Transport - requêtes
Le client DHCP envoie la requête sur le port 67. Le serveur DHCP écoute sur le port 67. Client DHCP Serveur DHCP 67
22
Niveau Transport - réponses
Le serveur DHCP envoie la requête sur le port 68. Le client DHCP écoute sur le port 68. Client DHCP Serveur DHCP 68
23
DHCP : le client utilise un port réservé
Port serveur DHCP 67 Port Client DHCP 68 Client DHCP ServeurDHCP 65 66 67 68 69 65 66 67 68 69 L'en-tête UDP contient les numéros de port source et destination. Le protocole BOOTP utilise deux numéros de ports réservés, « client BOOTP » (n° de port 68) et « serveur BOOTP » (n° de port 67). Le client envoie ses requêtes en utilisant « serveur BOOTP » comme port de destination, habituellement à l'adresse de diffusion. Le serveur envoie ses réponses en utilisant « client BOOTP » comme port de destination ; en fonction des facilités offertes par le noyau ou le pilote du serveur, cela peut être envoyé ou non à l'adresse de diffusion (voir les explication plus loin dans la section intitulée « Problème de l'Oeuf et de la Poule » plus bas). La raison pour laquelle deux ports réservés sont utilisés, est que l'on veut éviter de « réveiller » et de programmer les démons serveurs BOOTP, quand une réponse d'amorçage doit être diffusée vers un client. Puisque le serveur et les autres hôtes n'écouteront pas le port « client BOOTP », de telles diffusions entrantes seront filtrées au niveau du noyau. Nous ne pourrions pas simplement permettre au client de choisir un numéro de port « aléatoire » pour le champ de port source UDP, puisque étant donné que la réponse du serveur peut être diffusée, un numéro de port choisi aléatoirement pourrait troubler les autres hôtes qui sont justement en train d'écouter sur ce port.
24
Trame contenant un DHCPDiscover
00:20.8f:b9:49:37 ff:ff:ff:ff:ff:ff Ethernet IP 68 67 UDP Message DHCPDiscover
25
Trame contenant DHCPDiscover
Adresse physique du client DHCP Trame contenant DHCPDiscover 00:20.8f:b9:49:37 ff:ff:ff:ff:ff:ff adresse physique de diffusion Adresse IP « neutre » Adresse IP de diffusion générique 68 67 Port source datagamme Message DHCPDiscover
26
Trame contenant un DHCPOffer
00.00.b4:bb:7d:ee 00:20.8f:b9:49:37 Ethernet IP 67 68 UDP Message DHCPDiscover
27
DHCPOffer adresse physique du client 00.00.b4:bb:7d:ee
Adresse physique du serveur DHCP 00.00.b4:bb:7d:ee 00:20.8f:b9:49:37 Adresse IP serveur DHCP 67 68 Port source datagamme Message DHCPDiscover
28
Trame contenant un DHCPRequest
00:20.8f:b9:49:37 ff:ff:ff:ff:ff:ff Ethernet IP 68 67 UDP Message DHCPRequest
29
Demande de baux DES serveurs DHCP
client DHCPDiscover DHCPDiscover DHCPOffer DHCPOffer DHCPRequest DHCPRequest DHCPAck Le client refuse mon offre time
30
Bilan des échanges lors d’une demande de bail
31
Les paquets IP échangés
Source Destination Protocol Info DHCPDiscover # le serveur DHCP vérifie que l’adresse IP qu’il veut offrir n’est pas utilisée Serveur DHCP Broadcast ARP ? DHCPOffer DHCPRequest DHCPACK # le client vérifie via ARP que personne n’utilisa sa nouvelle adresse Client DHCP Broadcast ARP ?
32
Format d’un message DHCP
33
Dynamic Host Configuration Protocol
DHCP a été conçu comme complément de BOOTP- Bootstrap Protocol – BOOTP: [RFC ] Protocole de démarrage Une station récupère les informations pour s’amorcer (« booter ») sur un serveur « d’amorçage » distant
34
Format d’un message BOOTP
HTYPE OP HLEN HOPS identifiant session secs flags adresse IP client (écrit par le client) adresse IP client (proposée par le serveur) serveur adresse IP gaterway adresse IP adresse physique du client nom du serveur Fichier d’amorçage OPTION
35
Format d’un message DHCP
HTYPE OP HLEN HOPS identifiant session secs flags adresse IP client (écrit par le client) adresse IP client (proposée par le serveur) serveur adresse IP gaterway adresse IP adresse physique du client nom du serveur Fichier d’amorçage OPTIONS définies dans DHCP
36
Sous Unix/Linux
37
Sous Unix/Linux Client DHCP : dhclient Serveur DHCP : dhcpd
Fichier de configuration du serveur : /etc/dhcpd.conf
38
Exemple de fichier dhcpd.conf
# option definitions common to all supported networks... option domain-name "voip.u-psud.fr"; option domain-name-servers , ; option option-150 code 150 = ip-address; option option ; default-lease-time 600; max-lease-time 7200; subnet netmask { #VOIP IPN bat vlan 1201 range ; option routers ; } subnet netmask { #VOIP CSNSM bat vlan 1204 range ; option routers ;
39
Remerciement http://christian.caleca.free.fr/dhcp/
RFC en Français : Manuel de dhcpd, de dhclient, et de dhcpd.conf
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.