Public bug reported:

The following function is defined in /etc/init.d/dnsmasq:

start_resolvconf()
{
# If interface "lo" is explicitly disabled in /etc/default/dnsmasq
# Then dnsmasq won't be providing local DNS, so don't add it to
# the resolvconf server set.
        for interface in $DNSMASQ_EXCEPT
        do
                [ $interface = lo ] && return
        done

        if [ -x /sbin/resolvconf ] ; then
                echo "nameserver 127.0.0.1" | /sbin/resolvconf -a lo.$NAME
        fi
        return 0
}

When someone puts port=0 in dnsmasq.conf, because e.g. he wants to use it only 
as a (proxy)DHCP/TFTP server,
127.0.0.1 is added to resolvconf, and DNS is broken because nothing listens 
there.

One workaround is to put DNSMASQ_EXCEPT=lo in /etc/default/dnsmasq.
But that doesn't make much sense, we don't want to exclude some interface, 
we're not running a DNS server at all.

So it would be nice if dnsmasq checked if port=0 is defined in its
configuration, and didn't add 127.0.0.1 to resolvconf then.

Sample implementation code, to be inserted before `if [ -x /sbin/resolvconf ]`:
    grep -qr port=0 /etc/dnsmasq.d/ /etc/dnsmasq.conf && return

** Affects: dnsmasq (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: patch

-- 
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/1501189

Title:
  Don't put 127.0.0.1 in resolvconf when port=0

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

-- 
Ubuntu-server-bugs mailing list
Ubuntu-server-bugs@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-server-bugs

Reply via email to