I'm looking for a way to check if a server is support xmpp protocol, i.e. xmpp-server is running on this domain.
Maybe special DNS check or something like that?
|
|
|
The main default port for non-SSL jabber is 5222. You could spit some xml at it using telnet and see if you get an XML response:
This can of course be scripted for multiple servers and multiple ports, probably easier to script with nc (netcat). |
|||
|
|
|
If an XMPP server is configured to work with other XMPP servers, it is possible the domain would have an SRV record in DNS. For example:
This is by no means a definitive way to find XMPP servers, since stand-alone sites most likely do not have this data in DNS. It is, however, a nicer way to find a jabber server, since the data is published and does not require any port probing. It is also defined in RFC 3920 (the XMPP protocol definition). |
|||
|
|
|
There's no definitive way of checking. Nmap would give you some indication, but there would be some ethical, and possibly legal issue with running it against other people's servers. |
|||
|
|
|
If it's your network, you could try running something like Spiceworks across the subnet to look for systems running an XMPP server. |
|||
|
|
|
If this is a federation server (no, not Startrek), then you can check for the SRV DNS entries as explained here. |
|||
|
|