DD-WRT: les hôtes d'extension DNSMasq ne fonctionnent pas


12

J'ai un routeur Linksys exécutant DD-WRT (micrologiciel: DD-WRT v24-sp2 (09/08/09) mini). Je parviens à résoudre avec succès les noms DNS de mes systèmes affectés par DHCP, mais uniquement lorsque je qualifie pleinement ces domaines. Ceci malgré l'utilisation de l'option supplémentaire "expand-hosts" DNSMasq, qui est censée activer cette fonction précise.

Voici mon dnsmasq.conf:

interface=br0
resolv-file=/tmp/resolv.dnsmasq
domain=example.com
dhcp-leasefile=/tmp/dnsmasq.leases
dhcp-lease-max=51
dhcp-option=lan,3,10.77.0.5
dhcp-authoritative
dhcp-range=lan,10.77.0.100,10.77.0.149,255.255.0.0,1440m
dhcp-host=00:1A:A0:1D:82:5A,astatichostname,10.77.1.40,infinite
expand-hosts

(Pour info: example.com et astatichostname sont des espaces réservés pour les noms réels que j'utilise. Mon réseau utilise 10.77.0.0/16; mon routeur est sur 10.77.0.5.)

Résultats:

> nslookup astatichostname 10.77.0.5
Server:     10.77.0.5
Address:    10.77.0.5#53

** server can't find astatichostname: NXDOMAIN

> nslookup astatichostname.example.com 10.77.0.5
Server:     10.77.0.5
Address:    10.77.0.5#53

Name:   astatichostname.example.com
Address: 10.77.1.40

Y a-t-il autre chose qui pourrait déclencher l'expansion de l'hôte dans DNSMasq?

Réponses:


8

Cette question est ancienne, mais c'est l'un des meilleurs résultats Google pour le problème, et je l'ai finalement compris.

Le problème, c'est que ce expand-hostsn'est pas le cas. La documentation à ce sujet est très floue, mais ce expand-hostsqui est ajouté, c'est le domaine pour héberger les entrées dans /etc/hosts, pas pour les requêtes DNS. Donc par exemple

/ etc / hosts:

10.77.0.5 astatichostname

dnsmasq.conf:

expand-hosts
domain=example.com

Ensuite, les requêtes DNS pour astatichostname.example.comseront résolues en 10.77.0.5(en plus des requêtes DNS pour seulement astatichostname).



Solution:

Ainsi, la solution consiste à demander à dd-wrt de créer les entrées dans /etc/hostssans le domaine, puis d'indiquer à dnsmasq de considérer ces entrées d'hôte comme faisant partie du example.comdomaine lorsqu'une requête DNS d'enregistrement A pleinement qualifiée entre.
Pour ce faire, vous devoir:

  1. Placez le example.comdomaine dans le champ Nom de domaine sur la page Configuration -> Configuration de base sous Paramètres facultatifs .
  2. Videz le paramètre de domaine LAN sur la page Services sous Serveur DHCP .
  3. Ajouter expand-hostsaux options DNSMasq supplémentaires sur la page Services sous DNSMasq

L'étape # 1 contrôle le domain=paramètre qui est placé dans le dnsmasq.conffichier. L'étape # 2 supprime le domaine des entrées qui sont mises /etc/hosts. L'étape n ° 3 colle le domaine aux entrées /etc/hostslorsqu'une requête DNS complète entre en jeu.


Je suis tellement content que dd-wrt ait rendu cela simple et agréable ...


2

Ce qui suit fonctionne pour moi sur mon DD-WRT:

expand-hosts
local=/lan/
domain=lan

Je pense que c'est parce que le localparamètre vous manque . J'ai également landéfini mon "domaine LAN" dans l'interface graphique.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.