Vous êtes sur la page 1sur 13

Lyce Raymond Poincar Bar-le-Duc

Configuration dune carte Raspberry Pi en serveur DHCP.

Le protocole DHCP.
automatique. 1.1. Problmatique.

1. Introduction au protocole DHCP (Dynamic Host Control Protocol). Ce protocole permet aux administrateurs de rseaux TCP/IP de configurer les postes clients de faon

Comment attribuer une adresse IP et grer un plan d'adressage d'un rseau local de manire efficace et automatique ?

Figure 1: Rseau simple avec un serveur DHCP

Lorsque l'on connecte une machine un rseau TCP/IP, cette machine doit disposer : Dune adresse IP unique dans le rseau qui appartient au mme rseau logique toutes les autres machines du rseau ; Dun masque de sous-rseau, identique tous les htes du rseau.

Pour configurer les adresses IP et les masques de sous-rseau de chacune des machines il y a deux solutions : Une configuration manuelle. Il s'agit de configurer chaque machine manuellement en vitant d'attribuer deux fois la mme configuration des machines diffrentes. Le plan d'adressage devra tre soigneusement not sur un document. Une configuration automatique. Il s'agit d'installer un serveur DHCP sur le rseau et de configurer toutes les machines afin qu'elle puisse obtenir de ce serveur leur configuration IP. 1.2. Intrt du protocole DHCP. Le protocole DHCP simplifie la configuration des postes clients. Lors de la configuration manuelle

des postes vous pouvez commettre des erreurs de saisie. Ces erreurs peuvent crer des problmes de Page 2 sur 13

Configuration dun serveur DHCP

communication ou des incidents lis aux adresses IP dupliques. La configuration manuelle des machines implique des tches supplmentaires pour l'administrateur rseau. Une configuration automatique permet de s'assurer que tous les postes clients utilisent des informations de configuration exactes. De plus, la configuration automatique permet de centraliser la d'avoir un nombre de postes informatiques plus important que le nombre d'adresses IP disponibles (en supposant que toutes les machines sont pas connectes en mme temps sur le rseau). gestion de la configuration de tous les postes. L'utilisation d'un serveur DHCP permet galement

2. Principe d'allocation des adresses IP. Le protocole DHCP gre l'attribution et la libration dynamique des configurations IP en louant ces configurations aux clients par l'utilisation d'un bail. Le bail DHCP spcifie la dure pendant laquelle le client peut utiliser les donnes de configuration fournies par le serveur avant de les restituer. Lattribution dun bail DHCP est appel processus de cration dun bail DHCP ; Le bail DHCP peut tre renouvel par un processus de renouvellement du bail.

2.1. Cration dun bail DHCP. Le processus de cration dun bail comprend 4 phases distinctes :

1. La demande de bail du client par une requte DHCPDISCOVER ; 2. Loffre de service de bail du serveur par une trame DHCPOFFER ; 3. La slection de loffre par le client par une trame DHCPREQUEST ;

4. Un accus de rception du serveur qui valide la demande par une trame DHCPACK.

Figure 2: les 4 tapes de l'attribution d'un bail DHCP (A complter suivant les informations ci-dessus)

Configuration dun serveur DHCP

Page 3 sur 13

2.1.1. La demande de bail. Le client dsire obtenir une configuration TCP/IP valide. Il met une requte DHCPDISCOVER en diffusion (broadcast) sur le rseau. Lors de cette requte ladresse IP source du client est fixe 0.0.0.0 de ladresse de diffusion. car il ne possde pas encore dadresse IP valide. Ladresse de destination est 255.255.255.255, il sagit Dans cette requte, le client donne son adresse MAC afin que le serveur puisse savoir quelle est la machine qui demande un bail de connexion. Le client attend une rponse du serveur. Si aucune rponse narrive aprs une seconde, le client

renouvelle sa demande. Le client renouvellera les demandes suivantes aprs 9 secondes, puis aprs 13 secondes, puis aprs 16 secondes. Si aucune rponse du serveur nest envoye, le client renouvellera sa demande toutes les 5 minutes pour ne pas alourdir le trafic sur le rseau. 2.1.2. Offre de service de bail. Le serveur DHCP rpond en proposant une offre de service sous la forme dune trame DHCPOFFER. Dans cette trame le serveur donne les informations suivantes : Ladresse MAC du client demandeur ; Le masque de sous-rseau ; La dure du bail ; Ladresse IP du serveur DHCP. Ladresse IP propose au client demandeur ;

