Changes

Jump to navigation Jump to search
2,513 bytes added ,  16:01, 31 August 2011
no edit summary
Line 1: Line 1: −
A Service record (SRV record) is a specification of data in the Domain Name System (DNS) defining the location, i.e. the hostname and port number, of servers for specified services. It is defined in [http://tools.ietf.org/html/rfc2782 RFC 2782].
+
A Service record (SRV record) is a specification of data in the Domain Name System (DNS) defining the location (i.e. the hostname and port number) of servers for specified services. It is defined in [http://tools.ietf.org/html/rfc2782 RFC 2782].
   −
XMPP uses 5222 (C2S) and 5269 (S2S) ports in TCP ([http://xmpp.org/rfcs/rfc6120.html RFC 6020]) and STUN uses 3478 port in TCP/UDP.
+
== Ports ==
 +
* XMPP uses 5222 ('''C2S''') and 5269 ('''S2S''') ports in TCP only ([http://xmpp.org/rfcs/rfc6120.html RFC 6020]).
 +
* STUN uses 3478 port in TCP/UDP and STUNS (STUN over TLS) uses 5349 port in TCP only ([http://tools.ietf.org/html/rfc5389 RFC 5389]).
 +
* TURN uses 3478 port in TCP/UDP and TURNS (TURN over TLS) uses 5349 port in TCP only ([http://tools.ietf.org/html/rfc5766 RFC 5766]), ([http://tools.ietf.org/html/rfc5928 RFC 5928]).
    
== Record format ==
 
== Record format ==
Line 93: Line 96:  
  $ dig SRV _stun._udp.example.net
 
  $ dig SRV _stun._udp.example.net
 
  $ dig SRV _stuns._tcp.example.net
 
  $ dig SRV _stuns._tcp.example.net
 +
 +
== TURN SRV records ==
 +
_turn._tcp.example.net. TTL IN SRV priority weight port target
 +
_turn._udp.example.net. TTL IN SRV priority weight port target
 +
 +
=== Example 1 ===
 +
_turn._tcp.example.net. 86400 IN SRV 5 0 3478 example.net.
 +
_turn._udp.example.net. 86400 IN SRV 5 0 3478 example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 5 0 5349 example.net.
 +
 +
The TURN domain is example.net and the server is example.net.
 +
 +
=== Example 2 ===
 +
_turn._tcp.example.net. 86400 IN SRV 5 0 3478 server.example.net.
 +
_turn._udp.example.net. 86400 IN SRV 5 0 3478 server.example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 5 0 5349 server.example.net.
 +
 +
The TURN domain is example.net and the server is server.example.net.
 +
 +
=== Example 3 ===
 +
_turn._tcp.example.net. 86400 IN SRV 5 50 3478 server1.example.net.
 +
_turn._tcp.example.net. 86400 IN SRV 10 30 3478 server2.example.net.
 +
_turn._tcp.example.net. 86400 IN SRV 10 10 3478 server3.example.net.
 +
_turn._tcp.example.net. 86400 IN SRV 10 10 3478 server4.example.net.
 +
_turn._tcp.example.net. 86400 IN SRV 15 0 3478 backup.example.net.
 +
_turn._udp.example.net. 86400 IN SRV 5 50 3478 server1.example.net.
 +
_turn._udp.example.net. 86400 IN SRV 10 30 3478 server2.example.net.
 +
_turn._udp.example.net. 86400 IN SRV 10 10 3478 server3.example.net.
 +
_turn._udp.example.net. 86400 IN SRV 10 10 3478 server4.example.net.
 +
_turn._udp.example.net. 86400 IN SRV 15 0 3478 backup.example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 5 50 5349 server1.example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 10 30 5349 server2.example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 10 10 5349 server3.example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 10 10 5349 server4.example.net.
 +
_turns._tcp.example.net. 86400 IN SRV 15 0 5349 backup.example.net.
 +
 +
The XMPP domain is example.net and the principal server is server1.example.net which used 50% after server2.example.net 30%, server3.example.net 10%, server4.example.net 10% too, if server1 is down, server2, server3 and server4 will work, if servers 1/2/3/4 are down, backup will work.
 +
 +
=== Retrieving turn SRV records ===
 +
$ dig SRV _turn._tcp.example.net
 +
$ dig SRV _turn._udp.example.net
 +
$ dig SRV _turns._tcp.example.net
    
== External links ==
 
== External links ==
 
* [http://tools.ietf.org/html/rfc2782 RFC 2782: A DNS RR for specifying the location of services (DNS SRV)]
 
* [http://tools.ietf.org/html/rfc2782 RFC 2782: A DNS RR for specifying the location of services (DNS SRV)]
 
* [http://xmpp.org/rfcs/rfc6120.html RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core]
 
* [http://xmpp.org/rfcs/rfc6120.html RFC 6120: Extensible Messaging and Presence Protocol (XMPP): Core]
190

edits

Navigation menu