SlideShare una empresa de Scribd logo
1 de 41
DHCP 
(Dynamic Host Configuration Protocol) 
M.OUBROU Aderrahmane 
DHCP [RFC 2131 – 1997]
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
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
Demande de bail/adresse IP 
Le poste client vient de se connecter, il n’a pas @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
Demande de bail - UN serveur DHCP 
C’est SEULEMENT après t0 que le client peut utiliser 
l’adresse IP communiquée par le serveur jusqu’à 
t0 + lease-time 
6 
time 
DHCPDiscover 
2 
DHCPOffer 
1 
3 DHCPRequest 
DHCPAck 4 
client 
serveur 
t0
Trames DHCP 
DHCPDISCOVER :Permet de trouver un 
serveur DHCP. La trame est une trame de 
« broadcast », elle est envoyée à l’adresse 
255.255.255.255. Le client n’ayant pas d’adresse 
prend l’adresse 0.0.0.0 
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.
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
Demande de renouvellement de bail 
Le client peut utiliser l’adresse IP communiquée 
par le serveur jusqu’à t1+lease-time 
9 
time 
3 DHCPRequest 
4 
DHCPAck 
client 
serveur 
t1
Les paquets IP échangés Lors d’un 
renouvellement de bail 
Source Destination Protocol Info 
192.168.0.9 192.168.0.253 DHCPRequest 
192.168.0.253 192.168.0.9 DHCPAck 
10
Message DHCP
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)
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
Problème de 
l’oeuf et de la poule 
Encapsulation d’un message DHCP
Encapsulation d’un message DHCP 
BOOTP DHCP 
UDP 
IP 
par exemple 
Ethernet 
Trame contenant un 
message « DHCP » 
Message 
DHCP 
Eth IP UDP
Trame contenant un message DHCP 
Adresse physique de l’émetteur 
Adresse physique du destinataire de 
la trame 
Adresse IP source 
Adresse IP destinataire du paquet IP 
Port source 
Port destination du datagramme 
16 
Message DHCP 
Ethernet 
IP 
UDP
Le Problème de l’oeuf et la poule 
17 
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 ??? 
Niveau 
physique
Le Problème de l’oeuf et la poule 
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 ??? 
Niveau 
réseau
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 
19
DIFFUSION niveau réseau 
Diffusion (broadcast) distribution de la requête DHCP à 
tous les postes connectés 
20 
Client 
DHCP 
Utilsation de 
l’adresse IP de 
diffusion générique 
255.255.255.255
Niveau Transport - requêtes 
Le client DHCP envoie la requête sur le port 67. Le 
serveur DHCP écoute sur le port 67. 
Serveur DHCP 
21 
67 
Client 
DHCP
Niveau Transport - requêtes 
Le client DHCP envoie la requête sur le port 67. Le 
serveur DHCP écoute sur le port 67. 
Serveur DHCP 
22 
67 
Client 
DHCP
Niveau Transport - réponses 
Le serveur DHCP envoie la requête sur le port 68. Le 
client DHCP écoute sur le port 68. 
Serveur DHCP 
23 
68 
Client 
DHCP
DHCP : le client utilise un port réservé 
24 
Port serveur DHCP 67 
Port Client DHCP 68 
Client 
DHCP 
65 
66 
67 
68 
69 
Serveur 
DHCP 
65 
66 
67 
68 
69
Trame contenant un DHCPDiscover 
00:20.8f:b9:49:37 
ff:ff:ff:ff:ff:ff 
0.0.0.0 
255.255.255.255 
25 Message DHCPDiscover 
68 
67 
Ethernet 
IP 
UDP
Trame contenant 
DHCPDiscover 
26 
00:20.8f:b9:49:37 
ff:ff:ff:ff:ff:ff 
0.0.0.0 
255.255.255.255 
Message 
68 
67 
DHCPDiscover 
adresse 
physique de 
diffusion 
Adresse IP 
de 
diffusion 
générique 
Adresse 
physique du 
client DHCP 
Adresse 
IP 
« neutre » 
Port 
source 
datagamm 
e
Trame contenant un DHCPOffer 
00.00.b4:bb:7d:ee 
00:20.8f:b9:49:37 
192.168.0.253 
Message DHCPDiscover 
27 
67 
68 
Ethernet 
IP 
UDP
28 
67 
68 
00.00.b4:bb:7d:ee 
00:20.8f:b9:49:37 
192.168.0.253 
Message DHCPDiscover 
adresse 
physique 
du client 
Adresse 
physique du 
serveur DHCP 
Adresse 
IP serveur 
DHCP 
Port 
source 
datagamm 
e 
DHCPOffer
Trame contenant un DHCPRequest 
00:20.8f:b9:49:37 
ff:ff:ff:ff:ff:ff 
0.0.0.0 
255.255.255.255 
29 Message DHCPRequest 
68 
67 
Ethernet 
IP 
UDP
Demande de baux 
DES serveurs DHCP 
serveur client serveur 
DHCPDiscover 
DHCPOffer 
DHCPRequest 
30 
DHCPAck 
time 
DHCPDiscover 
DHCPOffer 
DHCPRequest 
Le client refuse 
mon offre
Bilan des échanges lors d’une 
demande de bail
Les paquets IP échangés 
Source Destination Protocol Info 
0.0.0.0 255.255.255.255 DHCPDiscover 
# le serveur DHCP vérifie que l’adresse IP qu’il veut offrir 
n’est pas utilisée 
Serveur DHCP Broadcast ARP 
192.168.0.9? 
192.168.0.253 DHCPOffer 
0.0.0.0 255.255.255.255 DHCPRequest 
192.168.0.253 192.168.0.9 DHCPACK 
# le client vérifie via ARP que personne n’utilisa sa nouvelle 
adresse 
Client DHCP Broadcast ARP 
192.168.0.9?
Format d’un message DHCP
Dynamic Host Configuration Protocol 
DHCP a été conçu comme complément de 
BOOTP- Bootstrap Protocol – 
BOOTP: [RFC 951 - 1985] 
Protocole de démarrage 
Une station récupère les informations pour 
s’amorcer (« booter ») sur un serveur 
« d’amorçage » distant
Format d’un message BOOTP 
HTYPE HOPS 
identifiant session 
secs 
flags 
adresse IP client (écrit par le client) 
adresse IP client (proposée par le serveur) 
35 
OP 
HLEN 
serveur adresse IP 
gaterway adresse IP 
adresse physique du client 
nom du serveur 
Fichier d’amorçage 
OPTION
HTYPE HOPS 
identifiant session 
secs 
flags 
adresse IP client (écrit par le client) 
adresse IP client (proposée par le serveur) 
36 
Format d’un message DHCP 
OP 
HLEN 
serveur adresse IP 
gaterway adresse IP 
adresse physique du client 
nom du serveur 
Fichier d’amorçage 
OPTIONS définies dans DHCP
Sous Unix/Linux
Sous Unix/Linux 
Client DHCP : dhclient 
Serveur DHCP : dhcpd 
Fichier de configuration du serveur : /etc/dhcpd.conf
Exemple de fichier dhcpd.conf 
# option definitions common to all supported networks... 
option domain-name "voip.u-psud.fr"; 
option domain-name-servers 129.175.34.35, 129.175.36.37; 
option option-150 code 150 = ip-address; 
option option-150 192.168.200.10; 
default-lease-time 600; 
max-lease-time 7200; 
subnet 172.16.2.0 netmask 255.255.255.128 { 
#VOIP IPN bat 106 - vlan 1201 
range 172.16.2.4 172.16.2.126; 
option routers 172.16.2.1; 
} 
subnet 172.16.2.128 netmask 255.255.255.128 { 
#VOIP CSNSM bat 104 - vlan 1204 
range 172.16.2.132 172.16.2.254; 
option routers 172.16.2.129; 
} 
39
Documentation 
http://christian.caleca.free.fr/dhcp/ 
http://www.frameip.com/dhcp/ 
RFC en Français : http://abcdrfc.free.fr/ 
Manuel de dhcpd, de dhclient, et de dhcpd.conf
Dhcp

