[Bug 959037] Re: NM-controlled dnsmasq prevents other DNS servers from starting

John Hupp launchpad at prpcompany.com
Wed Nov 21 20:14:53 UTC 2012


I don't know how my case enters this discussion, but it is certainly
connected to the current default installation wherein network-manager
starts an instance of dnsmasq to act as a DHCP, DNS and TFTP server.

I was troubleshooting an LTSP-PNP client boot problem under Lubuntu
Quantal.  I installed with a single NIC per
https://help.ubuntu.com/community/UbuntuLTSP/ltsp-pnp.

The problem is that the LTSP client, after successfully getting DHCP
assignments, fails to download the pxelinux boot image.  It reports
"PXE-E32: TFTP open timeout."

To be more specific on the DHCP assignments, it identifies my hardware
router as the DHCP server and the default gateway.  It identifies the
LTSP server as proxy and boot server.

I can also run this on the server itself to get a similar failure:
$ cd /tmp
$ tftp 192.168.1.102 -v -m binary -c get /ltsp/i386/pxelinux.0
mode set to octet
Connected to 192.168.1.102 (192.168.1.102), port 69
getting from 192.168.1.102:/var/lib/tftpboot/ltsp/i386/pxelinux.0 to pxelinux.0 [octet]
Transfer timed out.

A CRITICAL NOTE: This is using the default network-manager configuration
of the network interface (using the default DHCP configuration, and the
connection is "Available to all users").

If I merely configure the network interface (again for DHCP) via
/etc/network/interfaces, the TFTP error disappears and the LTSP client
boots.

But it introduces a new problem on both server and client: DNS
resolution fails.

I can fix the DNS resolution problem by creating /etc/resolvconf/resolv.conf.d/tail with contents:
nameserver (my nameserver 1)
nameserver (my nameserver 2)

But trying to identify and perhaps work around the problem with network-
manager and dnsmasq, I undid the changes to /etc/network/interfaces and
deleted /etc/resolvconf/resolv.conf.d/tail.

It turns out that if I merely
$ sudo service dnsmasq restart
then the LTSP client will boot normally.

Hunting for some diagnostic information, I ran this command before and after restarting dnsmasq:
$ sudo netstat -nap | grep dnsmasq

Relevant output before restarting:
udp        0      0 127.0.0.1:69            0.0.0.0:*                           887/dnsmasq     

After restarting:
udp        0      0 127.0.0.1:69            0.0.0.0:*                           1967/dnsmasq    
udp        0      0 192.168.1.102:69        0.0.0.0:*                           1967/dnsmasq    
(where 192.168.1.102 is the server IP)

So dnsmasq is not binding to my server IP during boot.

If I remove /etc/dnsmasq.d/network-manager (which issues the sole
dnsmasq directive to bind all the interfaces instead of listening on
0.0.0.0) and restart the server it allows the client to boot normally.

-- 
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to dnsmasq in Ubuntu.
https://bugs.launchpad.net/bugs/959037

Title:
  NM-controlled dnsmasq prevents other DNS servers from starting

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/djbdns/+bug/959037/+subscriptions



More information about the Ubuntu-server-bugs mailing list