DHCP, Serveur
De Diablotins.org.
| Service d'attribution d'IP
|
| ||
| 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. |
Sommaire |
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"

