# [Debian] Serveur DHCP

## Introduction

Un serveur **DHCP** permet d'attribuer automatiquement des adresses IP aux hôtes se connectant sur le réseau.

Dans ce guide, nous allons utiliser une Debian 12 avec l'outil **dhcpcd** qui va nous permettre de configurer le service DHCP.

Source :

- [Article d'Adrien Linuxtricks](https://www.linuxtricks.fr/wiki/debian-installer-un-serveur-dhcp)

## Prérequis

- Définir une adresse IP statique sur votre futur serveur DHCP.

## ![image.png](https://wiki.neopipe.fr/uploads/images/gallery/2023-09/scaled-1680-/J93image.png)Installation

Tout d'abord, installez le paquet le paquet approprié :

```bash
apt update && apt install -y isc-dhcp-server
```

Indiquer dans le fichier **/etc/default/isc-dhcp-server** l'interface d'écoute du serveur DHCP et décommenter cette ligne :

```bash
DHCPDv4_CONF=/etc/dhcp/dhcpd.conf
```

Et en ajoutant le nom des interfaces :

```
INTERFACESv4="ens33"
INTERFACESv6="ens33"
```

## Configuration

La configuration se trouve dans le fichier **/etc/dhcp/dhcpd.conf** .

Voici un template de configuration :

```
default-lease-time 86400; # Bail de 24H
max-lease-time 172800; # Bail maxi de 48H
# Déclaration d'un réseau
subnet 192.168.0.0 netmask 255.255.255.0 {
        range                           192.168.0.100 192.168.0.199; # Plage IP
        option domain-name-servers      192.168.0.253; # DNS
        option routers                  192.168.0.254; # Passerelle
}
 
```

On peut aussi ajouter des entrées d'hôtes où l'adresse IP doit être fixe en faisant une réservation d'adresse :

```
  host work-l-arch {
    hardware ethernet 10:bf:48:13:f6:cc;
    fixed-address 192.168.0.120;
  }
```

On peut aussi si on le souhaite, refuser le service DHCP à un hôte en spécifiant son adresse MAC de la même façon :

```
host work-l-arch {
      hardware ethernet 10:bf:48:13:f6:cc;
      deny booting;
}
```

## Démarrage et activation du service

```bash
systemctl enable --now isc-dhcp-server
```