====== Installation et Configuration du serveur DHCP ======

==== Installation ====

<code># apt-get install dhcp3-server</code>

A l'installation du paquet, vous obtenez ce message suivant :

{{ dhcp1.jpg?500 }}

Cliquez sur OK.
Le service est automatiquement lancé mais en échec, il faut maintenant le configurer.
\\

==== Configuration ====

Le fichier de configuration du serveur dhcp est **///etc/dhcp3/dhcpd.conf//**
<note>Par précaution, on s'en fait une petite copie :)</note>

<code># cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.original</code>
\\
On vide le fichier de configuration

<code># echo > /etc/dhcp3/dhcpd.conf</code>
\\
Et on l'édite de la façon suivante (à adapter à votre architecture réseau):

<code>ddns-update-style none;
option domain-name "maison.lan";
option domain-name-servers 192.168.20.2, 192.168.8.2;
# Durée du bail par defaut sans demande express du client
default-lease-time 600;
# Durée du plus long bail possible
max-lease-time 7200;
log-facility local7;

subnet 192.168.20.0 netmask 255.255.255.0 {
        # Passerelle par défaut
        option routers 192.168.20.1;
        # Masque de sous-réseau
        option subnet-mask 255.255.255.0;
        # Etendue de la plage DHCP
        range 192.168.20.150 192.168.20.200;
}</code>
\\

  * L'instruction //log-facility local7// indique un fichier de log de niveau //debug// mais toujours dans le fichier ///var/log/syslog//.
Séparer les logs DHCP de syslog dans un fichier nommé dhcpd.log en ajoutant la ligne suivante dans le fichier ///etc/syslog.conf// :
<code>local7.*     /var/log/dhcpd.log</code>
et relancer le daemon //syslog// :
<code># /etc/init.d/sysklogd restart</code>
\\
Allez, on enregistre le tout et on redémarre notre service !

<code># /etc/init.d/dhcp3-server restart</code>
\\


====== Réserver des IPs en fonction de l'adresse MAC ======
\\
Il est parfois préférable et même "pratique" que le serveur DHCP fournisse une adresse IP pré-définie à certaines machines. Nous allons donc modifier notre configuration dans cette optique.
\\
On édite à nouveau notre fichier de configuration **///etc/dhcp3/dhcpd.conf//** pour ajouter les lignes suivantes :

  * En fonction de l'adresse MAC de la machine cliente

<code>host MACHINE1  {
     hardware ethernet 00:06:9a:f3:07:01;
     fixed-address 192.168.0.10;
     }</code>
\\
On enregistre et on redémarre le service ;)


====== DNS dynamique pour Windows ======

A partir de Windows 2000, les stations de travail du domaine sous DHCP s'enregistre automatiquement sur les DNS... d'un serveur Windows. Pour un serveur GNU/Linux, il faut procéder à quelques modifications pour que ces clients windows puissent être enregistrés dynamiquement.

  * Modifier les fichiers de zone de votre serveur DNS (pour toutes les zones) :
<code>allow-update { 127.0.0.1; };</code>

<note>Dans cet exemple, nous indiquons la boucle local car le service DNS et DHCP sont sur le même serveur, sinon il faut inscrire l'IP du serveur fait office de DHCP !</note>

  * Modifier le fichier de configuration du service DHCP ///etc/dhcp3/dhcpd.conf// :
<code>#################################
## Config pour DNS dynamique ##
# Méthode dynamique pour la mise à jour
ddns-update-style interim;

# Autorisation de la mise à jour
ddns-updates on;

# La mise à jour est faite par le serveur DHCP
ignore client-updates;

# Mise à jour même en cas d'IP statiques
update-static-leases on;

# Admettre aussi les clients inconnus au niveau de l'adresse MAC
allow-unknow-clients;
#################################

option domain-name "maison.lan";
option domain-name-servers 192.168.20.2, 192.168.8.2;
# Durée du bail par defaut sans demande express du client
default-lease-time 600;
# Durée du plus long bail possible
max-lease-time 7200;
log-facility local7;

subnet 192.168.20.0 netmask 255.255.255.0 {
        # Passerelle par défaut
        option routers 192.168.20.1;
        # Masque de sous-réseau
        option subnet-mask 255.255.255.0;
        # Etendue de la plage DHCP
        range 192.168.20.150 192.168.20.200;
}

# Donne précisement quel DNS mettre à jour
zone maison.lan. { primary 127.0.0.1; }
zone 20.168.192.in-addr.arpa. { primary 127.0.0.1; }</code>

  * Relancer les service DNS et DHCP.
\\
====== DNS dynamique pour Linux ======

  * Ajouter la ligne suivante dans le fichier ///etc/dhcp3/dhclient.conf du client GNU/Linux :
<code>send host-name "nommachine.maison.lan";</code>
