我的xmpp应用程序如何与Google应用程序用户联合,而不让他们创建SRV记录?

我的xmpp应用程序如何与Google应用程序用户联合,而不让他们创建SRV记录?,xmpp,google-apps,Xmpp,Google Apps,我有一个应用程序,它使用Prosody和XMPP与Google Talk用户进行通信。我希望该应用程序能够与谷歌应用程序用户进行通信,但根据本文档: 让Google Apps用户与@gtalk.com之外的任何xmpp客户端对话需要创建SRV记录 我的问题是:我的应用程序如何与谷歌应用程序用户对话,而不要求他们为自己的域创建DNS记录?(这是高度技术性的,没有人这样做。) 有没有办法欺骗我的服务器与Google的XMPP服务器对话,而不是寻找一个不存在的XMPP端点 这可能需要创造性的解决方案

我有一个应用程序,它使用Prosody和XMPP与Google Talk用户进行通信。我希望该应用程序能够与谷歌应用程序用户进行通信,但根据本文档:

让Google Apps用户与@gtalk.com之外的任何xmpp客户端对话需要创建SRV记录

我的问题是:我的应用程序如何与谷歌应用程序用户对话,而不要求他们为自己的域创建DNS记录?(这是高度技术性的,没有人这样做。)

有没有办法欺骗我的服务器与Google的XMPP服务器对话,而不是寻找一个不存在的XMPP端点


这可能需要创造性的解决方案。。主机文件、防火墙、特殊DNS设置。。。任何东西是否可能???

将您的XMPP服务器配置为与本地DNS服务器对话,该服务器提供您想要的任何SRV记录。我建议使用如下配置:

# Never forward plain names (without a dot or domain part)
domain-needed
# Never forward addresses in the non-routed address spaces.
bogus-priv

# A SRV record sending XMPP for the example.com domain to
# xmpp-server.l.google.com port 5269

srv-host=_xmpp-server._tcp.example.com,xmpp-server.l.google.com,5269,5
srv-host=_xmpp-server._tcp.example.com,xmpp-server1.l.google.com,5269,20
srv-host=_xmpp-server._tcp.example.com,xmpp-server2.l.google.com,5269,20
srv-host=_xmpp-server._tcp.example.com,xmpp-server3.l.google.com,5269,20
srv-host=_xmpp-server._tcp.example.com,xmpp-server4.l.google.com,5269,20

即使你这样做了,谷歌在对外交流之前也会检查SRV。你在向哪个方向沟通?我以为你有谷歌应用程序的域名XMPP域名,你想沟通,从一个著名的服务。显然,您必须为您的知名服务公开发布SRV域。截至2011年1月,我的测试表明谷歌确实在外部检查SRV记录,或者至少设置/欺骗SRV记录以向其XMPP服务器发送流量不会导致双向通信。@Joe Hildebrand,我的XMPP服务器在谷歌的外部。这让我可以创建很多jid,而不必为每个jid创建完整的Google帐户。(这些代理被设计成允许多个谷歌应用程序用户在一个组中相互对话。)