[Psi-Devel] Psi can't find the XMPP server via multicast and doesn't fallback

Justin Karneges justin-psi2 at affinix.com
Sat Dec 12 09:53:00 PST 2009


On Friday 11 December 2009 06:41:46 Jan Niehusmann wrote:
> On Fri, Dec 11, 2009 at 03:20:15PM +0100, Jan Niehusmann wrote:
> > I got an interesting bug report via the debian BTS (see attachment). As I
> > don't know how multicast dns works, I'm not sure how to debug this. Does
> > anyone of you know more about that topic?
>
> I should have done some research, first. :-)
>
> http://files.multicastdns.org/draft-cheshire-dnsext-multicastdns.txt
> (found on http://www.multicastdns.org/), reads:
>
> "Any DNS query for a name ending with ".local." MUST be sent
> to the mDNS multicast address (224.0.0.251 or its IPv6 equivalent
> FF02::FB)."
>
> There is no fallback to unicast DNS mentioned, so I think psi is acting
> as specified in this draft.

It's unfortunate, but there are non-mdns internal networks out there 
using ".local" in domain names which causes trouble with mdns.  So even 
though the spec doesn't say anything about fallback, practically speaking 
maybe some fallback is needed...

My advice to anyone having this problem is to try to make your network mdns 
friendly by not using ".local" in normal intranet DNS names.  With both Mac 
and many Linux distros having built-in support for mdns, it is something to 
strongly consider because otherwise you break these OSs.

> And in fact, it's probably not psi but some 
> unix library doing the query, as 'ping xyz.local.' does the same.

Psi doesn't use any system library for DNS at this time, and it does 
the "*.local" == mdns logic on its own.  But, Avahi is rigged into modern 
Debian distros I believe, so things like 'ping' will act similarly.  You can 
edit /etc/nsswitch.conf to change the behavior of the system calls, but be 
aware that this has no effect on Psi.

-Justin


More information about the Psi-Devel mailing list