Le DHCP rserve ladresse IP offerte au client afin quelle ne soit pas duplique sur le rseau. 2.1.3. Slection de loffre par le client. Le client slectionne la premire offre reue de la part dun serveur DHCP. Il confirme lacceptation DHCP retenue. 2.1.4. Accus de rception par le serveur. Le serveur DHCP accuse rception de lacceptation de service par le client par une trame DHCPACK. 2.2. Renouvellement dun bail DHCP. Le processus de renouvellement dun bail DHCP permet au client de mettre jour ses donnes de configuration. Le client tente de renouveler ses donnes avant lexpiration du bail. Le premier essai intervient 50% de la dure du bail.

du bail par lenvoi dune trame de diffusion DHCPREQUEST contenant ladresse IP du serveur

Configuration dun serveur DHCP

Page 4 sur 13

Le processus de renouvellement dun bail comprend 2 phases distinctes : 1. La demande de renouvellement du bail du

2. Un accus de rception du serveur qui valide la demande de renouvellement par une trame DHCPACK.

DHCPREQUEST directement vers le serveur qui a attribu le bail ;

client

par

une

requte

Figure 3: Processus de renouvellement d'un bail (A complter suivant les informations ci-dessus)

Si le client DHCP ne parvient pas renouveler son bail la premire fois, un nouvel essai est prvu avec de celui-ci.

lenvoi dune trame DHCPDISCOVER lorsque la dure du bail a atteint 87,5% de la dure maximale 3. La norme DHCP. 3.1. Protocole DHCP. Le fonctionnement du protocole DHCP est dcrit dans le document Request For Comments 2131 (RFC 2131). 3.2. Les messages DHCP.

Figure 4 : Les messages DHCP

Configuration dun serveur DHCP

Page 5 sur 13

Raspberry Pi. Lobjectif est de pouvoir procder terme la cration dun rseau local de tlphonie sur IP (ToIP) selon le schma ci-dessous :

Configuration dun serveur DHCP sous GNU/Linux avec une Raspberry Pi.

Vous allez configurer un serveur DHCP, fonctionnant sous GNU/Linux, embarqu sur une carte

Figure 5: Rseau local de tlphonie sur IP

1. Prparation des distributions GNU/Linux. Les cartes Raspberry Pi devront tre quipes de deux distributions Raspian configures diffremment : Une distribution classique sans serveur DHCP install ; Une distribution avec un serveur DHCP.

a) Procdez linstallation sur les cartes SD mises votre disposition des distributions Raspian. 2. Adresse IP statique du serveur DHCP. Les interfaces rseaux du serveur DHCP doivent obligatoirement tre configures en IP statique. La

premire tape de configuration du serveur DHCP consiste donc attribuer linterface rseau eth0 de la carte Raspberry Pi une adresse IP statique. Cette interface devra avoir une adresse IP prive de classe C finissant par x.x.x.2. a) Choisissez ladresse IP de classe C prive que vous voulez affecter au serveur DHCP. b) Connectez-vous en administrateur et en local sur la carte Raspberry Pi qui doit assurer la c) Faites fonction de DHCP. une copie de sauvegarde du fichier /etc/network/interfaces en

/etc/network/interfaces.bak.

Configuration dun serveur DHCP

Page 6 sur 13

d) Editez le fichier /etc/network/interfaces. Saisissez les donnes ci-dessous en serveur DHCP:

compltant les champs en italique avec les donnes dpendantes de ladresse IP choisie pour le

auto lo iface lo inet loopback iface eth0 inet static address netmask network broadcast adresse_IP_de_la_machine masque_de_sous-rseau adresse_du_rseau adresse_de_diffusion_du_rseau

e) Ralisez le cblage rseau ci-dessous.

Figure 6 : Rseau initial.

f) Sauvegardez vos modifications, redmarrez le serveur DHCP et vrifiez la prise en compte de son adressage statique. 3. Configuration du serveur DHCP. 3.1. Configuration du serveur avec uniquement une attribution dadresses dynamique. Instructions : Ladresse du rseau est 192.168.x.0/24 ; La plage de distribution des adresses sera de 192.168.x.10 192.168.x.30 ; La dure du bail par dfaut sera dune heure ; La dure du bail maximum sera de deux heures.

Toute modification de la configuration du serveur DHCP ncessitera le redmarrage de celui-ci par le script isc-dhcp-server avec loption restart depuis le rpertoire /etc/init.d. ./isc-dhcp-server restart Configuration dun serveur DHCP Page 7 sur 13

a) Connectez-vous en administrateur et en local sur la carte Raspberry Pi qui doit assurer la /etc/dhcp/dhcpd.bak.

