[Dnsmasq-discuss] Why dnsmasq got external DNS requests on one system and not another

Chris Green cl at isbd.net
Tue May 27 10:14:26 UTC 2014


I think I have finally fathomed out why my new dnsmasq installation on
my desktop machine didn't work whereas an apparently idetical setup on
a small server did work.

I *think* it's because Network Manager puts a file in /etc/dnsmasq.d
that just has one directive in it:-
    bind-interfaces
I believe this is left there from the 'dnsmasq run by Network Manager'
mode which is the default on [x]ubuntu systems.

On the small server (where everything did work OK) the bind-interfaces
directive didn't really do much as eth0 was already up and running
when dnsmasq started so dnsmasq would listen on eth0.  However on my
desktop machine, for whatever reason, eth0 takes a long time to start
working (there are loads of messages about it in syslog at start-up
time) and thus bind-interfaces stops dnsmasq from listening on eth0
because it's not there when dnsmasq starts.

I've fixed it on my desktop machine simply by removing the
bind-interfaces directive.  Now there are no 'listen-address' or
'interface' directives (as per the original setup) and without the
bind-interfaces directive dnsmasq listens on everything, which is
OK on my small home LAN.

Does this make sense?  I.e.  is my understanding correct?  ...  and
again is it worth adding to the FAQ if my diagnosis is correct, I
guess an interface being late to start up isn't *that* rare an
occurrence.  Maybe just a note to say that one should remove the
'bind-interface' directive left there by Network Manager if installing
a 'proper' dnsmasq.

-- 
Chris Green



More information about the Dnsmasq-discuss mailing list