Más contenido relacionado

La actualidad más candente

Presentation du framework symfony
Presentation du framework symfonyPresentation du framework symfony
Presentation du framework symfonyJeremy Gachet
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPNCharif Khrichfa
 
Administration ubuntu-serveur-installation-ftp-serveur
Administration ubuntu-serveur-installation-ftp-serveurAdministration ubuntu-serveur-installation-ftp-serveur
Administration ubuntu-serveur-installation-ftp-serveurTECOS
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueAmadou Dia
 
Rapport mise en place d'un sevrer VPN .
   Rapport mise en place d'un sevrer VPN .   Rapport mise en place d'un sevrer VPN .
Rapport mise en place d'un sevrer VPN .Mouad Lousimi
 
Alphorm.com Formation MECM/SCCM : Mise en Place et Administration
Alphorm.com Formation MECM/SCCM : Mise en Place et AdministrationAlphorm.com Formation MECM/SCCM : Mise en Place et Administration
Alphorm.com Formation MECM/SCCM : Mise en Place et AdministrationAlphorm
 
Rapport d’installation d’un serveur de messagerie avec le Webmail Roundcube
Rapport d’installation d’un serveur de  messagerie avec le Webmail RoundcubeRapport d’installation d’un serveur de  messagerie avec le Webmail Roundcube
Rapport d’installation d’un serveur de messagerie avec le Webmail RoundcubeBalla Moussa Doumbouya
 