fonction de DHCP. Faites une copie de sauvegarde du fichier /etc/dhcp/dhcpd.conf en

b) Editez le fichier /etc/dhcp/dhcpd.conf. Saisissez les donnes ci-dessous en compltant # sont considres comme des commentaires et ne sont pas prises en compte dans la configuration. les champs en italique avec les donnes de configurations fournies. Les lignes commenant par

######################### # Configuration du DHCP # ######################### # Mode autoritaire authoritative; #Dure de bail DHCP default-lease-time temps_du_bail_en_secondes; max-lease-time temps_du_bail_en_secondes; #Etendue de la plage des adresses attribues subnet adresse_du_rseau netmask masque_de_sous-rseau { range adresse_de_dbut adresse_de_fin; # Autorisation de toute demande de connexion allow-unknown-clients; }

c) Sauvegardez vos modifications, redmarrez le serveur DHCP en lanant le script isc-dhcpdmarr correctement. server avec loption restart depuis le rpertoire /etc/init.d. Vrifiez que le serveur a

d) Mettez sous tension et configurez le poste Windows XP afin quil obtienne une adresse IP automatiquement depuis un serveur DHCP. Mettez sous tension la deuxime carte Rasperry serveur DHCP. Pi, elle est configure par dfaut pour obtenir une adresse IP automatiquement depuis un e) Ralisez le cblage rseau ci-dessous (Attention ce rseau ne doit pas tre reli au rseau de ltablissement):

Configuration dun serveur DHCP

Page 8 sur 13

Figure 7: Cblage raliser

f) Vrifiez du ct serveur DHCP que les baux dadresses IP sont bien attribus en affichant le g) Compltez le tableau ci-dessous laide des informations contenues dans le fichier /var/lib/dhcp/dhcpd.leases. Adresse IP attribue par le serveur DHCP contenu du fichier /var/lib/dhcp/dhcpd.leases.

Adresse MAC

PC sous Windows XP Client Raspberry Pi

h) Vrifiez que les adresses IP attribues sont bien dans la plage dattribution demande en consigne.

3.2. Attribution dune adresse fixe par le serveur DHCP. Le protocole DHCP est conu pour attribuer de manire dynamique des configurations rseaux des clients connects, en exploitant une rserve dadresses IP. Le serveur DHCP essaye dattribuer, autant que possible, toujours la mme adresse IP aux clients. Attention, ce nest pas une obligation, car cela dpendra des adresses IP disponibles et du nombre de clients dsirants se connecter. Dans certains cas, il est ncessaire que certains clients soient assurs de se voir attribuer une adresse IP dont la valeur ne changera jamais. Un serveur DHCP permet cette possibilit.

Configuration dun serveur DHCP

Page 9 sur 13

Lattribution dune adresse IP fixe un client par le serveur DHCP ncessite de connaitre ladresse MAC de ce client. Il sera prfrable dattribuer des adresses IP fixes en dehors de la plage attribue dynamiquement.

Par exemple, un client avec ladresse MAC, 10:BF:48:DF:3E:17 doit toujours se voir attribuer ladresse IP : 172.17.75.113 par le serveur DHCP. suivantes la fin du fichier. host nom_de_la_machine { hardware ethernet 10:BF:48:DF:3E:17 ; fixed-address 172.17.75.113 ; } a) Faites une copie de sauvegarde du fichier /etc/dhcp/dhcpd.conf en Le fichier de configuration du serveur DHCP, /etc/dhcp/dhcpd.conf, devra contenir les lignes

/etc/dhcp/dhcpd.bak1.

b) Editez le fichier /etc/dhcp/dhcpd.conf. Modifiez la configuration afin dattribuer c) Vrifiez du ct serveur DHCP que ladresse IP fixe est bien attribue pour la carte Raspberry d) Affichez le contenu du fichier /var/lib/dhcp/dhcpd.leases, lattribution de ladresse 192.168.x.3 y est-elle visible ? Selon-vous, lattribution dune adresse fixe par un DHCP est-elle concerne par un bail de location limit dans le temps ? Dtaillez votre raisonnement. Pi. Expliquez votre mthode pour faire cette vrification. ladresse 192.168.x.3 la carte client Raspberry Pi.

Figure 8 : Cblage avec adresse IP fixe

Configuration dun serveur DHCP

Page 10 sur 13

4. Analyse des trames rseau. 4.1. Modification du temps dattribution des baux. Afin de pouvoir analyser les changes entre les clients et le serveur DHCP, au moment de lattribution des baux dadresses IP et au moment du renouvellement de ceux-ci, vous allez modifier la dure du bail. Lanalyse des trames rseaux sera faite avec le logiciel Wireshark, disponible en tlchargement libre depuis ladresse : www.wireshark.org/download.html. Le logiciel Wireshark possde des options de capture. Lune de ces options est dtaille ci-dessous:

