Vous êtes sur la page 1sur 5

Implémenter un agent

de relais DHCP
1 Rôle de l'agent de relais DHCP
Comme les clients contactent les serveurs DHCP à l'aide d'une diffusion, dans un inter-
réseau, vous devrez théoriquement installer un serveur DHCP par sous-réseau. Si votre
routeur prend en charge l’agent de relais, il peut faire office d'agent de relais DHCP, et ainsi
relayer les diffusions de demande d'adresse IP des clients DHCP dans chaque sous-réseau.
Si votre routeur ne prend pas en charge l’agent de relais, une machine serveur peut être
configurée comme agent de relais DHCP, il suffira de lui spécifier l'adresse du serveur DHCP.
Les demandes des clients DHCP seront relayées vers le serveur DHCP par l'agent de relais
DHCP qui transmettra les offres aux clients.

2 Configuration de serveur DHCP


2.1 Introduction
Avant de commencer la configuration de l’agent de relais, discutons tout d’abord les
configurations supplémentaires de serveur DHCP qui va nous permettre de gérer une
implémentation multi réseaux.

2.2 DHCP Multi résident (Multihomed DHCP Server)


Il est possible d’avoir un serveur DHCP Multi résident (qui est situé sur plusieurs sous
réseaux, et qui attribuera des baux à chaque réseau). Il suffit d’avoir une autre carte réseau
avec une autre adresse (ex : 192.168.33.1/24). Vous devrez alors rajouter une autre
catégorie subnet (192.168.33.0 dans cet exemple) adaptée et y mettre les options
nécessaires.
# Paramètres globaux de serveur DHCP
subnet 192.168.22.0 netmask 255.255.255.0 {
# Paramètres de subnet
}
subnet 192.168.33.0 netmask 255.255.255.0 {
# Paramètres de subnet
}
Dans un autre cas, où tous les sous-réseaux partageant le même réseau physique doivent
être déclarés dans une déclaration shared-network.
Les paramètres se trouvant au sein du la directive « shared-network », mais en dehors des
déclarations subnet sont considérés comme des paramètres globaux.
shared-network name {
# Paramètres globaux de serveur DHCP
subnet 192.168.22.0 netmask 255.255.255.0 {
# Paramètres de subnet
}
subnet 192.168.33.0 netmask 255.255.255.0 {
# Paramètres de subnet
}
}

2.3 Choix d’interface d’écoute


Dans le cas où vous avez plusieurs interfaces réseau, et que vous voulez le démarrage
du serveur DHCP uniquement sur l'une d'entre elles, c’est-à-dire une interface serveur et
l’autre client.
Vous pouvez configurer le serveur DHCP afin qu'il démarre uniquement sur ce périphérique.
Dans /etc/sysconfig/dhcpd, ajoutez le nom de l'interface à la liste de DHCPDARGS :
# Command line options here
DHCPDARGS=eth0
3 Configuration de l'agent de relais DHCP
3.1 Introduction
L'agent de relais DHCP écoute les demandes DHCP sur toutes les interfaces, sauf si les
interfaces sont spécifiées dans /etc/sysconfig/dhcrelay avec la directive INTERFACES.
Pour démarrer l'agent de relais DHCP, utilisez la commande :
# service dhcrelay start
Ou,
# systemctl start dhcrelay
Important : Vous devez installer le paquetage DHCP pour que vous disposiez de la
fonctionnalité d’agent de relais.
Il est bien sûr possible de disposer des fonctionnalités de serveur DHCP et de relais,
simultanément sur la même machine. Mais, deux prérequis sont alors à vérifier :
 La machine dispose de deux interfaces réseau : l’une pour le serveur l’autre pour le
relais.
 Le serveur doit alors autoriser le routage des paquets.
3.2 Scénario de travail pratique
Ci-dessous, vous trouverez la topologie de TP :

3.2.1 Configuration de Routeur 1


