Aucun résumé des modifications
Aucun résumé des modifications
Ligne 41 : Ligne 41 :


<pre>
<pre>
nano /etc/dhcp/dhcpd.conf
vi /etc/dhcp/dhcpd.conf
</pre>
</pre>


Ligne 47 : Ligne 47 :


<pre>
<pre>
option domain-name "lab.local";
subnet 192.168.30.0 netmask 255.255.255.0 {
option domain-name-servers 8.8.8.8, 1.1.1.1;
    authoritative;


default-lease-time 600;
    option routers 192.168.30.254;
max-lease-time 7200;
    option domain-name-servers 192.168.40.253;
 
    range 192.168.30.10 192.168.30.50;
authoritative;
 
subnet 192.168.1.0 netmask 255.255.255.0 {
 
  range 192.168.1.100 192.168.1.200;
 
option routers 192.168.1.1;
 
option broadcast-address 192.168.1.255;
}
}
</pre>
</pre>
Ligne 79 : Ligne 70 :
</pre>
</pre>


== <span style="color:#239b56;">Ouverture firewall</span> ==
== <span style="color:#239b56;">Ouverture Iptable</span> ==


<pre>
<pre>
firewall-cmd --add-service=dhcp --permanent
vi /etc/sysconfig/iptables
firewall-cmd --reload
</pre>
</pre>


== <span style="color:#239b56;">Vérification fonctionnement</span> ==
Dans le fichier inserer cette ligne


<pre>
<pre>
journalctl -u dhcpd
-I INPUT 2 -p udp --dport 67 -j ACCEPT
cat /var/lib/dhcpd/dhcpd.leases
</pre>
 
== <span style="color:#239b56;">Enregistrement des changements</span> ==
 
<pre>
systemctl reload iptables
</pre>
</pre>


Ligne 107 : Ligne 102 :
! Directive !! Description
! Directive !! Description
|-
|-
| option domain-name || Domaine local fourni aux clients
| subnet || Réseau géré
|-
|-
| option domain-name-servers || Serveurs DNS fournis
| authoritative || Serveur DHCP officiel
|-
|-
| default-lease-time || Durée IP par défaut
| option routers || Passerelle réseau
|-
|-
| max-lease-time || Durée maximale du bail
| option domain-name-servers || Serveurs DNS fournis
|-
| authoritative || Serveur DHCP officiel
|-
| subnet || Réseau géré
|-
|-
| range || Plage IP distribuée
| range || Plage IP distribuée
|-
| option routers || Passerelle réseau
|-
| broadcast-address || Adresse broadcast
|}
|}


Ligne 129 : Ligne 116 :


<pre>
<pre>
host pc1 {
host dhcp1 {
  hardware ethernet 00:11:22:33:44:55;
  hardware ethernet 00:00:00:00:00:00;
  fixed-address 192.168.1.50;
  fixed-address 192.168.40.253;
}
}
</pre>
</pre>
Ligne 137 : Ligne 124 :
== <span style="color:#ca6f1e;">Plusieurs réseaux</span> ==
== <span style="color:#ca6f1e;">Plusieurs réseaux</span> ==


<pre>
Répeter cette procédure avec autant de réseaux nécessaires
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.100 192.168.2.200;
option routers 192.168.2.1;
}
</pre>
 
== <span style="color:#ca6f1e;">Boot réseau PXE</span> ==


<pre>
next-server 192.168.1.10;
filename "pxelinux.0";
</pre>
----


= <span style="color:#7d3c98;">3 — DHCP Relay sur Firewall</span> =
= <span style="color:#7d3c98;">3 — DHCP Relay sur Firewall</span> =
Ligne 182 : Ligne 156 :


== <span style="color:#884ea0;">Configuration</span> ==
== <span style="color:#884ea0;">Configuration</span> ==
Copier le fichier daemon dans un répertoire pour pouvoir etre executer et modifier
<pre>
cp /lib/systemd/system/dhcrelay.service /etc/systemd/system/
</pre>
Modifier le fichier fraichement copier
<pre>
vi /etc/systemd/system/dhcrelay.service
</pre>
Modifier la ligne ExecStart
<pre>
ExecStart=/usr/sbin/dhcrelay -d --no-pid -i pri -i lan -i dmz 192.168.40.253 192.168.40.251
</pre>
Reload le Daemon pour appliquer les changements de manière effective
<pre>
systemctl daemon-reload
</pre>


Nous allons modifier le DhcRelay
<pre>
<pre>
nano /etc/sysconfig/dhcrelay
vi /etc/sysconfig/dhcrelay
</pre>
</pre>


