Difference between revisions of "SRV Record"
(Added SRV record documentation) |
m (Fix SSL advice, oof) |
||
(One intermediate revision by the same user not shown) | |||
Line 48: | Line 48: | ||
_mumble._tcp.mumble.example.com. 86400 IN SRV 0 5 3050 murmur2.example.net. | _mumble._tcp.mumble.example.com. 86400 IN SRV 0 5 3050 murmur2.example.net. | ||
+ | == SSL Certificates and SRV == | ||
+ | Mumble will connect using the domain specified in the '''name''' value, so if having a signed and valid SSL Certificate is important, make sure it is issued for the '''name''' domain. | ||
== Further Reading == | == Further Reading == |
Latest revision as of 02:41, 11 June 2020
The SRV (Service Record) is a resource record used in DNS, allowing the specification of host and port locations for services on a domain.
SRV Record support was added in Mumble 1.3.0.
SRV Records are evaluated before A, AAAA, or CNAME records.
Contents
Purpose
SRV Records are useful because they allow easy and clear multi-host configurations from the client point of view.
From the perspective of a server host, you no longer need to worry about a mumble-specific subdomain, or providing port configuration details (if they are non-default) to prospective clients – all of that information is gleaned from the SRV record.
SRV Record
SRV Specification
SRV Records are formatted as such:
_service._proto.name TTL class SRV priority weight port target
- service: the symbolic name of the desired service.
- proto: the transport protocol of the desired service; this is usually either TCP or UDP.
- name: the domain name for which this record is valid.
- TTL: standard DNS time to live field.
- class: standard DNS class field.
- priority: the priority of the target host, lower value means more preferred.
- weight: A relative weight for records with the same priority.
- port: the TCP or UDP port on which the service is to be found.
- target: the canonical hostname of the machine providing the service.
Mumble Records
Mumble uses the following values:
- service: mumble
- proto: tcp
Examples
A typical SRV record for mumble might look like this:
# _service._proto.name. TTL CLASS SRV PRIORITY WEIGHT PORT TARGET
_mumble._tcp.example.com. 86400 IN SRV 0 5 64738 mumble.example.com.
Subdomains
You can also supplement an existing subdomain hosted service by adding an SRV record for it.
This will allow you to use arbitrary ports easier, or change/move the subdomain A, AAAA, or CNAME record without requiring clients to reconfigure.
Subdomains might be configured like this:
# _service._proto.name. TTL CLASS SRV PRIORITY WEIGHT PORT TARGET
_mumble._tcp.mumble.example.com. 86400 IN SRV 0 5 64738 mumble.example.com.
_mumble._tcp.mumble.example.com. 86400 IN SRV 0 5 3050 murmur2.example.net.
SSL Certificates and SRV
Mumble will connect using the domain specified in the name value, so if having a signed and valid SSL Certificate is important, make sure it is issued for the name domain.
Further Reading
SRV Records can be used for fail-over, and load balancing, but these are more complicated concepts (and some are hard to apply to Mumble), so they are not explored here.