SRV
Click on the red underlined text to get to the source
...
The SRV RR allows administrators to use several servers for a single
domain, to move services ...
...
In general, it is expected that SRV records will be used by clients
for applications where the relevant protocol specification ...
... protocol specification indicates
that clients should use the SRV record. Such specification MUST
define the symbolic name to be used in the Service field of the SRV
record ...
... SRV record. Such specification MUST
define the symbolic name to be used in the Service field of the SRV
record as described below. It also MUST include security
considerations. Service SRV records ...
... SRV
record as described below. It also MUST include security
considerations. Service SRV records SHOULD NOT be used in the absence
of such specification.
...
... ARM]. The example zone file near the end of this
memo contains answering RRs for an SRV query.
...
... LDAP examples used in this document should not be considered
a definitive statement on the recommended way for LDAP to use SRV
records. As described in the earlier applicability section, consult
the appropriate LDAP documents for the recommended procedures.
...
... The format of the SRV RR ...
...
Here is the format of the SRV RR, whose DNS type code is 33:
...
...
_Service._Proto.Name TTL Class SRV Priority Weight Port Target
...
... universal name. If Assigned Numbers names the service
indicated, that name is the only name which is legal for SRV
lookups. The Service ...
... The domain this RR refers to. The SRV RR is unique in that the
name one searches for is not this name; the example near the end
shows this clearly.
...
... In the absence of a protocol whose specification calls for the
use of other weighting information, a client arranges the SRV
RRs of the same Priority ...
... Priority in the order in which target hosts,
specified by the SRV RRs, will be contacted. The following
algorithm ...
... RRs, will be contacted. The following
algorithm SHOULD be used to order the SRV RRs of the same
priority ...
...
To select a target to be contacted next, arrange all SRV RRs
(that have not been ordered yet) in any order, except that all
...
... random number selected. The target host specified in the
selected SRV RR is the next one to be contacted by the client.
Remove ...
... RRs and
apply the described algorithm to the unordered SRV RRs to select
the next target host ...
... the next target host. Continue the ordering process until there
are no unordered SRV RRs. This process is repeated for each
Priority ...
... update their client applications when the first
server publishes a SRV RR is futile (even if desirable). Therefore
SRV would have to coexist with address ...
... server publishes a SRV RR is futile (even if desirable). Therefore
SRV would have to coexist with address record lookups for existing
...
... the same DNS node as the SRV RR, listing reasonable (if perhaps
suboptimal) fallback hosts for Telnet ...
... Designers of future protocols for which "secondary servers" is
not useful (or meaningful) may choose to not use SRV's support
for secondary servers. Clients for such protocols may use or
...
... for secondary servers. Clients for such protocols may use or
ignore SRV RRs with Priority higher than the RR ...
... overhead plus the name
of the service ("_ldap._tcp.example.com" for instance); each SRV RR
adds 20 bytes plus the name of the target host; each NS ...
... finally each A RR in the additional data section is 20 bytes or so,
and there are A's for each SRV and NS RR mentioned in the answer.
...
... bandwidth estimation, and
similar services. Use of the SRV record with such facilities, and in
particular the interpretation of the Weight field when these
facilities are used, is for further study. Weight is only intended
...
... particular the interpretation of the Weight field when these
facilities are used, is for further study. Weight is only intended
for static, not dynamic, server selection. Using SRV weight for
dynamic server selection would require assigning unreasonably short
TTLs ...
... dynamic server selection would require assigning unreasonably short
TTLs to the SRV RRs, which would limit the usefulness of the DNS
...
... network load and
decreasing overall reliability. Server selection via SRV is only
intended to express static information such as "this server has a
faster CPU ...
...
A SRV-cognizant client SHOULD use this procedure to locate a list of
servers and connect to the preferred one:
...
...
If the reply is NOERROR, ANCOUNT>0 and there is at least one
SRV RR which specifies the requested Service and Protocol in
the reply:
...
... Select an element as specified above, in the
description of Weight in "The format of the SRV
RR" Section, and move it to the tail of the new
list
...
... Target or
use any such records found in the Additional Data
section of the earlier SRV response.
for each address ...
... If the Additional Data section doesn't contain address records
for all the SRV RR's and the client may want to connect to the
target host ...
... This example uses fictional service "foobar" as an aid in
understanding SRV records. If ever service "foobar" is implemented,
it is not intended that it will necessarily use SRV records ...
... SRV records. If ever service "foobar" is implemented,
it is not intended that it will necessarily use SRV records. This is
(part of) the zone file for example.com, a still-unused domain:
...
... logins go to
; new-fast-box.
_foobar._tcp SRV 0 1 9 old-slow-box.example.com.
SRV 0 3 9 new-fast-box.example.com.
...
... _foobar._tcp SRV 0 1 9 old-slow-box.example.com.
SRV 0 3 9 new-fast-box.example.com.
; if neither old-slow-box or new-fast-box is up, switch to
...
... switch to
; using the sysdmin's box and the server
SRV 1 0 9 sysadmins-box.example.com.
SRV 1 0 9 server.example.com.
...
... SRV 1 0 9 sysadmins-box.example.com.
SRV 1 0 9 server.example.com.
server A 172.30.79.10
old-slow-box A 172.30.79.11
...
... service in the
"example.com." domain needs an SRV lookup of
"_foobar._tcp.example.com." and possibly A lookups ...
... lookups of "new-fast-
box.example.com." and/or the other hosts named. The size of the SRV
reply is approximately 365 bytes:
...
... 20 bytes for the query string, "_foobar._tcp.example.com."
130 bytes for 4 SRV RR's, 20 bytes each plus the lengths of "new-
fast-box", "old-slow-box", "server" and "sysadmins-box" -
"example.com" in the query ...
... for unrelated purposes. Aside from that, changes are only intended
to increase the clarity and completeness of the document. This
document especially clarifies the use of the Weight field of the SRV
records.
...
