rafaeljusto / dnsdisco

DNS service discovery library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Support for RFC 6763

rafaeljusto opened this issue · comments

This RFC isn't the scope of this library, reading section 4:

Traditional DNS SRV records [RFC2782] are useful for locating
instances of a particular type of service when all the instances are
effectively indistinguishable and provide the same service to the
client.

For example, SRV records with the (hypothetical) name
"_http._tcp.example.com." would allow a client to discover servers
implementing the "_http._tcp" service (i.e., web servers) for the
"example.com." domain. The unstated assumption is that all these
servers offer an identical set of web pages, and it doesn't matter to
the client which of the servers it uses, as long as it selects one at
random according to the weight and priority rules laid out in the DNS
SRV specification [RFC2782].

Instances of other kinds of service are less easily interchangeable.
If a word processing application were to look up the (hypothetical)
SRV record "_ipp._tcp.example.com." to find the list of Internet
Printing Protocol (IPP) [RFC2910] printers at Example Co., then
picking one at random and printing on it would probably not be what
the user wanted.

The remainder of this section describes how SRV records may be used
in a slightly different way, to allow a user to discover the names of
all available instances of a given type of service, and then select,
from that list, the particular instance they desire.

For the load balancer purposes this library assumes that all SRV records from the response offers the same kind of service. The idea is not work with printers or devices in the local network.