circulantes sur le rseau. Ce mode est le mode par dfaut utiliser.

capturera, thoriquement, toutes les trames

En mode promiscuous activ , le logiciel

capturera uniquement les trames sur le rseau destination de linterface slectionne.

En mode promiscuous dsactiv , le logiciel

a) Faites

/etc/dhcp/dhcpd.bak2.

une

copie

de

sauvegarde

du

fichier

/etc/dhcp/dhcpd.conf

en

b) Editez le fichier /etc/dhcp/dhcpd.conf. Modifiez la configuration afin daffecter une dure de bail par dfaut et maximum de 4 minutes.

4.2. Capture et analyse des trames du poste XP depuis le poste XP. a) Lancez et configurez le logiciel Wireshark en mode promiscuous dsactiv depuis le poste Windows XP afin quil ne capture que les trames du protocole DHCP entre le serveur et lui. Vous utiliserez en plus le filtre daffichage suivant : bootp.dhcp. Configuration dun serveur DHCP Page 11 sur 13

b) Capturez la demande dadresse IP initiale du poste XP depuis le poste XP. Pour librer un bail dadresse IP, afin de recommencer le processus dattribution compltement, depuis un poste bail, aprs une libration, il faut utiliser la commande : ipconfig /renew. graphique temporel lordre des trames de configuration DHCP changes. Windows il faut utiliser la commande : ipconfig /release. Pour demander un nouveau c) A laide de loutil Flow Graph du menu Statistics de Wireshark, mettez sous forme dun d) Analysez lordre des trames, le type de trame, la destination et la source des trames. Vrifiez que thoriques fournies au paragraphe 2.1, page 3, de ce document.

le protocole dattribution dune adresse IP par un serveur DHCP correspond bien aux donnes

e) Capturez la demande de renouvellement du bail dadresse IP du poste XP depuis le poste XP. graphique temporel lordre des trames de configuration DHCP changes.

f) A laide de loutil Flow Graph du menu Statistics de Wireshark, mettez sous forme dun g) Analysez lordre des trames, le type de trame, la destination et la source des trames, le temps un serveur DHCP correspond bien aux donnes thoriques fournies au paragraphe 2.2, pages 4 et 5, de ce document.

entre deux renouvellements. Vrifiez que le protocole de renouvellement dune adresse IP par

4.3. Capture et analyse des trames changes entre la carte client Raspberry Pi et le serveur DHCP depuis le poste XP. a) Enlevez la configuration dadressage IP fixe pour la carte Raspberry. a) Configurez le logiciel Wireshark en mode promiscuous activ depuis le poste Windows XP serveur DHCP. Vous utiliserez en plus le filtre daffichage suivant : afin quil ne capture que les trames du protocole DHCP entre la carte client Raspberry Pi et le

(ip.dst != @IP_du_poste_XP) && (ip.src != @IP_du_poste_XP) && bootp.dhcp

@IP_du_poste_XP est remplacer par ladresse IP attribue par le serveur DHCP au poste Windows XP. b) Quel est le filtrage daffichage ralis par lexpression, (ip.dst != @IP_du_poste_XP) qui doivent apparaitre lcran.

&& (ip.src != @IP_du_poste_XP) && bootp.dhcp ? Concluez sur les donnes

c) Lancez la capture des trames de la demande de bail dadresse IP initiale de la carte client Raspberry Pi depuis le poste XP.

Configuration dun serveur DHCP

Page 12 sur 13

Pour librer un bail et recommencer le processus dattribution compltement dadresse IP, de la carte client Raspberry Pi, il suffit de : 1. dbrancher physiquement linterface rseau du client; 2. de redmarrer le serveur DHCP ; 3. puis de rebrancher physiquement linterface rseau du client. d) A laide de loutil Flow Graph du menu Statistics de Wireshark, mettez sous forme dun graphique temporel lordre des trames de configuration DHCP changes. e) Analysez lordre des trames, le type de trame, la destination et la source des trames. Vrifiez si DHCP suivant les donnes thoriques fournies au paragraphe 2.1, page 3 de ce document.

les trames captures correspondent au protocole dattribution dune adresse IP par un serveur

f) Justifiez pourquoi seules les trames de broadcast circulantes sur le rseau sont visibles depuis le poste XP ?

Configuration dun serveur DHCP

Page 13 sur 13