为了这篇文章的目的,根域example.com。
我有一个在Debian 6上运行的XMPP服务器(ejabberd)。
在客户端(Pidgin,Adium),当我尝试添加一个gtalk xmpp帐户作为联系人,我得到“未授权”的消息,以及404和503错误(debugging输出下面)。
虽然这会提示ejabberdconfiguration错误,但如果将XMPP服务器configuration为托pipechat.example.com,则添加一个gtalk用户就可以。 如果XMPP服务器托pipe了secondexample.com,情况也是如此。
也许这是一个DNS问题? 那么,我已经看了DNS,主机文件,我已经validation了他们是正确的。 但是我已经删除了它们,以防万一。
服务器构build? 我从头开始重build它。 同样的问题。 networking? 我已经在不同的networking上尝试过了。
我已经用完了想法。
可以gtalk黑名单服务器? 因为失误?
如果你有任何想法,他们将不胜感激。
尝试添加用户“[email protected]”时,来自Pidgin客户端的XMPP控制台输出(使用“[email protected]”):
<iq type='result' to='example.com' id='2188721256'/> <iq type='set' id='purplec8d28432'> <query xmlns='jabber:iq:roster'> <item jid='[email protected]' name=''> <group>Buddies</group> </item> </query> </iq> <presence to='[email protected]' type='subscribe'/> <iq from='[email protected]' to='[email protected]/test' id='push524344776' type='set'> <query xmlns='jabber:iq:roster'> <item subscription='none' jid='[email protected]'> <group>Buddies</group> </item> </query> </iq> <iq type='result' id='push524344776'/> <iq from='[email protected]' to='[email protected]/test' id='purplec8d28432' type='result'/> <iq from='[email protected]' to='[email protected]/test' id='push1181680121' type='set'> <query xmlns='jabber:iq:roster'> <item ask='subscribe' subscription='none' jid='[email protected]'> <group>Buddies</group> </item> </query> </iq> <iq type='result' id='push1181680121'/> <presence from='[email protected]' to='[email protected]/test' type='error'> <error code='404' type='cancel'> <remote-server-not-found xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/> </error> </presence>
解决。 问题是gtalk的内部DNS。
原来,前任在6年前为该域名开放了一个(免费的)Google Apps帐户,5年前停止使用该帐户,从未告诉任何人,也可能自己忘记了这个帐户。
这意味着,当[email protected]尝试与[email protected]聊天时,内部logging显示@ example.com使用的是gtalk服务,而不是我设置的ejabberd服务。 那么就没有回应,没有授权。
这个问题最让人恼火的是,我能find的所有NSlogging都显示我已经正确设置了这些东西,包括dig srv _xmpp-server._tcp.example.com。 @ 8.8.8.8
无论如何,一旦我发现帐户,我拒绝了gtalk服务,现在一切正常。