DHCP, Serveur
Un article de Diablotins.org.
|
Sommaire |
Synopsis
Un serveur DHCP assure la configuration automatique de certaines fonctions réseaux, adresse et masque IP, serveur de nom, passerelle ou même le serveur de messagerie des clients DHCP qui le demande; par exemple, à l'aide de la commande dhclient.
Installation du serveur
Installons le démon DHCPD qui en assurera le service.
Nous avons choisis le port pour FreeBSD du serveur DHCP de l'Internet Software Consortium:
Installez le port net/isc-dhcp3.
Remarque : Nous n'allons pas installer de dhcp-RELAY, considérant que nous avons affaire à un seul et unique réseau physique et IP.Ce qui correspond à la majorité des cas.
Il faut ensuite donner l'ordre au système d'exécuter un nouveau service.
Un nouveau script doit être lancé au démarrage, il devra donc se trouver dans /usr/local/etc/rc.d/.
Ainsi:
- Sous FreeBSD 4.X :
# cd /usr/local/etc/rc.d/ && mv isc-dhcpd.sh.sample isc-dhcpd.sh
- Sous FreeBSD 5.X :
# echo "DHCPD_ENABLE='YES'" >> /etc/rc.conf
Configuration
On doit maintenant définir quelles sont les informations que doit fournir le serveur:
- Un domaine, i.e. toto.com
- Un DNS, i.e. 192.168.1.2
- La classe du réseau, C, soit d'après la RFC 1918 : 192.168.1.0/24
- la plage Ă utiliser dans cette classe, de .7 Ă .99
- la passerelle, 192.168.1.1
Mise en œuvre
Toutes ces informations doivent se trouver dans un fichier de configuration qui se situe par défaut dans /usr/local/etc/ sous le nom dhcpd.conf.
- /usr/local/etc/dhcpd.conf
option domain-name "toto.com"; option domain-name-servers 192.168.1.2; option subnet-mask 255.255.255.0; default-lease-time 600; max-lease-time 7200; ddns-update-style none;
- Plage dynamique:
subnet 192.168.1.0 netmask 255.255.255.0
{
range 192.168.1.7 192.168.1.99;
option domain-name-servers 192.168.1.2;
option domain-name "toto.com";
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
default-lease-time 600;
max-lease-time 7200;
}
- Configurer une machine en particulier:
host monpc {
hardware ethernet xx:xx:xx:xx:xx:xx;
fixed-address 192.168.1.5;
}
Piloter le serveur
Le script situé dans /usr/local/etc/rc.d s'utilise comme la plupart des scripts qui pilotent des serveurs:
- Démarrer le serveur:
sh /usr/local/etc/rc.d/isc_dhcpd.sh start
- ArrĂŞter le serveur:
sh /usr/local/etc/rc.d/isc_dhcpd.sh stop
- Redémarrer le serveur:
sh /usr/local/etc/rc.d/isc_dhcpd.sh restart
Si vous disposez de plusieurs interfaces réseaux
Précisez sur quelle interface doit répondre le serveur dans /etc/rc.conf:
# FreeBSD 5.x uniquement dhcpd_enable="YES" # Configuration détaillée dhcpd_flags="" dhcpd_conf="/usr/local/etc/dhcpd.conf" dhcpd_ifaces="rl0"