Mise en place d'un vpn site à site avec pfsense
Mise en place d'un vpn site à site avec pfsenseMise en place d'un vpn site à site avec pfsense
Mise en place d'un vpn site à site avec pfsensePape Moussa SONKO
 
Administration réseaux sous linux cours 1
Administration réseaux sous linux   cours 1Administration réseaux sous linux   cours 1
Administration réseaux sous linux cours 1Stephen Salama
 
Admin reseaux sous linux cours 3
Admin reseaux sous linux   cours 3Admin reseaux sous linux   cours 3
Admin reseaux sous linux cours 3Stephen Salama
 
Administration des services réseaux
Administration des services réseauxAdministration des services réseaux
Administration des services réseauxFethi Kiwa
 
Aaron Mildenstein - Using Logstash with Zabbix
Aaron Mildenstein - Using Logstash with ZabbixAaron Mildenstein - Using Logstash with Zabbix
Aaron Mildenstein - Using Logstash with ZabbixZabbix
 
ACL on Linux - Part 1
ACL on Linux - Part 1ACL on Linux - Part 1
ACL on Linux - Part 1GLC Networks
 

La actualidad más candente (20)

Presentation du framework symfony
Presentation du framework symfonyPresentation du framework symfony
Presentation du framework symfony
 
Vpn
VpnVpn
Vpn
 
Etude et mise en place d’un VPN
Etude et mise en place d’un VPNEtude et mise en place d’un VPN
Etude et mise en place d’un VPN
 
Administration ubuntu-serveur-installation-ftp-serveur
Administration ubuntu-serveur-installation-ftp-serveurAdministration ubuntu-serveur-installation-ftp-serveur
Administration ubuntu-serveur-installation-ftp-serveur
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en Pratique
 
Rapport mise en place d'un sevrer VPN .
   Rapport mise en place d'un sevrer VPN .   Rapport mise en place d'un sevrer VPN .
Rapport mise en place d'un sevrer VPN .
 
Alphorm.com Formation MECM/SCCM : Mise en Place et Administration
Alphorm.com Formation MECM/SCCM : Mise en Place et AdministrationAlphorm.com Formation MECM/SCCM : Mise en Place et Administration
Alphorm.com Formation MECM/SCCM : Mise en Place et Administration
 
radius
radiusradius
radius
 
Rapport d’installation d’un serveur de messagerie avec le Webmail Roundcube
Rapport d’installation d’un serveur de  messagerie avec le Webmail RoundcubeRapport d’installation d’un serveur de  messagerie avec le Webmail Roundcube
Rapport d’installation d’un serveur de messagerie avec le Webmail Roundcube
 
Mise en place d'un vpn site à site avec pfsense
Mise en place d'un vpn site à site avec pfsenseMise en place d'un vpn site à site avec pfsense
Mise en place d'un vpn site à site avec pfsense
 
Administration réseaux sous linux cours 1
Administration réseaux sous linux   cours 1Administration réseaux sous linux   cours 1
Administration réseaux sous linux cours 1
 
Tp n 3 linux
Tp n 3 linuxTp n 3 linux
Tp n 3 linux
 
Admin reseaux sous linux cours 3
Admin reseaux sous linux   cours 3Admin reseaux sous linux   cours 3
Admin reseaux sous linux cours 3
 
Tubes.pdf
Tubes.pdfTubes.pdf
Tubes.pdf
 
Administration des services réseaux
Administration des services réseauxAdministration des services réseaux
Administration des services réseaux
 
