====== Configurer le service DHCP avec Linux Debian ====== ===== Présentation ===== Cette activité consiste : * à **configurer** le service DHCP, * pour un des VLANS utilisateurs du contexte GSB, {{ :reseau:dhcp:schema_reseau_gsb.png |}} {{:reseau:dhcp:schema_reseau_gsb.xml|}} ===== Préalable à la lecture de ce document===== * vous devez créer une **VM** pour votre serveur qui va héberger le service DHCP * votre serveur est appelée **DHCP** ; * ce serveur DHCP a la **dernière adresse IP** du réseau et est dans votre VLAN utilisateurs ===== Installation du service DHCP ===== DHCP:~# apt install isc-dhcp-server ===== Configuration du service DHCP ===== Modifiez le fichier de configuration **dhcpd.conf** localisé dans le dossier **/etc/dhcp3/**. Ce fichier contient des **exemples de configuration** du serveur DHCP. C'est une **aide** pour configurer le service DHCP. DHCP:~# nano /etc/dhcp/dhcpd.conf Ce fichier contient beaucoup de lignes. Vous allez juste indiquer ce qui est nécessaire. **Voici la démarche à suivre :** * Indiquer qu’il s’agit du **serveur DHCP général** ; * Indiquer les** options générales**, c’est à dire celles qui s’appliquent à tous les sous-réseaux ; * Indiquer obligatoirement l**’adresse de sous-réseau** sur lequel se trouve le serveur DHCP (192.168.xxx.xxx/24) ; Repérez la ligne suivante et décommentez-la en supprimant le dièse devant **authoritative** pour définir qu’il s’agit du serveur général : # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. authoritative; Pour les options générales, modifiez les lignes suivantes : # option definitions common to all supported networks... option domain-name "GSB.local"; option domain-name-servers 8.8.8.8; Toujours pour les options générales, garder les lignes suivantes qui précisent la durée des baux remis à vos hôtes : default-lease-time 600; max-lease-time 7200; * **default-lease-time** définit la durée de validité des adresses IP attribuées en secondes. * **max-lease-tim**e définit la durée de validité maximum des adresses IP attribuées en secondes. Vous allez ensuite définir la plage d'adresse que ce serveur DHCP va distribuer. Recherchez dans le fichier les lignes suivantes : # A slightly different configuration for an internal subnet. #subnet 10.5.5.0 netmask 255.255.255.224 { # range 10.5.5.26 10.5.5.30; # option domain-name-servers ns1.internal.example.org; # option domain-name "internal.example.org"; # option routers 10.5.5.1; # option broadcast-address 10.5.5.31; # default-lease-time 600; # max-lease-time 7200; #} Voici les modifications à faire : Le **subnet** définit l'adresse de réseau avec le masque de sous-réseau « netmask » : subnet 192.168.xxx.xxx netmask 255.255.xxx.xxx Range définit la** plage IP à utiliser** pour 20 hôtes. range 192.168.xxx.debut 192.168.xxx.fin; Précisez avec **domain-name-servers** et **domain-name** les informations du serveur de nom et de nom de domaine ; pour l'instant indiquez un serveur de nom comme celui du réseau de Valadon ou de Google (8.8.8.8) : option domain-name-servers 8.8.8.8; option domain-name "GSB.LOCAL"; Précisez avec **option routers** l'adresse de passerelle (1ère adresse du réseau) si vous avez utilisé l’option **range **: option routers 192.168.xxx.xxx; Précisez l'adresse de **Broadcast** : option broadcast-address 192.168.xxx.xxx; Ce subnet devrait ressembler à cela : # A slightly different configuration for an internal subnet. subnet 192.168.xxx.xxx netmask 255.255.xxx.xxxx { range 192.168.xxx.debut 192.168.xxx.fin; option domain-name-servers 8.8.8.8; option domain-name "GSB.LOCAL"; option routers 192.168.xxx.xxx; option broadcast-address 192.168.xxx.xxx; } Une fois cela fait vérifier la configuration de votre fichier avec la commande : dhcpd -t /etc/dhcp/dhcpd.conf Il vous indique l’interface (La carte réseau) sur la qu’elle le serveur DHCP écoute vérifier que l’interface indiquée est bien la bonne interface: nano /etc/default/isc-dhcp-server Recherche la ligne suivante et ajoutez-y le nom de votre carte comme suite (eth0 dans notre cas) : INTERFACESv4="eth0" Redémarrez ensuite le serveur DHCP : systemctl restart isc-dhcp-server Si le serveur DHCP affiche une erreur (refuse de démarrer) ne paniquez pas, il faut juste le redémarrer. ===== Redémarrage du service DHCP et test ===== Pour redémarrer le service sur le serveur DHCP : DHCP:~# systemctl restart isc-dhcp-server Vous pouvez maintenant mettre un hôte sur ce sous-réseau et tester la demande d'attribution d'une adresse IP. * sous linux : dhclient eth0 ou bien ifdown eth0 ifup eth0 ou bien systemctl restart networking * sous Microsoft Windows : ipconfig /release ipconfig /renew Vérifiez ensuite la configuration IP obtenue * sous linux : ip a * sous Microsoft Windows : ipconfig /all