Service Discovery from Google

I am having a hard time figuring out what is wrong with my setup on jabber.no these days. I have migrated all accounts over to a new server, plus transports and everything works fine except for Google users. They cannot do a service discovery on jabber.no, they just get a 404 error or similar.

To test I have just logged on to google with Psi or Gajim and do a service disco on jabber.no, and it fails, if I do the same from a jabber.ru or jabber.org account it works fine. Also, if I do a service discovery from a Google account on jabber.ru or jabber.dk this works fine too. So the only thing that does not work is disco from Google to jabber.no. Well, so I did a firewall log as well, just to make sure, and I can see the SYN come from Google and the SYN ACK go back from my server. So it seems the server gets the request, and sends something back but it fails.

The sad thing is that there is nada in the logs. I would hope for a small clue but nothing. How can I debug this problem? I think maybe there is an ACL or policy problem. Maybe there is a SRV record error, I cannot see what I am missing. My eyes are blind from staring at this problem.

Hope for some help here! :)

This patch makes s2s logs

This patch makes s2s logs more verbose. It usually doesn't make me much wiser, but it might help…

Does sending messages in both directions work? As you probably know, s2s uses one connection for each direction; does your server try to connect to Google?

I did now try to talk to a

I did now try to talk to a user on Google talk but it does not work. I tried it both ways and nothing happens. It just says I am disconnected. So it really seems I am not able to talk to the Google network at all after my migration.

When I try to send messages from jabber.no -> gmail I get this in the log file:

=INFO REPORT==== 2006-11-01 08:15:50 ===
I(<0.970.0>:ejabberd_s2s_out:131): started: {"jabber.no",
"gmail.com",
{new,"3669775789"}}

=INFO REPORT==== 2006-11-01 08:15:51 ===
I(<0.586.0>:ejabberd_s2s_in:519): terminated in stream_established: normal

=INFO REPORT==== 2006-11-01 08:15:52 ===
I(<0.588.0>:ejabberd_s2s_out:722): terminated in wait_for_validation: normal

=INFO REPORT==== 2006-11-01 08:16:00 ===
I(<0.967.0>:ejabberd_s2s_in:519): terminated in stream_established: normal

=INFO REPORT==== 2006-11-01 08:16:01 ===
I(<0.234.0>:ejabberd_listener:90): (#Port<0.1933>) Accepted connection {{72,14,252,129},13896} -> {{195,159,148,248},5269}

=INFO REPORT==== 2006-11-01 08:16:01 ===
I(<0.971.0>:ejabberd_s2s_in:105): started: {gen_tcp,#Port<0.1933>}

=INFO REPORT==== 2006-11-01 08:16:01 ===
I(<0.971.0>:ejabberd_s2s_in:317): GET KEY: {"pubsub.jabber.no",
"gmail.com",
[],
"CAESBxDt0d6U6iEaEPgOCSllbdeOY6ngckJJ7t4="}

=INFO REPORT==== 2006-11-01 08:16:01 ===
I(<0.973.0>:ejabberd_s2s_out:131): started: {"pubsub.jabber.no",
"gmail.com",
{verify,
<0.971.0>,
"CAESBxDt0d6U6iEaEPgOCSllbdeOY6ngckJJ7t4=",
"818078594"}}

=ERROR REPORT==== 2006-11-01 08:22:37 ===
E(<0.940.0>:ejabberd_s2s_out:199): Couldn't connect to gmail.com; none of
[{"gmail.com",5269}]
worked

=INFO REPORT==== 2006-11-01 08:22:37 ===
I(<0.940.0>:ejabberd_s2s_out:722): terminated in open_socket: normal

=ERROR REPORT==== 2006-11-01 08:22:37 ===
E(<0.939.0>:ejabberd_s2s_out:199): Couldn't connect to gmail.com; none of
[{"gmail.com",5269}]
worked

Any ideas?

SRV needed

stian@jabber.ru wrote:
=ERROR REPORT==== 2006-11-01 08:22:37 ===
E(<0.940.0>:ejabberd_s2s_out:199): Couldn't connect to gmail.com; none of
[{"gmail.com",5269}]
worked

This is the problem. Your server should make an SRV lookup of _xmpp-server._tcp.gmail.com to find the real hostname and port of the Google Talk s2s interface, but it doesn't. That can be worked around.

Thank you! This worked

Thank you! This worked beautifully!!

Seems my other install had this inetrc fix default so thats why it worked there :)

Syndicate content