Aaron Mildenstein - Using Logstash with Zabbix
Aaron Mildenstein - Using Logstash with ZabbixAaron Mildenstein - Using Logstash with Zabbix
Aaron Mildenstein - Using Logstash with Zabbix
 
ACL on Linux - Part 1
ACL on Linux - Part 1ACL on Linux - Part 1
ACL on Linux - Part 1
 
Tibco ems admin commands
Tibco ems admin commandsTibco ems admin commands
Tibco ems admin commands
 
Mise en place d’un OpenVPN sous PfSense
Mise en place d’un OpenVPN sous PfSenseMise en place d’un OpenVPN sous PfSense
Mise en place d’un OpenVPN sous PfSense
 
Sip
SipSip
Sip
 

Similar a Dhcp

DHCP sous Ubuntu
DHCP sous Ubuntu DHCP sous Ubuntu
DHCP sous Ubuntu Souhaib El
 
Dhcp serrver dofara roger cyrus
Dhcp serrver dofara roger cyrusDhcp serrver dofara roger cyrus
Dhcp serrver dofara roger cyrusRoger Cyrus DOFARA
 
chapitre deux dynamic host configuration protocol.pptx
chapitre deux   dynamic host configuration protocol.pptxchapitre deux   dynamic host configuration protocol.pptx
chapitre deux dynamic host configuration protocol.pptxmohamedstps
 
58586406 ccna4-resume-19-pages
58586406 ccna4-resume-19-pages58586406 ccna4-resume-19-pages
58586406 ccna4-resume-19-pagesilbahi
 
Le service dhcp
Le service dhcpLe service dhcp
Le service dhcpDGMALY
 
10 01 configuration dhcp
10 01 configuration dhcp10 01 configuration dhcp
10 01 configuration dhcpNoël
 
Dhcp3
Dhcp3Dhcp3
Dhcp3TECOS
 
Administration d un r seau informatique sous windows Service DHCP.pdf
Administration d un r seau informatique sous windows Service DHCP.pdfAdministration d un r seau informatique sous windows Service DHCP.pdf
Administration d un r seau informatique sous windows Service DHCP.pdfAddison Coleman
 
mise en place de service dhcp sous Ubuntu 20.04
mise en place de service dhcp sous Ubuntu 20.04mise en place de service dhcp sous Ubuntu 20.04
mise en place de service dhcp sous Ubuntu 20.04ImnaTech
 
S2-00-HTTP.pptx
S2-00-HTTP.pptxS2-00-HTTP.pptx
S2-00-HTTP.pptxkohay75604
 
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Chapitre 6  - Protocoles TCP/IP, UDP/IPChapitre 6  - Protocoles TCP/IP, UDP/IP
Chapitre 6 - Protocoles TCP/IP, UDP/IPTarik Zakaria Benmerar
 
F5 ltm administering big ip v11
F5 ltm administering big ip v11F5 ltm administering big ip v11
F5 ltm administering big ip v11Amine Haddanou
 

Similar a Dhcp (20)

Dhcp sous fedora 11
Dhcp sous fedora 11Dhcp sous fedora 11
Dhcp sous fedora 11
 
DHCP sous Ubuntu
DHCP sous Ubuntu DHCP sous Ubuntu
DHCP sous Ubuntu
 
Services IP
Services IPServices IP
Services IP
 
cours DHCP IPv4 et IPv6
cours DHCP IPv4 et IPv6cours DHCP IPv4 et IPv6
cours DHCP IPv4 et IPv6
 
Dhcp serrver dofara roger cyrus
Dhcp serrver dofara roger cyrusDhcp serrver dofara roger cyrus
Dhcp serrver dofara roger cyrus
 
chapitre deux dynamic host configuration protocol.pptx
chapitre deux   dynamic host configuration protocol.pptxchapitre deux   dynamic host configuration protocol.pptx
chapitre deux dynamic host configuration protocol.pptx
 
5 serveur dhcp
5 serveur dhcp5 serveur dhcp
5 serveur dhcp
 
58586406 ccna4-resume-19-pages
58586406 ccna4-resume-19-pages58586406 ccna4-resume-19-pages
58586406 ccna4-resume-19-pages
 
Le service dhcp
Le service dhcpLe service dhcp
Le service dhcp
 
10 01 configuration dhcp
10 01 configuration dhcp10 01 configuration dhcp
10 01 configuration dhcp
 
Présentation VOIP
Présentation  VOIPPrésentation  VOIP
Présentation VOIP
 
