[KLUG Members] SuSE, Zeroconf, and the 'local' Domain

Andrew Thompson apthmpsn at imagerie.com
Wed Sep 29 22:46:33 EDT 2004


I ran into an interesting little problem after installing SuSE 9.1 Pro
over the weekend. Try as I might, I could NOT get the newly installed
system to find any of the local machines by name. It took me until last
night to find out why. My first clue was in the release notes:

http://elibrary.fultus.com/technical/topic/com.fultus.suse.releases/releases/release-notes.html

Under 'Change in Resolver Library', I found this interesting paragraph:

> Incompatible change: the resolver library treats the .local top level
> domain as link-local domain and sends multicast DNS requests to the
> multicast address 224.0.0.251 port 5353 instead of normal DNS
> requests. If you already use the .local domain in your nameserver
> configuration you will have to switch to another domain name. See
> http://www.multicastdns.org for more information on multicast DNS.

It took a bit of digging and reading to find out what's going on.
Apparently, somebody decided that the unassigned top-level domain name,
'local', would be reserved for Zeroconf. This is a network "discovery"
technology that's supposed to allow any device to plug into any
(supporting) network, get itself set up, and find out what resources and
services are available there. Deployed primarily by Apple under the name
Rendezvous, it's apparently starting to work its way into the Linux
community. I understand that Mandrake started shipping with support for
it, and now it seems SuSE is going the same way.

So, what does this have to do with the 'local' domain? Just this:
instead of resolving it through the regular channels, SuSE's resolver
library tries multicast DNS instead, as noted above. As near as I can
tell, this is NOT a configurable option; it's written right into the
resolver library, and that's that.

I'll skip venting my opinions on the matter. Suffice it to say that I
spent most of today trying to find SOME official pronouncement that
'local' would now be the exclusive domain of this Zeroconf, and all I
came up with was an IETF draft filed this year by one of Apple's people.
At the same time, I happened across an entirely different draft released
at least three times between 1998 and 2000, proposing that 'local' be
designated a private domain name usable for local networks as the
192.168.*.* and other IP blocks are used now. As you might expect, this
use of 'local' is not exactly uncommon; I've seen mention of at least a
couple companies who were using it for their local domains, at least
until this Zeroconf came along.

It just really bothers me (okay, I lied about the venting) that Apple or
whoever has gone and done this with no apparent official approval. It's
even worse to have any Linux vendor just going along with it and forcing
this kind of change down our throats, but I really didn't want to go on
and on about it. What I want to do is get rid of it. SO:

What I want to do is find the source for the resolver library and
disable this new little 'feature'. My best guess is, it's in the BIND
package, but I'm really not sure. If anyone might have a clue or two,
they would be much appreciated.

-- 
Andrew Thompson <apthmpsn at imagerie.com>
The Imagerie (www.imagerie.com)



More information about the Members mailing list