我在寻找一种方式来检查服务器的支助。协议,即。-服务器上运行这一领域。

也许特别DNS检查或类似的东西吗?

有帮助吗?

解决方案

大多数服务器。应该支持至少一个这些域名服务器记录:

  • _xmpp-服务器。_tcp.example.com
  • _xmpp-客户。_tcp.example.com

一些服务器可能没有这些记录的发表,但是大多数的这些会不会想去跟外面的世界。作为一个例子,可以使用"挖掘"的命令行检查的一个领域,是这样的:

% dig +short -t SRV _xmpp-server._tcp.gmail.com.
20 0 5269 xmpp-server2.l.google.com.
20 0 5269 xmpp-server3.l.google.com.
20 0 5269 xmpp-server4.l.google.com.
5 0 5269 xmpp-server.l.google.com.
20 0 5269 xmpp-server1.l.google.com.

"+短"摆脱了很多DNS的详细信息,"-t SRV说:"我们希望SRV记录,点结束时说,忽略你的地域名的设置。

(添加在响应@user188719) 如果你不找到一个服务器记录,你可以尝试使用原来的域名和假设口5222客户连接或5269用于服务器的连接。

一旦你们的主机名称和口号连接到的,你可以使用 telnet hostname port 看是否有一个过程中听。然而,要真正检测如果它是一个服务器。在这主机/口,发送的开始。流。 ncnetcat 提供一个方便的机制。例如服务器检查:

% echo "<stream:stream to='gmail.com' version='1.0' xmlns='jabber:server' xmlns:stream='http://etherx.jabber.org/streams' xmlns:db='jabber:server:dialback'>" | nc xmpp-server.l.google.com 5269
<stream:stream id="0A44AFB86521393A" xmlns:stream="http://etherx.jabber.org/streams" xmlns="jabber:server" xmlns:db="jabber:server:dialback">

其他提示

继乔的解释,我个人支票的SRV记录和回落到一个快速(短期超时)端口连接检查5269缓存结果。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top