Ajout de ces lignes dans le fichier
<pre>
<pre>
DHCPSERVERS="192.168.1.10"
INTERFACES="dmz pri lan"
INTERFACES="ens33 ens34"
DHCPSERVERS="192.168.40.253"
</pre>
</pre>



Version du 16 février 2026 à 15:03

DHCP

Le DHCP (Dynamic Host Configuration Protocol) permet d’attribuer automatiquement des adresses IP aux machines d’un réseau.

Infrastructure DHCP — Rocky Linux

Documentation complète de mise en place d’une infrastructure DHCP sous Rocky Linux


1 — Création du Serveur DHCP

Installation et configuration du service DHCP

Installation du service

dnf install dhcp-server -y

Vérifier installation :

rpm -qa | grep dhcp

Configuration principale

vi /etc/dhcp/dhcpd.conf

Configuration minimale :

subnet 192.168.30.0 netmask 255.255.255.0 {
    authoritative;

    option routers 192.168.30.254;
    option domain-name-servers  192.168.40.253;
    range 192.168.30.10 192.168.30.50;
}

Vérification configuration

dhcpd -t

Démarrage du service

systemctl enable dhcpd
systemctl start dhcpd
systemctl status dhcpd

Ouverture Iptable

vi /etc/sysconfig/iptables

Dans le fichier inserer cette ligne

-I INPUT 2 -p udp --dport 67 -j ACCEPT

Enregistrement des changements

systemctl reload iptables

2 — Configuration DHCP détaillée

Configuration avancée du serveur DHCP

Explication directives

Directive Description
subnet Réseau géré
authoritative Serveur DHCP officiel
option routers Passerelle réseau
option domain-name-servers Serveurs DNS fournis
range Plage IP distribuée

Attribution IP fixe

host dhcp1 {
 hardware ethernet 00:00:00:00:00:00;
 fixed-address 192.168.40.253;
}

Plusieurs réseaux

Répeter cette procédure avec autant de réseaux nécessaires


3 — DHCP Relay sur Firewall

Transmission des requêtes DHCP entre réseaux

Principe

Le DHCP fonctionne en broadcast. Les routeurs bloquent ces requêtes. Le DHCP Relay transmet les requêtes vers un serveur distant.

Architecture :

Client → Firewall → Serveur DHCP

Installation

dnf install dhcp-relay -y

Configuration

Copier le fichier daemon dans un répertoire pour pouvoir etre executer et modifier

cp /lib/systemd/system/dhcrelay.service /etc/systemd/system/

Modifier le fichier fraichement copier

vi /etc/systemd/system/dhcrelay.service

Modifier la ligne ExecStart

ExecStart=/usr/sbin/dhcrelay -d --no-pid -i pri -i lan -i dmz 192.168.40.253 192.168.40.251

Reload le Daemon pour appliquer les changements de manière effective

systemctl daemon-reload 

Nous allons modifier le DhcRelay

vi /etc/sysconfig/dhcrelay

Ajout de ces lignes dans le fichier

INTERFACES="dmz pri lan"
DHCPSERVERS="192.168.40.253"

Activation

systemctl enable dhcrelay
systemctl start dhcrelay

4 — DHCP Maître / Esclave (Failover)

Haute disponibilité du service DHCP

Objectif

  • Continuité de service
  • Synchronisation des baux
  • Prévention des conflits IP

Modes

Mode Description
Load Balance Partage de charge
Hot Standby Serveur secondaire de secours

5 — Configuration DHCP Maître / Esclave

Configuration complète du failover DHCP

Architecture

MASTER : 192.168.1.10
SLAVE  : 192.168.1.11

Installer sur les deux :

dnf install dhcp-server -y

Configuration MASTER

failover peer "dhcp-failover" {
 primary;
 address 192.168.1.10;
 port 647;
 peer address 192.168.1.11;
 peer port 647;
 max-response-delay 60;
 max-unacked-updates 10;
}

subnet 192.168.1.0 netmask 255.255.255.0 {
 option routers 192.168.1.1;

 pool {
  failover peer "dhcp-failover";
  range 192.168.1.100 192.168.1.200;
 }
}

Configuration SLAVE

failover peer "dhcp-failover" {
 secondary;
 address 192.168.1.11;
 port 647;
 peer address 192.168.1.10;
 peer port 647;
}

Ouverture port failover

firewall-cmd --add-port=647/tcp --permanent
firewall-cmd --reload

Démarrage

systemctl enable dhcpd
systemctl start dhcpd

Infrastructure DHCP opérationnelle