dnsmasq : srv léger dns et dhcp

DnsMasq est un petit serveur DNS (cache DNS) qui intègre un serveur DHCP. Peu gourmand en ressources et très simple à configurer, il est bien adapté à une installation sur une solution embarquée telle qu’un routeur ou point d’accès wifi.

Installer : sudo apt-get install dnsmasq

commandes utiles

 journalctl -xb | grep dnsmasq

 

Conf principale

à /etc/dnsmasq.d/network-manager (ou /etc/dnsmasq.conf) (puis relancer avec sudo /etc/init.d/dnsmasq restart)

kk notes

  • domain-needed : Ne transmet pas les requêtes ne contenant pas un nom de domaine complet. Par exemple,une requête pour machine ne sera pas transmise aux serveurs DNS de votre FAI, alors qu’une requête pour machine.domain.com le sera.
  • bogus-priv : Fausse résolution inverse pour les réseaux privés. Toutes les requêtes DNS inverses pour des adresses IP privées (ie 192.168.x.x, etc…) qui ne sont pas trouvées dans /etc/hosts ou dans le fichier de baux DHCP se voient retournées une réponse “pas de tel domaine” (”no such domain”) au lieu d’être transmises aux serveurs de nom amont (”upstream server”).
  • filterwin2k : requêtes bloquées sont les requêtes pour les entrées de type SOA ou SRV, ainsi que les requêtes de type ANY avec des noms possédant des caractères sous-lignés (requêtes pour des serveurs LDAP).
  • domain : Spécifie le domaine utilisé pour étendre la recherche de noms sans domaine. Utilisé également pour attribuer un domaine de recherche au clients DHCP.
  • expand-hosts : Ajoute le nom de domaine aux noms simples (ne contenant pas de point dans le nom) contenus dans le fichier /etc/hosts, de la même façon que pour le service DHCP.
    ...

Donner ip fixe à un client

ajouter dans (ici ip en 1.2 hors de la plage dhcp) /etc/dnsmasq.conf
dhcp-host=00:16:d4:f5:5d:64,192.168.1.2

Note : les DNS de Free : 212.27.40.240 212.27.40.241 et aussi https://servers.opennicproject.org/ (ex: 188.165.200.156)

Sur mon système

Dnsmasq est géré par NetworkManager.
Le /etc/dnsmasq.conf a une conf freedesktop et /etc/dnsmasq.d/network-manager a

# Tell any system-wide dnsmasq instance to make sure to bind to interfaces
# instead of listening on 0.0.0.0
# WARNING: changes to this file will get lost if network-manager is removed.
bind-interfaces

bind-interfaces, bind-dynamic ou wildcard ?

De http://www.thekelleys.org.uk/dnsmasq/docs/FAQ "What are these strange "bind-interface" and "bind-dynamic" options?"

Depuis Dnsmasq v2.63, on a le choix entre 3 modes.

 

Plus sur le web

En fr : https://doc.ubuntu-fr.org/configuration_serveur_dns_dhcp et

en anglais :

 

  • https://1.1.1.1/fr-FR/   :
    • Pour IPv4: 1.1.1.1, 1.0.0.1
    • Pour IPv6: 2606:4700:4700::1111, 2606:4700:4700::1001
logo drush