« DHCP » : différence entre les versions
Aucun résumé des modifications |
|||
| (14 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
= DHCP = | = <span style="color:#2c3e50;">DHCP</span> = | ||
Le DHCP (Dynamic Host Configuration Protocol) permet | {| style="width:100%; background:#f0f4f8; border:1px solid #c7d3e0; padding:15px; border-radius:10px; overflow:hidden;" | ||
| | |||
<span style="font-size:120%; color:#2c3e50;"> | |||
Le <b>DHCP (Dynamic Host Configuration Protocol)</b> permet d’attribuer automatiquement des adresses IP aux machines d’un réseau. | |||
</span> | |||
|} | |||
= <span style="color:#2c3e50;">Infrastructure DHCP — Rocky Linux</span> = | |||
= | {| style="width:100%; background:#f5f7fa; border:1px solid #d6dbe1; padding:15px; border-radius:10px; overflow:hidden;" | ||
| | |||
<span style="font-size:115%; color:#34495e;"> | |||
<b>Documentation complète de mise en place d’une infrastructure DHCP sous Rocky Linux</b> | |||
</span> | |||
|} | |||
__TOC__ | __TOC__ | ||
= <span style="color:#196f3d;">1 — Création du Serveur DHCP</span> = | |||
= | {| style="width:100%; background:#f3f9f1; border:1px solid #cfe5c9; padding:12px; border-radius:10px; overflow:hidden;" | ||
| | |||
<b style="color:#196f3d;">Installation et configuration du service DHCP</b> | |||
|} | |||
== | == <span style="color:#239b56;">Installation du service</span> == | ||
</ | |||
<pre> | <pre> | ||
dnf install dhcp-server -y | |||
</pre> | </pre> | ||
Vérifier l’installation : | |||
<pre> | <pre> | ||
rpm -qa | grep dhcp | rpm -qa | grep dhcp | ||
</pre> | </pre> | ||
== <span style="color:#239b56;">Configuration principale</span> == | |||
== | |||
</ | |||
= | |||
<pre> | <pre> | ||
vi /etc/dhcp/dhcpd.conf | |||
</pre> | </pre> | ||
| Ligne 80 : | Ligne 47 : | ||
<pre> | <pre> | ||
subnet 192.168.30.0 netmask 255.255.255.0 { | |||
authoritative; | |||
subnet 192.168. | |||
option routers 192.168.30.254; | |||
option domain-name-servers 192.168.40.253; | |||
range 192.168.30.10 192.168.30.50; | |||
} | } | ||
</pre> | </pre> | ||
== <span style="color:#239b56;">Vérification de la configuration</span> == | |||
<pre> | <pre> | ||
dhcpd -t | dhcpd -t | ||
</pre> | </pre> | ||
== <span style="color:#239b56;">Démarrage du service</span> == | |||
<pre> | <pre> | ||
systemctl enable dhcpd | systemctl enable dhcpd | ||
| Ligne 114 : | Ligne 70 : | ||
</pre> | </pre> | ||
== <span style="color:#239b56;">Ouverture de iptables</span> == | |||
<pre> | <pre> | ||
vi /etc/sysconfig/iptables | |||
-I INPUT 2 -p udp --dport 67 -j ACCEPT | |||
</pre> | </pre> | ||
== <span style="color:#239b56;">Enregistrement des changements</span> == | |||
<pre> | <pre> | ||
systemctl reload iptables | |||
</pre> | </pre> | ||
---- | |||
< | |||
= <span style="color:#b9770e;">2 — Configuration DHCP détaillée</span> = | |||
</ | |||
= | {| style="width:100%; background:#fff6e6; border:1px solid #f1d6a8; padding:12px; border-radius:10px; overflow:hidden;" | ||
| | |||
<b style="color:#b9770e;">Configuration avancée du serveur DHCP</b> | |||
|} | |||
== Explication des directives | == <span style="color:#ca6f1e;">Explication des directives</span> == | ||
{| class="wikitable" | {| class="wikitable" style="width:50%; background:#ffffff; border:1px solid #fad7a0; border-radius:10px; overflow:hidden;" | ||
! Directive !! Description | ! 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 | | range || Plage IP distribuée | ||
|} | |} | ||
== <span style="color:#ca6f1e;">Attribution d’une IP fixe</span> == | |||
== Attribution IP fixe | |||
</ | |||
<pre> | <pre> | ||
host dhcp1 { | |||
hardware ethernet 00:00:00:00:00:00; | |||
fixed-address 192.168.40.253; | |||
} | } | ||
</pre> | </pre> | ||
== <span style="color:#ca6f1e;">Plusieurs réseaux</span> == | |||
Répétez cette procédure pour tous les réseaux nécessaires. | |||
---- | |||
< | = <span style="color:#7d3c98;">3 — DHCP Relay sur Firewall</span> = | ||
</ | |||
{| style="width:100%; background:#f5eef8; border:1px solid #d7c6e6; padding:12px; border-radius:10px; overflow:hidden;" | |||
| | |||
<b style="color:#7d3c98;">Transmission des requêtes DHCP entre réseaux</b> | |||
|} | |||
= | == <span style="color:#884ea0;">Principe</span> == | ||
== Principe == | |||
{| style="width:100%; background:#fafafa; border:1px solid #ddd; padding:12px; border-radius:10px; overflow:hidden;" | |||
| | |||
Le DHCP fonctionne en broadcast. | |||
Les routeurs bloquent ces requêtes. | |||
Le DHCP Relay transmet les requêtes vers un serveur distant. | Le DHCP Relay transmet les requêtes vers un serveur distant. | ||
|} | |||
Architecture : | Architecture : | ||
| Ligne 208 : | Ligne 145 : | ||
</pre> | </pre> | ||
== <span style="color:#884ea0;">Installation</span> == | |||
<pre> | <pre> | ||
dnf install dhcp-relay -y | dnf install dhcp-relay -y | ||
</pre> | </pre> | ||
== <span style="color:#884ea0;">Configuration</span> == | |||
<pre> | <pre> | ||
cp /lib/systemd/system/dhcrelay.service /etc/systemd/system/ | |||
vi /etc/systemd/system/dhcrelay.service | |||
ExecStart=/usr/sbin/dhcrelay -d --no-pid -i pri -i lan -i dmz 192.168.40.253 192.168.40.251 | |||
systemctl daemon-reload | |||
vi /etc/sysconfig/dhcrelay | |||
</pre> | </pre> | ||
Ajouter : | |||
<pre> | <pre> | ||
DHCPSERVERS="192.168. | INTERFACES="dmz pri lan" | ||
DHCPSERVERS="192.168.40.253" | |||
</pre> | </pre> | ||
== <span style="color:#884ea0;">Activation</span> == | |||
<pre> | <pre> | ||
systemctl enable dhcrelay | systemctl enable dhcrelay | ||
systemctl start dhcrelay | systemctl start dhcrelay | ||
</pre> | </pre> | ||
---- | |||
= <span style="color:#922b21;">4 — DHCP Maître / Esclave (Failover)</span> = | |||
= | {| style="width:100%; background:#fdeeee; border:1px solid #efc2c2; padding:12px; border-radius:10px; overflow:hidden;" | ||
< | | | ||
<b style="color:#922b21;">Haute disponibilité du service DHCP</b> | |||
|} | |||
</ | |||
= | == <span style="color:#a93226;">Objectif</span> == | ||
* Continuité de service | * Continuité de service | ||
* Synchronisation des baux | |||
* Prévention des conflits IP | * Prévention des conflits IP | ||
== <span style="color:#a93226;">Modes</span> == | |||
{| class="wikitable" style="width:35%; border:1px solid #f5b7b1; border-radius:10px; overflow:hidden;" | |||
{| class="wikitable" | |||
! Mode !! Description | ! Mode !! Description | ||
|- | |- | ||
| Load Balance || | | Load Balance || Partage de charge | ||
|- | |- | ||
| Hot Standby || Serveur secondaire | | Hot Standby || Serveur secondaire de secours | ||
|} | |} | ||
---- | |||
= <span style="color:#117864;">5 — Configuration DHCP Maître / Esclave</span> = | |||
= | {| style="width:100%; background:#eef7f6; border:1px solid #bfe1dc; padding:12px; border-radius:10px; overflow:hidden;" | ||
| | |||
<b style="color:#117864;">Configuration complète du failover DHCP</b> | |||
|} | |||
== Architecture | == <span style="color:#148f77;">Architecture</span> == | ||
<pre> | <pre> | ||
MASTER : 192.168. | MASTER : 192.168.40.253 | ||
SLAVE : 192.168. | SLAVE : 192.168.40.251 | ||
</pre> | </pre> | ||
Installation sur les deux serveurs : | |||
<pre> | <pre> | ||
| Ligne 295 : | Ligne 222 : | ||
</pre> | </pre> | ||
== <span style="color:#148f77;">Configuration MASTER</span> == | |||
== Configuration MASTER == | |||
<pre> | <pre> | ||
failover peer "dhcp" { | |||
primary; | |||
address 192.168.40.253; | |||
port 520; | |||
peer address 192.168.40.251; | |||
peer port 520; | |||
max-response-delay 60; | |||
max-unacked-updates 10; | |||
mclt 3600; | |||
split 128; | |||
load balance max seconds 3; | |||
} | |||
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; | |||
pool { | |||
failover peer "dhcp"; | |||
option routers 192.168.30.254; | |||
range 192.168.30.10 192.168.30.50; | |||
} | |||
} | } | ||
</pre> | </pre> | ||
== <span style="color:#148f77;">Configuration SLAVE</span> == | |||
== Configuration SLAVE == | |||
<pre> | <pre> | ||
failover peer "dhcp" { | |||
secondary; | |||
address 192.168.40.251; | |||
port 520; | |||
failover peer "dhcp | peer address 192.168.40.253; | ||
peer port 520; | |||
max-response-delay 60; | |||
max-unacked-updates 10; | |||
mclt 3600; | |||
} | } | ||
subnet 192.168.30.0 netmask 255.255.255.0 { | |||
option routers 192.168.30.254; | |||
option domain-name-servers 192.168.40.253; | |||
pool { | |||
failover peer "dhcp"; | |||
option routers 192.168.30.254; | |||
range 192.168.30.10 192.168.30.50; | |||
} | |||
} | } | ||
</pre> | </pre> | ||
== <span style="color:#148f77;">Ouverture du port failover</span> == | |||
<pre> | <pre> | ||
vi /etc/sysconfig/iptables | |||
-I INPUT 2 -p tcp --dport 520 -j ACCEPT | |||
systemctl reload iptables | |||
</pre> | </pre> | ||
== <span style="color:#148f77;">Redémarrage du service DHCP</span> == | |||
<pre> | <pre> | ||
systemctl | systemctl restart dhcpd | ||
</pre> | </pre> | ||
---- | |||
{| style="width:100%; background:#e8f5e9; border:1px solid #c8e6c9; padding:15px; border-radius:10px; overflow:hidden;" | |||
= | | | ||
< | <span style="font-size:120%; color:#1e8449;"> | ||
<b>Infrastructure DHCP opérationnelle</b> | |||
</ | </span> | ||
|} | |||
Dernière version du 21 février 2026 à 15:27
DHCP
Infrastructure DHCP — Rocky Linux
1 — Création du Serveur DHCP
Installation du service
dnf install dhcp-server -y
Vérifier l’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 de la configuration
dhcpd -t
Démarrage du service
systemctl enable dhcpd systemctl start dhcpd systemctl status dhcpd
Ouverture de iptables
vi /etc/sysconfig/iptables -I INPUT 2 -p udp --dport 67 -j ACCEPT
Enregistrement des changements
systemctl reload iptables
2 — Configuration DHCP détaillée
Explication des directives
Attribution d’une IP fixe
host dhcp1 {
hardware ethernet 00:00:00:00:00:00;
fixed-address 192.168.40.253;
}
Plusieurs réseaux
Répétez cette procédure pour tous les réseaux nécessaires.
3 — DHCP Relay sur Firewall
Principe
Architecture :
Client → Firewall → Serveur DHCP
Installation
dnf install dhcp-relay -y
Configuration
cp /lib/systemd/system/dhcrelay.service /etc/systemd/system/ vi /etc/systemd/system/dhcrelay.service ExecStart=/usr/sbin/dhcrelay -d --no-pid -i pri -i lan -i dmz 192.168.40.253 192.168.40.251 systemctl daemon-reload vi /etc/sysconfig/dhcrelay
Ajouter :
INTERFACES="dmz pri lan" DHCPSERVERS="192.168.40.253"
Activation
systemctl enable dhcrelay systemctl start dhcrelay
4 — DHCP Maître / Esclave (Failover)
Objectif
- Continuité de service
- Synchronisation des baux
- Prévention des conflits IP
Modes
5 — Configuration DHCP Maître / Esclave
Architecture
MASTER : 192.168.40.253 SLAVE : 192.168.40.251
Installation sur les deux serveurs :
dnf install dhcp-server -y
Configuration MASTER
failover peer "dhcp" {
primary;
address 192.168.40.253;
port 520;
peer address 192.168.40.251;
peer port 520;
max-response-delay 60;
max-unacked-updates 10;
mclt 3600;
split 128;
load balance max seconds 3;
}
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;
pool {
failover peer "dhcp";
option routers 192.168.30.254;
range 192.168.30.10 192.168.30.50;
}
}
Configuration SLAVE
failover peer "dhcp" {
secondary;
address 192.168.40.251;
port 520;
peer address 192.168.40.253;
peer port 520;
max-response-delay 60;
max-unacked-updates 10;
mclt 3600;
}
subnet 192.168.30.0 netmask 255.255.255.0 {
option routers 192.168.30.254;
option domain-name-servers 192.168.40.253;
pool {
failover peer "dhcp";
option routers 192.168.30.254;
range 192.168.30.10 192.168.30.50;
}
}
Ouverture du port failover
vi /etc/sysconfig/iptables -I INPUT 2 -p tcp --dport 520 -j ACCEPT systemctl reload iptables
Redémarrage du service DHCP
systemctl restart dhcpd