Dnsmasq est un serveur DHCP et cache DNS léger. J'utilise les fonctions DNS pour maintenir les adresses des machines virtuelles de manière centralisée.
La gestion des adresses de DOMU se fait simplement via un fichier texte sur le modèle d'un fichier /etc/host.
Installation réalisée sur Debian 11 Bullseye.
root@mazarini:~# apt-get install dnsmasq ...
root@mazarini:~# apt list dnsmasq En train de lister... Fait dnsmasq/stable,now 2.85-1 all [installé] root@mazarini:~#
Extrait du fichier:
La configuration par défaut convient parfaitement :
Ce fichier est initialement fournit avec un paramétrage entièrement en commentaire. Je préfère le laisser ainsi et utiliser le répertoire /etc/dnsmasq.d pour définir le fonctionnement de dnsmasq.
Remarque : comme il n'y a pas de paramétrage pour DHCP, la fonction n'est pas activée.
# If you don't want dnsmasq to read /etc/hosts, uncomment the # following line. no-hosts # or if you want it to read another file, as well as /etc/hosts, use # this. addn-hosts=/etc/dnsmasq-hosts.conf # If you want dnsmasq to listen for DHCP and DNS requests only on # specified interfaces (and the loopback) give the name of the # interface (eg eth0) here. # Repeat the line for more than one interface. interface=eth0 # Change this line if you want dns to get its upstream servers from # somewhere other that /etc/resolv.conf resolv-file=/etc/dnsmasq-dns.conf # The following two options make you a better netizen, since they # tell dnsmasq to filter out queries which the public DNS cannot # answer, and which load the servers (especially the root servers) # unnecessarily. If you have a dial-on-demand link they also stop # these requests from bringing up the link unnecessarily. # Never forward plain names (without a dot or domain part) domain-needed
no-hosts | le fichier /etc/hosts est ignoré |
addn-hosts=/etc/dnsmasq-hosts.conf | le fichier remplace le fichier /etc/hosts |
interface=eth0 | Le serveur répond aux requêtes recu sur l'interface ETH0 ; cette interface est celle du réseau local (10.0.0.0/16). Le serveur ne répondra donc pas à l'extérieur. |
resolv-file=/etc/dnsmasq-dns.conf | Ce fichier contient les serveurs à interroger |
domain-needed | Les machines sans nom de domaine ne sont traitée que localement |
10.0.0.1 dns ns 10.0.0.2 mail smtp imap 10.0.0.3 mysql 10.0.0.4 postgress 10.0.0.5 apache 10.0.0.13 test 10.0.0.254 router
Ce fichier permet la résolution des noms des machines locales, cf le paramètre addn-hosts
nameserver 9.9.9.9 nameserver 1.1.1.1 nameserver 4.4.4.4