#560699 psi: Psi can't find the XMPP server via multicast and doesn't fallback

Package:
psi
Source:
psi
Description:
Qt-based XMPP client
Submitter:
Christoph Haas
Date:
2010-08-06 18:12:02 UTC
Severity:
minor
#560699#5
Date:
2009-12-11 14:04:55 UTC
From:
To:
Package: psi
Version: 0.13-1
Severity: important

We seem to be unable to use Psi in our local network. The DNS domain
is used also by Windows domain controllers and somehow Psi seems to
think that it can use a zeroconf-style DNS request to find the server.
This is what I found while sniffing the network interface:

  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query SRV _xmpp-client._tcp.jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question
  10.66.1.71 -> 224.0.0.251  MDNS Standard query A jabber.intranet.local, "QM" question
fe80::222:15ff:fe85:ccdc -> ff02::fb     MDNS Standard query A jabber.intranet.local, "QM" question

Apparently Psi tries to resolve the server "jabber.intranet.local"
through a multicast DNS request but there is no such server in our
local network answering such requests.

Other Jabber clients sometimes also try multicast DNS requests but
quickly fallback to regular (UDP 53) DNS requests. Psi doesn't.

I don't have any avahi or zeroconf services running on my system
and the /etc/nsswitch.conf reads:

    hosts:          files dns
    networks:       files

I have removed all traces of "mdns4" here because that has caused
incorrect caching of DNS entries in the past.

Psi is currently unusable in our local domain. Still it can connect
to other Jabber servers.

#560699#10
Date:
2009-12-11 15:49:35 UTC
From:
To:
Hi Christoph,

I did some reseach and found the following draft standard:
http://www.ietf.org/id/draft-cheshire-dnsext-multicastdns-08.txt

This specifies the behaviour as you observed it - .local should be
resolved by mDNS, and there is no fallback to unicast DNS mentioned in
that document.

Of course, it would be good if this behaviour was configurable - having
'.local.' as a suffix for local domain names is probably quite usual in
pre-mdns installations. I'm not sure if there is an easy way to disable
mdns in psi. Let's wait if there are responses on the developers list.

Regards,
Jan

#560699#15
Date:
2009-12-11 15:58:34 UTC
From:
To:
Jan Niehusmann schrieb:

Thank you. Apparently we were being stupid. I totally wasn't aware that
chosing the ".local" TLD in a local network could be a bad idea. It has
always been natural for me to chose ".local" for IP addresses in RFC1918
ranges. And I have currently no idea whether I need to set up a network
service that replies to mDNS requests.

I'm curious about their answer. Thanks for dealing with the issue. We will
keep on researching what the best way might be. Apparently it's not Psi's
fault then.

Best regards
 Christoph