Editez le fichier /etc/sysconfig/dhcrelay comme suit :
# Command line options here
DHCRELAYARGS=""
# Interfaces utilisées pour le relais DHCP
INTERFACES="eth0 eth1"
# Adresse de serveur DHCP
DHCPSERVERS="192.168.12.1"
# Options additionnelles pour le daemon dhcrelay
OPTIONS="-q"
3.2.2 Configuration de Routeur 2
Editez le fichier /etc/sysconfig/dhcpd comme suit :
# Command line options here
DHCPDARGS=""
# Liste des interfaces réseau sur lesquelles écouter les requêtes DHCP.
# Si cette liste est vide, DHCP essaiera de deviner les interfaces
correctes.
DHCPD_INTERFACES="eth2"
# Options additionnelles pour le daemon DHCPD
OPTIONS="-q"

Explication :
Options de ligne de commande pouvant être spécifiées dans /etc/sysconfig/dhcpd :
 -p <numport> — Spécifie le numéro de port UDP sur lequel DHCPD devrait être en
écoute.
 -f — Exécute le démon comme processus de front. Cette option est principalement
utilisée pour le débogage.
 -d — Inscrit le démon du serveur DHCP dans le descripteur d'erreurs standard. Cette
option est principalement utilisée pour le débogage. Si elle n'est pas spécifiée,
l'inscription est faite dans /var/log/messages.
 -cf <nomfichier> — Spécifie l'emplacement du fichier de configuration, par défaut
/etc/dhcpd.conf.
 -lf <nomfichier> — Spécifie l'emplacement du fichier de la base de données
d'attribution. Si ce fichier existe déjà, il est très important que le même fichier soit
utilisé chaque fois que le serveur DHCP est démarré. Il est fortement recommandé de
n'utiliser cette option qu'à des fins de débogage sur des machines non productives.
L'emplacement par défaut est /var/lib/dhcp/dhcpd.leases.
 -q — N'imprime pas l'intégralité du message de copyright au démarrage du démon.
3.2.3 Configuration de serveur DHCP sur Routeur 2
Editer le fichier /etc/dhcpd/dhcpd.conf, pour créer deux plage d’adresse un pour le réseau
local et l’autre pour le réseau distant :
authoritative;

option domain-name-servers 192.168.12.1;


option domain-name "ista.ma";
default-lease-time 3600;
max-lease-time 7200;

subnet 192.168.12.0 netmask 255.255.255.0 {


range 192.168.12.50 192.168.12.100;
option routers 192.168.12.1;
}

subnet 192.168.7.0 netmask 255.255.255.0 {


interface eth3;
range 192.168.7.50 192.168.7.100;
option routers 192.168.7.1;
}

AVERTISSEMENT :
 Ce fichier /etc/sysconfig/dhcpd n'est PLUS utilisé dans les systèmes CentOS 7.x.
 Sachez que DHCPD écoute uniquement les interfaces pour lesquelles il trouve une
déclaration de sous-réseau dans /etc/dhcpd/dhcpd.conf.
 Pour que nous n’obtient pas l’erreur suivant dans le fichier de journal
/var/log/message qui a comme conséquence, l’empêchement de serveur DHCP
d’attribuer des adresses qui n’ont pas de déclaration. Pour cela, nous devons
spécifier l’interface de réception de la demande pour le réseau 192.168.7.0/24.
Dec 18 23:39:31 localhost dhcpd: No subnet declaration for eth3 (10.0.0.2).
Dec 18 23:39:31 localhost dhcpd: ** Ignoring requests on eth3. If this is not what
Dec 18 23:39:31 localhost dhcpd: you want, please write a subnet declaration
Dec 18 23:39:31 localhost dhcpd: in your dhcpd.conf file for the network segment
Dec 18 23:39:31 localhost dhcpd: to which interface eth3 is attached. **
3.2.4 Test à partir de client
Au niveau du client, l’arrêt et redémarrage de l’interface réseau concernée permet de
vérifier que la concession d’une nouvelle adresse IP fonctionne correctement. On peut aussi
exécuter une requête de type dhclient.
La commande dhcrelay permet d’interagir avec les interfaces en écoute et le ou les
serveur(s) distribuant les adresses IP disponibles. Cette commande possède un certain
nombre d’options :

Vous aimerez peut-être aussi