Dhcp3
Dhcp3Dhcp3
Dhcp3
 
Administration d un r seau informatique sous windows Service DHCP.pdf
Administration d un r seau informatique sous windows Service DHCP.pdfAdministration d un r seau informatique sous windows Service DHCP.pdf
Administration d un r seau informatique sous windows Service DHCP.pdf
 
mise en place de service dhcp sous Ubuntu 20.04
mise en place de service dhcp sous Ubuntu 20.04mise en place de service dhcp sous Ubuntu 20.04
mise en place de service dhcp sous Ubuntu 20.04
 
S2-00-HTTP.pptx
S2-00-HTTP.pptxS2-00-HTTP.pptx
S2-00-HTTP.pptx
 
Chapitre 6 - Protocoles TCP/IP, UDP/IP
Chapitre 6  - Protocoles TCP/IP, UDP/IPChapitre 6  - Protocoles TCP/IP, UDP/IP
Chapitre 6 - Protocoles TCP/IP, UDP/IP
 
Chapitre 5 - couche réseaux
Chapitre 5 - couche réseauxChapitre 5 - couche réseaux
Chapitre 5 - couche réseaux
 
Chap7_JavaNet.pdf
Chap7_JavaNet.pdfChap7_JavaNet.pdf
Chap7_JavaNet.pdf
 
Cours 70 410 - J3
Cours 70 410 - J3Cours 70 410 - J3
Cours 70 410 - J3
 
F5 ltm administering big ip v11
F5 ltm administering big ip v11F5 ltm administering big ip v11
F5 ltm administering big ip v11
 

