IUT d'orsay ASR réseaux [RFC 211-1997 ] Dynamic Host Configuration Protocol But: permet à un ordinateur qui se connecte sur un réseau local d'obtenir dynamiquement et automatiquement : Son adresse masque de son sous-réseau passerelle par défaut adresse du DNS nom de son domaine C. Johnen 1 2 Demande de bail Demande et Renouvellement de bail Le poste client vient de se connecter, il n a pas d adresse Le précédent bail du client vient d expirer, le client n a plus d adresse Un bail a une durée : lease-time Demande de bail - UN time t0 client 1 Discover Offer Request Ack C est SEULEMENT après t0 que le client peut utiliser l adresse communiquée par le jusqu à t0 + lease-time 2 5 Renouvellement de bail A la moitié du bail, le client demande le renouvellement (prolongation de son bail) Lors du renouvellement, le client utilise l adresse donnée précédemment par le Un renouvellement est donc beaucoup plus simple 6 1
Demande de renouvellement de bail time Les paquets échangés Lors d un renouvellement de bail client Request Source Destination Protocol Info t1 Ack 192.1.0.9 192.1.0.25 Request 192.1.0.25 192.1.0.9 Ack Le client peut utiliser l adresse communiquée par le jusqu à t1+lease-time 7 8 Message Message Envoyé par le DISCOVER demande de localisation des s REQUEST demande de bail DECLINE refus d adresse, elle est déjà utilisée RELEASE libération son bail INFORM demande de paramètres locaux (autre qu une adresse ) 9 10 Message Envoyé par le Serveur OFFER réponse à un DISCOVER ACK contient des paramètres et l'adresse du client NAK refus de bail Problème de l œuf et de la poule Encapsulation d un message 11 12 2
Encapsulation d un message Trame contenant un message Trame contenant un message Eth Message BOOTP par exemple Ethernet 1 Ethernet Adresse physique de l émetteur Adresse physique du destinataire de la trame Adresse source Adresse destinataire du paquet Port source Port destination du datagramme Message 1 Le Problème de l oeuf et la poule 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? QUE FAIRE??? Niveau physique 15 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 du BOOTP? Est-ce que le client connaît son adresse? Est-ce que le connaît l adresse du client? QUE FAIRE??? 16 DIFFUSION niveau physique Diffusion (broadcast) distribution de la requête BOOTP à tous les postes connectés DIFFUSION niveau réseau Diffusion (broadcast) distribution de la requête BOOTP à tous les postes connectés Adresse de diffusion: ff:ff:ff:ff:ff:ff Utilsation de l adresse de diffusion générique 17 18
Niveau Transport - requêtes Le client envoie la requête sur le port. Le écoute sur le port. Niveau Transport - réponses Le envoie la requête sur le port. Le client écoute sur le port. Serveur Serveur 19 20 : le client utilise un port réservé Trame contenant un Discover Port Port 65 66 Serveur 65 66 Ethernet 00:20.8f:b9:9:7 ff:ff:ff:ff:ff:ff 0.0.0.0 69 69 21 Message Discover 22 Adresse physique du client Adresse «neutre» Port source datagamme 00:20.8f:b9:9:7 ff:ff:ff:ff:ff:ff 0.0.0.0 Message Discover Trame contenant Discover adresse physique de diffusion Adresse de diffusion générique 2 Trame contenant un Offer 00.00.b:bb:7d:ee Ethernet 00:20.8f:b9:9:7 192.1.0.25 192.1.0.9 Message Discover 2
Adresse physique du Adresse Port source datagamme Offer 00.00.b:bb:7d:ee 00:20.8f:b9:9:7 192.1.0.25 192.1.0.9 Message Discover adresse physique du client Adresse proposée au client 25 Trame contenant un Request 00:20.8f:b9:9:7 Ethernet ff:ff:ff:ff:ff:ff 0.0.0.0 Message Request 26 Plusieurs s Discover Offer client Discover Offer Bilan des échanges lors d une demande de bail Request Request Le client refuse mon offre Ack time 27 28 Les paquets échangés Source Destination Protocol Info 0.0.0.0 Discover # le vérifie que l adresse qu il veut offrir n est pas utilisée Serveur Broadcast ARP 192.1.0.9? Sous Unix/Linux 192.1.0.25 192.1.0.9 Offer 0.0.0.0 Request 192.1.0.25 192.1.0.9 ACK # le client vérifie via ARP que personne n utilisa sa nouvelle adresse Broadcast ARP 192.1.0.9? 29 0 5
Sous Unix/Linux : dhclient Serveur : dhcpd Fichier de configuration du : /etc/dhcpd.conf Exemple de dhcpd.conf default-lease-time 600 ; max-lease-time 7200 ; option domain-name "ch1921" ; option domain-name-servers 192.1.1.1 ; option routers 192.1.1.1 ; subnet 192.1.1.0 netmask 255.255.255.0 {option subnet-mask 255.255.255.0 ; option broadcast-address 192.1.1.255 ; range 192.1.1.11 192.1.1.20 ; } 1 2 Exemple de fichier dhcpd.conf default-lease-time 600 ; max-lease-time 7200 ; durée en secondes option domain-name "ch1921" ; option domain-name-servers 192.1.1.1; Format d un message option routers 192.1.1.1 ; paramétrage de DNS. passerelle par défaut Information à stocker dans /etc/resolv.conf Dynamic Host Configuration Protocol 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 «d amorçage» distant Remerciement 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 5 6 6