Isc-Dhcp-Server (Wiki Ubuntu-Fr)
Isc-Dhcp-Server (Wiki Ubuntu-Fr)
Isc-Dhcp-Server (Wiki Ubuntu-Fr)
isc-dhcp-server
Xenial,
réseau,
serveur
Serveur PC : isc-dhcp-server
Le protocole DHCP (Dynamic Host Configuration Protocol (en) : « Protocole de configuration
dynamique des hôtes » (fr)) est un service réseau TCP (Transmission Control Protocol)/IP. Il permet aux
ordinateurs clients l'obtention automatique d'une configuration réseau. Il évite la configuration TCP
(Transmission Control Protocol)/IP manuelle de chaque ordinateur. Les ordinateurs configurés pour
utiliser DHCP (Dynamic Host Configuration Protocol) reçoivent leur configuration TCP (Transmission
Control Protocol)/IP du serveur DHCP (Dynamic Host Configuration Protocol). La configuration est
totalement transparente pour l'utilisateur.
Ce guide est destiné aux personnes désireuses d'apprendre comment configurer et maintenir un
serveur DHCP (Dynamic Host Configuration Protocol).
1. Introduction
Tout ordinateur d'un réseau TCP (Transmission Control Protocol)/IP (Internet ou Intranet) nécessite une
adresse IP pour pouvoir communiquer avec les autres ordinateurs du réseau.
Configurée pour utiliser le protocole DHCP (Dynamic Host Configuration Protocol), une carte réseau à
son démarrage envoie une demande sur le réseau (une requête DHCP (Dynamic Host Configuration
Protocol)). Le serveur DHCP (Dynamic Host Configuration Protocol), à l'écoute sur le réseau, débute la
procédure d'identification et lui attribue une adresse en fonction de celle-ci.
2. Pré-requis
Disposer des droits d'administration sur le serveur.
Disposer d'un réseau local.
Connaître les bases de TCP (Transmission Control Protocol)/IP (adressage, sous-réseaux, etc.).
3. Installation
4. Configuration basique
La configuration la plus fréquente est d'assigner aléatoirement une adresse IP. Ceci peut être fait en
suivant ces instructions :
Editer le fichier :
/etc/dhcp/dhcpd.conf
# Sample /etc/dhcpd.conf
default-lease-time 600;
max-lease-time 7200;
Le serveur DHCP (Dynamic Host Configuration Protocol) assignera au client une adresse IP comprise
entre 192.168.1.10 et 192.168.1.100 ou entre 192.168.1.150 et 192.168.1.200 pour une durée de 600
secondes. Le client peut spécifier une période de temps spécifique, dans ce cas, le temps d'allocation
maximum est de 7200 secondes.
Si vous devez spécifier un serveur WINS pour vos clients Windows, vous devez inclure
l'option netbios-name-servers :
deny unknown-clients;
host client1 {
fixed-address 192.168.1.20;
host client2 {
fixed-address 192.168.1.21;
L'option deny unknown-clients 8-)interdit l'attribution d'une adresse IP à une station dont l'adresse
MAC (Medium Access Control) est inconnue du serveur.
Pour trouver l'adresse MAC (Medium Access Control) d'une interface réseau, il faut taper
la commande :
ifconfig | grep HWaddr
ou pour les version récentes qui n'incluent pas le paquet net-tools par défaut :
ip a
INTERFACES="eth0 eth1"
Il existe 3 réseaux.
Le réseau internet (que nous ne configurons pas, l'interface connectée dessus obtient
automatiquement son IP, par le serveur DHCP (Dynamic Host Configuration Protocol) du FAI
(Fournisseur d'Accès à Internet)1) ; ceci dit vous pouvez adapter la configuration afin d'intégrer le
serveur DHCP (Dynamic Host Configuration Protocol) sur un réseau local).
Le réseau local 192.168.1.* réservé aux serveurs (web, FTP (File Transfer Protocol),
messagerie, etc.).
Le réseau local 192.168.2.* réservé aux clients (réseau local partagé).
Il y a 4 autres machines sur les réseaux : 192.168.1.2 (nommée ftp ), 192.168.1.3 (nommée web ),
192.168.1.4 (nommée mail ) et 192.168.2.2 (nommée portable ).
Aucune machine inconnue ne se verra attribuer une adresse IP par DHCP (Dynamic Host
Configuration Protocol) (voir fichier de configuration « option deny unknown-clients »).
Toutes les machines des réseaux ont la possibilité de démarrer par PXE.
La machine serveur DHCP (Dynamic Host Configuration Protocol) est aussi le routeur/pare-
feu/NAT (Network Address Translation) (tels que décrits dans la page «
comment_configurer_son_reseau_local » mais sans le dnsmasq) connecté au modem. Il fait aussi
office de serveur DNS (Domain Name System) du domaine ubuntu-fr.lan (tel que décrit dans la
page « bind9 »).
les interfaces sur lesquelles le serveur démarre doivent avoir une adresse quand le service dhcp
démarre. On leur attribuera les adresses 192.168.1.1 et 192.168.2.1. (volontairement le réseau
192.168.0.0 n'est pas utilisé : il est souvent pris par le modem/routeur de votre FAI (Fournisseur
d'Accès à Internet)).
/etc/dhcp/dhcpd.conf
server-name "dns.ubuntu-fr.lan";
authoritative;
## Masque de sous-réseau
## Nom du domaine
ddns-update-style none;
default-lease-time 3600;
max-lease-time 7200;
deny unknown-clients;
## Use this to send dhcp log messages to a different log file (you also
log-facility local7;
allow bootp;
allow booting;
## Adresse de diffusion
## Serveurs DNS
# Le fichier peut être spécifié dans la section « host », il deviendra alors prio
filename "pxelinux.0";
next-server 192.168.2.1;
ping-check = 1;
ping-check = 1;
filename "pxelinux.0";
next-server 192.168.2.1;
# hôte « FTP »
host ftp {
fixed-address 192.168.1.2;
# filename "debian-installer/ia64/elilo.efi";
# next-server 192.168.2.1;
# hôte « WEB »
host web {
fixed-address 192.168.1.3;
# hôte « mail »
host mail {
fixed-address 192.168.1.4;
# hôte « PORTABLE »
host portable {
fixed-address 192.168.2.2;
group {
# Tout le groupe disposera d'un autre serveur DNS (dans ce cas "desktop" et "tv")
host desktop {
host tv {
Nous pouvons maintenant demander à notre serveur de prendre en compte nos modifications :
8. Vérifications
Si il y a des messages d'erreurs, regardez le fichier suivant :
tail /var/log/syslog
8.1 Logs
Les événements sont enregistrés par défaut dans /var/log/syslog. Pour qu'ils soient enregistrés dans un
fichier de log dédié, par exemple /var/log/dhcpd.log :
Dans le fichier de conf /etc/dhcp/dhcpd.conf, ajoutez : (voir dans l'exemple plus haut)
log-facility local7;
Créer le fichier /var/log/dhcpd.log avec comme propriétaire syslog (droits rw) et comme groupe
adm (droits r).
local7.* /var/log/dhcpd.log
*.*;auth,authpriv.none -/var/log/syslog
en
*.*;auth,authpriv.none;local7.none -/var/log/syslog
/var/lib/dhcp/dhcpd.leases
lease 192.168.2.128 {
...
...
client-hostname "machine01";
9. Relais DHCP
Sur les réseaux de grande envergure, le réseau peut être segmenté. Ceci a notamment pour effet la
réduction des trames de multi-diffusion, puisqu'elles ne sont pas routées. Le serveur DHCP (Dynamic
Host Configuration Protocol) n'est alors plus joignable par le client.
Dans ce cas, un relais DHCP (Dynamic Host Configuration Protocol) peut être placé sur chaque segment
réseau. L'agent relais écoute les requêtes des clients et les transfère au serveur DHCP (Dynamic Host
Configuration Protocol). Cette fois-ci, le serveur peut être contacté, puisque l'agent relais établit la
connexion via une connexion TCP (Transmission Control Protocol)/IP.
9.1 Configuration
Vous devrez changer la configuration par défaut en éditant le fichier /etc/default/dhcpd-relay :
SERVERS="192.168.20.1"
# Interface a écouter
INTERFACES="eth0 eth1"
Dans les interfaces, il doit y avoir l'interface pour communiquer avec le client, ainsi que l'interface pour
communiquer avec le serveur DHCP (Dynamic Host Configuration Protocol).
Il faut également éditer le fichier /etc/dhcp/dhcpd.conf dans le serveur DHCP (Dynamic Host
Configuration Protocol), et ajouter le réseau où se trouve le relais DHCP (Dynamic Host Configuration
Protocol).
host tvorange {