dns used for resolving mdns queries

Bug #287499 reported by raaboof
6
Affects Status Importance Assigned to Milestone
nss-mdns (Ubuntu)
New
Undecided
Unassigned

Bug Description

Release:

root@lupus:/etc/avahi# lsb_release -rd
Description: Ubuntu 8.04.1
Release: 8.04

By default, this is included in /etc/nsswith.conf:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

According to nss-mdns web page http://0pointer.de/lennart/projects/nss-mdns/ this should mean:

"
The minimal versions will always deny to resolve host names that don't end in .local or addresses that aren't in the range 169.254.x.x (the range used by IPV4LL/APIPA/RFC3927.) Combining the _minimal and the normal NSS modules allows us to make mDNS authoritative for Zeroconf host names and addresses (and thus creating no extra burden on DNS servers with always failing requests) and use it as fallback for everything else.
"

For some reason, normal DNS requests are still being made when a .local host is being resolved. When I run "getent hosts foo.local" and monitor the traffic using tshark, I get:

  0.000000 10.65.17.20 -> 10.65.26.4 DNS Standard query AAAA foo.local
  0.009858 10.65.26.4 -> 10.65.17.20 DNS Standard query response, No such name
  0.009948 10.65.17.20 -> 10.65.26.4 DNS Standard query AAAA foo.local.bothi.fi
  0.010132 10.65.26.4 -> 10.65.17.20 DNS Standard query response, No such name
  0.111629 10.65.17.20 -> 224.0.0.251 MDNS Standard query A foo.local, "QM" question
  1.114619 10.65.17.20 -> 224.0.0.251 MDNS Standard query A foo.local, "QM" question
  3.118609 10.65.17.20 -> 224.0.0.251 MDNS Standard query A foo.local, "QM" question
7 packets captured

According to my understanding, those DNS Standard queries should not be there.

Revision history for this message
Martin Pitt (pitti) wrote :

I get that, too, with "tcpdump -i eth0 proto UDP and port 53".

However, I'm not entirely sure whether this is a bug or a feature. Some people still run ".local" as an actual unicast LAN network name, and the current scheme makes sure that this continues to work as long as you don't have a real IPv4LL network. But indeed this would render the "[NOTFOUND=return]" quite useless.

Lennart, do you know a way to debug the particular modules, like mdns4_minimal and its return values?

Revision history for this message
Mark Thornton (mthornton-2) wrote :

With 12.04.1 and the standard line in nsswitch.conf, I find that DNS is not queried for a .local address.

Unfortunately, as noted above, .local is used on some networks with DNS. A particular case is the Microsoft Windows Small Business System 2011 installs with a .local domain by default. Worse it is quite tedious to override this (http://titlerequired.com/2011/08/02/installing-sbs-essentials-using-an-answer-file/).

So anyone working on such a network now has to modify their nsswitch.conf if local hosts are to be resolved correctly.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.