Ceci est une ancienne révision du document !
DokuWiki
Version edgy
Rédigé par benje.
!!! REDACTION EN COURS !!!
DHCP3-SERVER : installer un serveur DHCP
Cet article a pour but de vous présenter comment installer et configurer un serveur DHCP en utilisant l'application DHCP3-SERVER. Je supposerai que vous disposez d'un réseau local en état de marche et que vous connaissez les bases de TCP/IP (adressage, sous-réseaux,…).
Dans cet article, je vais vous présenter un cas concret de configuration d'un DHCP, à vous de l'adapter à vos besoins.
Introduction
Sur les réseaux, toutes les machines sont identifiées (et identifiables) par une adresse IP. Ceci est nécessaire afin de les faire communiquer ensembles.
Donc, lorsque vous vous connectez sur n importe quel reseau, y compris sur internet, il vous est attribué une adresse ip
Il existe plusieurs manières de configurer ces adresses :
* soit de manière statique, lorsque vous déterminez vous même l adresse ip sur la machine.
* soit de manière dynamique, grâce à un server dhcp tel que dhcp3-server qui va attribuer les adresses en fonction du fichier de configuration.
L'acronyme DHCP signifie Dynamic Host Configuration Protocol; en français, Protocole de configuration dynamique des hotes.
Ne pas confondre fixe et statique le serveur dhcp peux attribuer des adresses ip fixe (toujours la même) en fonction de l'adresse MAC ( Medium Access Control; en français,adresse de controle d accès du moyen) reçue.
Il existe plusieurs classes d'adresses ip, ici nous utiliseront les ip dites privées de classe C.
Mode de fonctionnement sommaire:
Lorsque la carte reseau est activée en mode dhcp, elle envoie, sur le réseau, une demande d information (une requete dhcp). Le serveur dhcp à l'écoute sur le réseau commence alors la procédure d identification et lui attribue une adresse en fonction de celle-ci.
Voilà, comment fonctionne le protocole DHCP sans entrer dans les détails. Pour plus d'informations concernant le DHCP je vous renvoie vers Google et Wikipedia.
Pour installer un serveur DHCP, nous allons utiliser une application bien connue des administrateurs réseaux : DHCP3-SERVER.
Installation de DHCP3-SERVER
Pour installer DHCP3-SERVER sur Ubuntu, il n'y a rien de plus simple. Tapez la commande suivante si vous avez installé votre machine en mode server
:
sudo apt-get install dhcp3-server
Ou utilisez Synaptic pour installer les paquets dhcp3-server
.
Configuration de DHCP3-SERVER
Considérons les aspects suivants :
- Il existe 3 réseaux
- Le reseau internet ( que nous ne configurons pas l interface connecter dessus obtient automatiquement son ip par le serveur dhcp du fai )
- Le réseau local
192.168.0.*
réservé aux serveurs (web ftp mail…) - Le réseau local
192.168.1.*
réservé aux clients (reseau local partagé) - Il y a 4 autres machines sur les réseaux :
192.168.0.2
(nomméeftp
),192.168.0.3
(nomméeweb
) et192.168.0.4
(nomméemail
) et192.168.1.2
(nomméeportable
). - Aucune machines inconnue ne se vera attibuer une adresse
- Toutes les machines des réseaux peuvent démarrer par PXE
- La machine serveur DHCP est aussi le routeur/par-feu/nat (tels que décrit dans configurer_son_reseau_local mais sans le dnsmasq ) connecté au modem. Il fait aussi office de serveur DNS du domaine mon_domaine.qqc
- les interfaces sur lesquels le serveur démarre doivent avoir une adresse quand le service dhcp demarre. On leurs attribura les adresses 192.168.1.1 et 192.168.2.1.
Voyons comment configurer le serveur DHCP3 avec ce réseau.
Configuration des interfaces du serveur DHCP
Il faut attribuer des adresses statiques aux interface du serveur dhcp.
Pour cela il faut editer le fichier /etc/network/interfaces.
# This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). # Interface de boucle local auto lo iface lo inet loopback # Interface ETHERNET primaire # ceci est l interface connecter à INTERNET # l ip est attribuée par dhcp auto eth0 iface eth0 inet dhcp name Carte Ethernet # Interface ETHERNET secondaire # interface de connection du reseau des machines SERVEURS auto eth1 iface eth1 inet static name Carte Ethernet address 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255 network 192.168.1.0 # paserrelle il faut metttre l'adresse ip de l interface de connection au net gateway XXX.XXX.XXX.XXX # Interface ETHERNET tertiare # interface de connection du reseau des machines CLIENTS auto eth2 iface eth2 inet static name Carte Ethernet address 192.168.2.1 netmask 255.255.255.0 broadcast 192.168.2.255 network 192.168.2.0 # paserrelle il faut metttre l'adresse ip de l interface de connection au net gateway XXX.XXX.XXX.XXX
Configuration du serveur DHCP
Toute la configuration de DHCP3-SERVER se fait dans le fichier /etc/dhcp3/dhcpd.conf
.
Dans ce fichier, on définit l'ensemble des options de manière globale ou par réseau. voici une configuration detaillée :
##### Option generale par defaut ##### ### RESEAU ### ## Nom du serveur dhcp server-name "dns.mon_domaine.qqc"; ## Mode autoritaire (autoritaire) authoritative; ## Masque de sous-réseau option subnet-mask 255.255.255.0; #_________________________________________________________________________ ### DOMAINE ### ## Nom du domaine option domain-name "mon_domaine.qqc"; ## Adresse IP du serveur DNS # a remplacer par l ip de votre serveur dns ou par celle de votre fai option domain-name-servers XXX.XXX.XXX.XXX; ## type de mise a jour du dns (aucune) ddns-update-style none; #_________________________________________________________________________ ### Temps de renouvellement des adresses ### ## par defaut en s (1h) default-lease-time 3600; ## maximum (2h) max-lease-time 7200; #_________________________________________________________________________ ### Securité ### ## refus(deny)/autorise(allow) les client inconnu (refuse client inconnu) deny unknown-clients; ## Use this to send dhcp log messages to a different log file (you also ## have to hack syslog.conf to complete the redirection). log-facility local7; #_________________________________________________________________________ ### PXE ### ## Permet le boot reseau pour tftp allow bootp; #_________________________________________________________________________ ##### RESEAUX ##### ## declaration sous reseau 192.168.0.* subnet 192.168.0.0 netmask 255.255.255.0 { # si vous voulais specifier un domaine different de celui par defaut option domain-name "mon_domaine.qqc"; ## Adresse de diffusion option broadcast-address 192.168.0.255; ## routeur par defaut option routers 192.168.0.1; ## plage d'attribution d'adresse # ici debute à 0.6, 0.1 à 0.4 etant deja prise # la plage ne contient 1 adresse ce qui empeche l attribution sauf au client dont celle-ci est fixée range 192.168.0.6 192.168.0.7; ## Option pxe nom du fichier servit. # elilo.efi pour ia64; pxelinux.0 pour x86 # à placer à la racine du serveur tftp # le fichier peux être specifier dans la section host il deviendra alors prioritaire sur celui-ci filename "pxelinux.0"; # evalue si l adresse est deja attribuée ping-check = 1; } ## declaration sous reseau 192.168.1.* subnet 192.168.1.0 netmask 255.255.255.0 { option domain-name "mon_domaine.qqc"; option broadcast-address 192.168.1.255; option routers 192.168.1.1; range 192.168.1.2 192.168.1.3; ping-check = 1; filename "pxelinux.0"; } #### Configuration des hôtes avec ip fixée #### # hôte FTP host ftp { # adresse mac de la carte réseau !!! A REMPLACER PAR CELLE DE LA MACHINE!!! hardware ethernet 00:0f:75:af:eb:44; # adresse attribué fixed-address 192.168.0.2; ### pxe ### # fichier specifique à une machine # filename "debian-installer/ia64/elilo.efi"; } # hôte WEB host web { # !!! A REMPLACER PAR CELLE DE LA MACHINE !!! hardware ethernet 00:02:0d:31:d1:cc; fixed-address 192.168.0.3; } # hôte mail host mail { # !!! A REMPLACER PAR CELLE DE LA MACHINE !!! hardware ethernet 00:02:55:d2:d1:cc; fixed-address 192.168.0.4; } # hôte PORTABLE host portable { # !!! A REMPLACER PAR CELLE DE LA MACHINE !!! hardware ethernet 00:0e:af:31:d1:cc; fixed-address 192.168.1.2; }
Nous pouvons maintenant demander à notre serveur de prendre en compte nos modifications via la commande suivante :
sudo /etc/init.d/dhcp3-server reload
Nous pouvons maintenant passer à la phase de vérification.