Monter un serveur DHCP sous Debian 9
Avant de commencer, assurez-vous que votre configuration réseau du serveur soit en static.
C'est un peu logique faire un dhcp qui est sur un dhcp c'est pas logique...
De plus par définition un serveur ne doit pas changer d'adresse IP.
Mais bon je préfère quand même le préciser.

C'est partie, on commence par installer les paquets
[root@ns1 colem]#apt-get update && apt-get install isc-dhcp-server


Voilà c'est installer, passons à la configuration, on édite le fichier dhcpd.conf
[root@ns1 colem]#nano /etc/dhcp/dhcpd.conf


Alors attention, ne faite que les modifications que je vous dit de faire, sauf si vous savez ce que vous faite.
Adaptez bien entendu suivant votre configuration réseau.

Dans les premières lignes du fichier, modifiez ceci
option domain-name "colem.eu";
option domain-name-servers 212.27.40.240,212.27.40.241; //DNS de chez free (on pourrait mettre 8.8.8.8,8.8.4.4 DNS google)
default-lease-time 86400; //soit 24h
max-lease-time 604800; // maxi 7jours


Ensuite un peu en dessous, décommentez ceci
authoritative;


Maintenant, allez completement à la fin du fichier et ajoutez ceci
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.126.180 192.168.126.199; //plage d'adresse du DHCP
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option routers 192.168.1.254; //ip de ma freebox
}


On enregistre nos modification avec un Ctrl X puis validation avec O et Entrée

Vérifions que nous ne nous sommes pas trompé en modifiant la configuration
Sur tous les tutos que j'ai trouvé sur le net, il donne cette commande dhcpd -t /etc/dhcp/dhcpd.conf
Mais pour ma part elle me donne une erreur qui n'a rien à voir avec le fichier de config
[root@ns1 colem]#dhcpd -t /etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd.conf: interface name too long (is 20)

If you think you have received this message due to a bug rather
than a configuration issue please read the section on submitting
bugs on either our web page at www.isc.org or in the README file
before submitting a bug. These pages explain the proper
process and the information we find helpful for debugging..

exiting.


J'ai eu beaucoup de mal à trouver mais j'ai finalement trouvé mon bonheur sur un site anglais.
Il faut plutôt faire cette commande dhcpd -t -cf /etc/dhcp/dhcpd.conf ou dhcpd -t

[root@ns1 colem]#dhcpd -t -cf /etc/dhcp/dhcpd.conf
Internet Systems Consortium DHCP Server 4.3.5
Copyright 2004-2016 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Config file: /etc/dhcp/dhcpd.conf
Database file: /var/lib/dhcp/dhcpd.leases
PID file: /var/run/dhcpd.pid


Maintenant il faut spécifier sur quelle interface réseau le dhcp doit écouter
[root@ns1 colem]#nano /etc/default/isc-dhcp-server


A la fin du fichier, modifier les deux dernières lignes suivant votre configuration
INTERFACESv4="enp0s9" //on écoute sur le deuxième port ethernet
#INTERFACESv6="" //pas d'ipv6


Pour ma configuration j'ai retiré l'ipv6 et mis en port d'écoute ma deuxième prise ethernet enp0s9 comme interface réseau.
Effectivement, si comme moi vous avez pas mal de trafic sur le réseau, essayez d'équilibrer entre vos deux prise.

On redémarre le serveur DHCP
[root@ns1 colem]#systemctl restart isc-dhcp-server.service


C'est presque fini.
Maintenant, modifions l'interface enp0s9
[root@ns1 colem]#nano /etc/network/interfaces


Rajouter ceci a la fin de sa configuration
iface enp0s9 inet static
address 192.168.1.100
netmask 255.255.255.0
up service isc-dhcp-server restart


On redémarre l'interface réseau
[root@ns1 colem]# systemctl restart networking.service


Et voilà votre DHCP est fonctionnel, vous pouvez connecter votre téléphone ou autre chose pour vérifier si tout va bien.


Plus d'option

Si vous souhaitez attribuer une adresse ip spécifique à un appareil
Modifiez le fichier de configuration et ajouter
host Portable_colem {
hardware ethernet 00:21:6b:06:05:50; //adresse MAC de l'appareil
fixed-address 192.168.1.185; //IP que vous souhaitez lui attribuer
}

Maintenant mon téléphone portable n'aura que cette ip.

Si vous avez quelques problèmes avec le DHCP, vous pouvez regarder les logs pour déceler le problème
[root@ns1 colem]#tail -f /var/log/syslog


Trions avec le demon dhcpd
[root@ns1 colem]#grep dhcpd /var/log/syslog


Alors, ça c'est vraiment à se souvenir car avec cette commande, vous voyez qui est connecté sur le DHCP.
[root@ns1 colem]#cat /var/lib/dhcp/dhcpd.leases | more


Et voilà, le tuto est terminé.
J'espère que ça vous aidera.