dhcpd

dhcpd est le serveur DHCP du Consortium des systèmes Internet. Il est utile par exemple sur une machine agissant comme un routeur sur un réseau local.

Remarque : dhcpd (démon DHCP (serveur)) n’est pas le même que dhcpcd (démon client DHCP).

Installation

Installez le paquet dhcp.

Utilisation

dhcpd inclut deux fichiers unitaires dhcpd4.service et dhcpd6.service, qui peuvent être utilisés pour contrôler le démon. Ils démarrent le démon sur toutes les interfaces réseau pour IPv4 et IPv6 respectivement. Voir #Écoute sur une seule interface pour une alternative.

Configuration

Attribuez une adresse IPv4 statique à l’interface que vous souhaitez utiliser (dans nos exemples, nous utiliserons eth0). Les 3 premiers octets de cette adresse ne peuvent pas être exactement les mêmes que ceux d’une autre interface.

# ip link set up dev eth0# ip addr add 139.96.30.100/24 dev eth0 # arbitrary address
Astuce: Habituellement, l’un des trois sous-réseaux suivants est utilisé pour les réseaux privés, qui sont spécialement réservés et n’entrent en conflit avec aucun hôte sur Internet:

  • 192.168/16 ( sous-réseau 192.168.0.0, masque de réseau 255.255.0.0)
  • 172.16/12 ( sous-réseau 172.16.0.0, masque de réseau 255.240.0.0)
  • 10/8 ( pour les grands réseaux; sous-réseau 10.0.0.0, masque de réseau 255.0.0.0)

Voir aussi RFC 1918.

Pour que votre adresse IP statique soit affectée au démarrage, consultez Configuration réseau # Adresse IP statique.

Le dhcpd.conf par défaut contient de nombreux exemples non commentés, alors déplacez-le:

# cp /etc/dhcpd.conf /etc/dhcpd.conf.example

Le fichier de configuration minimal peut ressembler à :

/etc/dhcpd.conf 
 option serveurs de noms de domaine 8.8.8.8, 8.8.4.4; option masque de sous-réseau 255.255.255.0; option routeurs 139.96.30.100; sous-réseau 139.96.30.0 masque de réseau 255.255.255.0 { plage 139.96.30.150 139.96.30.250;} 

Si vous devez fournir une adresse IP fixe pour un seul périphérique spécifique, vous pouvez définir des blocs hôtes :

/etc/dhcpd.conf 
 option serveurs de noms de domaine 8.8.8.8, 8.8.4.4; option masque de sous-réseau 255.255.255.0; option routeurs 139.96.30.100; sous-réseau 139.96.30.0 masque de réseau 255.255.255.0 { plage 139.96.30.150 139.96.30.250; } hôte macbookpro { ethernet matériel 70:56:81:22:33:44; adresse fixe 139.96.30.199;}

domain-name-servers l’option contient les adresses des serveurs DNS qui sont fournis aux clients. Dans notre exemple, nous utilisons les serveurs DNS publics de Google. Si vous connaissez un serveur DNS local (par exemple, fourni par votre FAI), vous devriez envisager de l’utiliser. Si vous avez configuré votre propre DNS sur une machine locale, utilisez son adresse dans votre sous-réseau (par exemple 139.96.30.100 dans notre exemple).

subnet-mask et routers définit un masque de sous-réseau et une liste des routeurs disponibles sur le sous-réseau. Dans la plupart des cas pour les petits réseaux, vous pouvez utiliser 255.255.255.0 comme masque et spécifier une adresse IP de la machine sur laquelle vous configurez le serveur DHCP en tant que routeur.

subnet blocks définit des options pour des sous-réseaux distincts, qui sont mappés aux interfaces réseau sur lesquelles dhcpd est exécuté. Dans notre exemple, il s’agit d’un sous-réseau 139.96.30.0/24 pour une interface unique eth0, pour lequel nous avons défini la plage d’adresses IP disponibles. Les adresses de cette plage seront attribuées aux clients qui se connectent.

Écoute sur une seule interface

Si votre ordinateur fait déjà partie d’un ou plusieurs réseaux, cela peut poser problème si votre ordinateur commence à donner des adresses IP aux machines des autres réseaux. Cela peut être fait en configurant dhcpd ou en le démarrant en tant que démon avec systemctl.

Configuration de dhcpd

Afin d’exclure une interface, vous devez créer une déclaration vide pour le sous-réseau qui sera configuré sur cette interface.

Cela se fait en éditant le fichier de configuration (par exemple) :

/etc/dhcpd.conf 
 # Aucun service DHCP dans le réseau DMZ (192.168.2.0/24) sous-réseau 192.168.2.0 masque de réseau 255.255.255.0 {} 

Fichier de service

Aucun fichier de service n’est fourni par défaut pour utiliser dhcpd uniquement sur une interface, vous devez donc en créer une. Commencez par copier le service existant:

# cp /usr/lib/systemd/system/dhcpd4.service /etc/systemd/system/[email protected]

Modifiez ensuite la ligne ExecStart pour inclure l’interface :

/etc/systemd/system/[email protected] 
......Il est possible de créer un fichier d'exécution.configuration de la configuration.pid% I...

Il s’agit d’une unité de modèle, qui la lie à une interface particulière, par exemple [email protected] où eth0 est une interface affichée avec ip link.

Utiliser pour PXE

La configuration de PXE se fait avec les deux options suivantes :

/etc/dhcpd.conf 
 serveur suivant 192.168.0.2; nom de fichier "/pxelinux.0"; 

Cette section peut être dans une définition entière subnet ou juste dans une définition host. next-server est l’adresse IP du serveur TFTP et filename est le nom de fichier de l’image à démarrer. Pour plus d’informations, voir PXE.

Voir aussi

  • Documentation DHCP ISC