Nous allons utiliser DNSMasq qui à lui seul est capable de gérer le serveur DHCP, PXE et TFTP. On va commencer par l'installer via

(sudo) apt install dnsmasq

Ensuite nous allons modifier son fichier de configuration (/etc/dnsmasq.conf). J'ai mis des commentaires sur le fichier pour donner les fonctions de chaque ligne.

#interface réseau utilisé
interface=ens3

#Serveur DHCP
#Range ip
dhcp-range=192.168.0.50,192.168.0.100,24h
# Masque reseau
dhcp-option=1,255.255.255.0
# Gateway
dhcp-option=3,192.168.0.254

#Serveur PXE
#Fichier de boot PXE, nom du serveur et addresse ip du serveur
dhcp-boot=pxelinux.0,pxeserver,192.168.0.252 pxe-service=x86PC, “Boot PXE”, pxelinux

#Serveur TFTP
enable-tftp
#Repertoire des fichiers (bien verifier l'existance de celui-ci, a crée si besoin)
tftp-root=/var/tftp

La configuration est pour mon réseau, je vous laisse le soin de l'adapter selon vos besoins.

Ensuite, je vous ai mâché tout le travail en vous bricolant un PXELINUX via SYSLINUX en 6.03 fonctionnelle, y'a juste a télécharger ici et a poser dans le répertoire tftp (/var/tftp dans l'exemple).

Pour modifier le menu, tout ce passe dans “pxelinux.cfg/default” , vous trouverez des exemples à cette adresse : https://www.syslinux.org/wiki/index.php?title=PXELINUX ou https://tool.frogg.fr/Tutorial_Linux_PXE_on_WDS