A DNS RR for specifying the location of services (DNS SRV) (RFC2052)
Original Publication Date: 1996-Oct-01
Included in the Prior Art Database: 2000-Sep-13
Internet Society Requests For Comment (RFCs)
A. Gulbrandsen: AUTHOR [+2]
This document describes a DNS RR which specifies the location of the server(s) for a specific protocol and domain (like a more general form of MX).
Network Working Group A. Gulbrandsen
Request for Comments: 2052 Troll Technologies
Updates: 1035, 1183 P. Vixie
Category: Experimental Vixie Enterprises
A DNS RR for specifying the location of services (DNS SRV)
Status of this Memo
This memo defines an Experimental Protocol for the Internet
community. This memo does not specify an Internet standard of any
kind. Discussion and suggestions for improvement are requested.
Distribution of this memo is unlimited.
This document describes a DNS RR which specifies the location of the
server(s) for a specific protocol and domain (like a more general
form of MX).
Overview and rationale
Currently, one must either know the exact address of a server to
contact it, or broadcast a question. This has led to, for example,
ftp.whatever.com aliases, the SMTP-specific MX RR, and using MAC-
level broadcasts to locate servers.
The SRV RR allows administrators to use several servers for a single
domain, to move services from host to host with little fuss, and to
designate some hosts as primary servers for a service and others as
Clients ask for a specific service/protocol for a specific domain
(the word domain is used here in the strict RFC 1034 sense), and get
back the names of any available servers.
When a SRV-cognizant web-browser wants to retrieve
it does a lookup of
and retrieves the document from one of the servers in the reply. The
example zone file near the end of the memo contains answering RRs for
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
(There is an example near the end of this document.)
The symbolic name of the desired service, as defined in Assigned
Numbers or locally.
Some widely used services, notably POP, don't have a single
universal name. If Assigned Numbers names the service
indicated, that name is the only name which is legal for SRV
lookups. Only locally defined services may be named locally.
The Service is case insensitive.
TCP and UDP are at present the most useful values
for this field, though any name defined by Assigned Numbers or
locally may be u...