Dhcp

  • 1. DHCP (Dynamic Host Configuration Protocol) M.OUBROU Aderrahmane DHCP [RFC 2131 – 1997]
  • 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.
  • 5. Demande de bail/adresse IP Le poste client vient de se connecter, il n’a pas @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 C’est SEULEMENT après t0 que le client peut utiliser l’adresse IP communiquée par le serveur jusqu’à t0 + lease-time 6 time DHCPDiscover 2 DHCPOffer 1 3 DHCPRequest DHCPAck 4 client serveur t0
  • 7. Trames DHCP DHCPDISCOVER :Permet de trouver un serveur DHCP. La trame est une trame de « broadcast », elle est envoyée à l’adresse 255.255.255.255. Le client n’ayant pas d’adresse prend l’adresse 0.0.0.0 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 Le client peut utiliser l’adresse IP communiquée par le serveur jusqu’à t1+lease-time 9 time 3 DHCPRequest 4 DHCPAck client serveur t1
  • 10. Les paquets IP échangés Lors d’un renouvellement de bail Source Destination Protocol Info 192.168.0.9 192.168.0.253 DHCPRequest 192.168.0.253 192.168.0.9 DHCPAck 10
  • 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’oeuf et de la poule Encapsulation d’un message DHCP
  • 15. Encapsulation d’un message DHCP BOOTP DHCP UDP IP par exemple Ethernet Trame contenant un message « DHCP » Message DHCP Eth IP UDP
  • 16. Trame contenant un message DHCP Adresse physique de l’émetteur Adresse physique du destinataire de la trame Adresse IP source Adresse IP destinataire du paquet IP Port source Port destination du datagramme 16 Message DHCP Ethernet IP UDP
  • 17. Le Problème de l’oeuf et la poule 17 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 ??? Niveau physique
  • 18. Le Problème de l’oeuf et la poule 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 ??? Niveau réseau
  • 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 19
  • 20. DIFFUSION niveau réseau Diffusion (broadcast) distribution de la requête DHCP à tous les postes connectés 20 Client DHCP Utilsation de l’adresse IP de diffusion générique 255.255.255.255
  • 21. Niveau Transport - requêtes Le client DHCP envoie la requête sur le port 67. Le serveur DHCP écoute sur le port 67. Serveur DHCP 21 67 Client DHCP
  • 22. Niveau Transport - requêtes Le client DHCP envoie la requête sur le port 67. Le serveur DHCP écoute sur le port 67. Serveur DHCP 22 67 Client DHCP
  • 23. Niveau Transport - réponses Le serveur DHCP envoie la requête sur le port 68. Le client DHCP écoute sur le port 68. Serveur DHCP 23 68 Client DHCP
  • 24. DHCP : le client utilise un port réservé 24 Port serveur DHCP 67 Port Client DHCP 68 Client DHCP 65 66 67 68 69 Serveur DHCP 65 66 67 68 69
  • 25. Trame contenant un DHCPDiscover 00:20.8f:b9:49:37 ff:ff:ff:ff:ff:ff 0.0.0.0 255.255.255.255 25 Message DHCPDiscover 68 67 Ethernet IP UDP
  • 26. Trame contenant DHCPDiscover 26 00:20.8f:b9:49:37 ff:ff:ff:ff:ff:ff 0.0.0.0 255.255.255.255 Message 68 67 DHCPDiscover adresse physique de diffusion Adresse IP de diffusion générique Adresse physique du client DHCP Adresse IP « neutre » Port source datagamm e
  • 27. Trame contenant un DHCPOffer 00.00.b4:bb:7d:ee 00:20.8f:b9:49:37 192.168.0.253 Message DHCPDiscover 27 67 68 Ethernet IP UDP
  • 28. 28 67 68 00.00.b4:bb:7d:ee 00:20.8f:b9:49:37 192.168.0.253 Message DHCPDiscover adresse physique du client Adresse physique du serveur DHCP Adresse IP serveur DHCP Port source datagamm e DHCPOffer
  • 29. Trame contenant un DHCPRequest 00:20.8f:b9:49:37 ff:ff:ff:ff:ff:ff 0.0.0.0 255.255.255.255 29 Message DHCPRequest 68 67 Ethernet IP UDP
  • 30. Demande de baux DES serveurs DHCP serveur client serveur DHCPDiscover DHCPOffer DHCPRequest 30 DHCPAck time DHCPDiscover DHCPOffer DHCPRequest Le client refuse mon offre
  • 31. Bilan des échanges lors d’une demande de bail
  • 32. Les paquets IP échangés Source Destination Protocol Info 0.0.0.0 255.255.255.255 DHCPDiscover # le serveur DHCP vérifie que l’adresse IP qu’il veut offrir n’est pas utilisée Serveur DHCP Broadcast ARP 192.168.0.9? 192.168.0.253 DHCPOffer 0.0.0.0 255.255.255.255 DHCPRequest 192.168.0.253 192.168.0.9 DHCPACK # le client vérifie via ARP que personne n’utilisa sa nouvelle adresse Client DHCP Broadcast ARP 192.168.0.9?
  • 34. Dynamic Host Configuration Protocol DHCP a été conçu comme complément de BOOTP- Bootstrap Protocol – BOOTP: [RFC 951 - 1985] Protocole de démarrage Une station récupère les informations pour s’amorcer (« booter ») sur un serveur « d’amorçage » distant
  • 35. Format d’un message BOOTP HTYPE HOPS identifiant session secs flags adresse IP client (écrit par le client) adresse IP client (proposée par le serveur) 35 OP HLEN serveur adresse IP gaterway adresse IP adresse physique du client nom du serveur Fichier d’amorçage OPTION
  • 36. HTYPE HOPS identifiant session secs flags adresse IP client (écrit par le client) adresse IP client (proposée par le serveur) 36 Format d’un message DHCP OP HLEN serveur adresse IP gaterway adresse IP adresse physique du client nom du serveur Fichier d’amorçage OPTIONS définies dans DHCP
  • 38. Sous Unix/Linux Client DHCP : dhclient Serveur DHCP : dhcpd Fichier de configuration du serveur : /etc/dhcpd.conf
  • 39. Exemple de fichier dhcpd.conf # option definitions common to all supported networks... option domain-name "voip.u-psud.fr"; option domain-name-servers 129.175.34.35, 129.175.36.37; option option-150 code 150 = ip-address; option option-150 192.168.200.10; default-lease-time 600; max-lease-time 7200; subnet 172.16.2.0 netmask 255.255.255.128 { #VOIP IPN bat 106 - vlan 1201 range 172.16.2.4 172.16.2.126; option routers 172.16.2.1; } subnet 172.16.2.128 netmask 255.255.255.128 { #VOIP CSNSM bat 104 - vlan 1204 range 172.16.2.132 172.16.2.254; option routers 172.16.2.129; } 39
  • 40. Documentation http://christian.caleca.free.fr/dhcp/ http://www.frameip.com/dhcp/ RFC en Français : http://abcdrfc.free.fr/ Manuel de dhcpd, de dhclient, et de dhcpd.conf

Notas del editor

  1. 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.