Network Working Group | M. Hamilton | |
Request for Comments: 2219 | Loughborough University | |
BCP: 17 | R. Wright | |
Category: Best Current Practice | Lawrence Berkeley Laboratory | |
October 1997 |
Although this approach has been almost universally adopted, there is no standards document or similar specification for these commonly used names. This document seeks to rectify this situation by gathering together the extant 'folklore' on naming conventions, and proposes a mechanism for accommodating new protocols.
It is important to note that these naming conventions do not provide
a complete long term solution to the problem of finding a particular network
service for a site. There are efforts in other IETF working groups
to address the long term solution to this problem, such as the Server Location
Resource Records (DNS SRV) [RFC 2052] work.
Ideally, the DNS or some complementary directory service would provide a means for programs to determine automatically the network services which are offered at a particular Internet domain, the protocols which are used to deliver them, and other technical information. Unfortunately, although much work has been done to develop said directory service technologies and to define new types of DNS resource record to provide this type of information, there is no widely agreed upon or widely deployed solution to the problem - except in a small number of cases.
The first case is where the DNS already provides a lookup capability for the type of information being sought after. For example: Mail Exchanger (MX) records specify how mail to a particular domain should be routed [RFC 974], the Start of Authority (SOA) records make it possible to determine who is responsible for a given domain, and Name Server (NS) records indicate which hosts provide DNS name service for a given domain.
The second case is where the DNS does not provide an appropriate lookup capability, but there is some widely accepted convention for finding this information. Some use has been made of Text (TXT) [RFC 1035] records in this scenario, but in the vast majority of cases a Canonical Name (CNAME) or Address (A) record pointer is used to indicate the host or hosts which provide the service. This document proposes a slight formalization of this well-known alias approach.
It should be noted that the DNS provides a Well Known Services (WKS)
[RFC 1035] lookup capability, which makes it
possible to determine the network services offered at a given domain name.
In practice this is not widely used, perhaps because of the absence of
a suitable programming interface. Use of WKS for mail routing was
deprecated in the Host Requirements specification [RFC
1123] in favour of the MX record, and in the long term it is conceivable
that SRV records will supersede both WKS and MX.
Alias | Service |
archie | archie [ARCHIE] |
finger | Finger [RFC 1288] |
ftp | File Transfer Protocol [RFC 959] |
gopher | Internet Gopher Protocol [RFC 1436] |
ldap | Lightweight Directory Access Protocol [RFC 1777] |
SMTP mail [RFC 821] | |
news | Usenet News via NNTP [RFC 977] |
ntp | Network Time Protocol [RFC 1305] |
ph | CCSO nameserver [PH] |
pop | Post Office Protocol [RFC 1939] |
rwhois | Referral WHOIS [RFC 1714] |
wais | Wide Area Information Server [RFC 1625] |
whois | NICNAME/WHOIS [RFC 954] |
www | World-Wide Web HTTP [RFC 1945] |
It should be understood by implementors that the existence of a DNS entry such as
www.hivnet.fr
does not constitute a registration of a World-Wide Web service. There is no requirement that the domain name resolve to an IP address or addresses. There is no requirement that a host be listening for HTTP connections, or if it is, that the HTTP server be running on port 80. Finally, even if all of these things are true, there can be no guarantee that the World-Wide Web server will be prepared to honor requests from arbitrary clients.
Having said this, the aliases do provide useful "hints" about the services offered. We propose that they be taken in this spirit.
The conventions described in this document are, essentially, only useful
when the organization's domain name can be determined - e.g. from some
external database. A number of groups, including the IETF, have been
working on ways of finding domain names given a set of information such
as organization name, location, and business type. It is hoped that one
or more of these will eventually make it possible to augment the basic
lookup service which the DNS provides with a more generalized search and
retrieval capability.
There are two conventional approaches to creating these DNS entries. One is to add a single CNAME record to your DNS server's configuration, e.g.
ph.hivnet.fr. IN CNAME baby.hivnet.fr.
Note that in this scenario no information about ph.hivnet.fr should exist in the DNS other than the CNAME record. For example, ph.hivnet.fr could not contain a MX record.
An alternative approach would be to create an A record for each of the IP addresses associated with ph.hivnet.fr, e.g.
ph.hivnet.fr. IN A 194.167.157.2
It isn't a simple matter of recommending CNAMEs over A records. Each site has it's own set of requirements that may make one approach better than the other. RFC 1912 [RFC 1912] discusses some of the configuration issues involved in using CNAMEs.
Recent DNS server implementations provide a "round-robin" feature which causes the host's IP addresses to be returned in a different order each time the address is looked up.
Network clients are starting to appear which, when they encounter a
host with multiple addresses, use heuristics to determine the address to
contact - e.g. picking the one which has the shortest round-trip- time.
Thus, if a server is mirrored (replicated) at a number of locations, it
may be desirable to list the IP addresses of the mirror servers as A records
of the primary server. This is only likely to be appropriate if the
mirror servers are exact copies of the original server.
Sites with existing CCSO servers using some of these aliases may find it desirable to use all three. This increases the likelihood of the service being found.
As noted earlier, implementations should be resilient in the event that
the name does not point to the expected service.
This document has noted some exceptions which are either inherently
unsuitable for this treatment, or already have a substantial installed
base using alternative aliases.
This work was supported by UK Electronic Libraries Programme (eLib)
grant 12/39/01, the European Commission's Telematics for Research Programme
grant RE 1004, and U. S. Department of Energy Contract Number DE-AC03-76SF00098.
[ARCHIE] | A. Emtage, P. Deutsch. "archie - An Electronic Directory Service for
the Internet", Winter Usenix Conference Proceedings 1992. Pages 93-110.
|
[PH] | R. Hedberg, S. Dorner, P. Pomes. "The CCSO Nameserver (Ph) Architecture",
Work in Progress.
|
[RFC 768] | Postel, J., "User Datagram Protocol", STD 6, RFC 768, August 1980.
|
[RFC 793] | [Postel, J., "Transmission Control Protocol", STD 7, RFC 793, September
1981.
|
[RFC 821] | Postel, J., "Simple Mail Transfer Protocol", STD 10, RFC 821, August
1982.
|
[RFC 954] | Harrenstien, K., Stahl, M., and E. Feinler, "NICNAME/WHOIS",
RFC 954, October 1985.
|
[RFC 959] | Postel, J., and J.K. Reynolds, "File Transfer Protocol", STD 9, RFC
959, October 1985.
|
[RFC 974] | Partridge, C., "Mail routing and the domain system", STD 14, RFC 974,
January 1986.
|
[RFC 977] | Kantor, B., and P. Lapsley, "Network News Transfer Protocol", RFC 977,
February 1986.
|
[RFC 1034] | Mockapetris, P., "Domain Names - Concepts and Facilities", STD 13,
RFC 1034, November 1987.
|
[RFC 1035] | Mockapetris, P., "Domain Names - Implementation and Specification",
STD 13, RFC 1035, November 1987.
|
[RFC 1288] | Zimmerman, D., "The Finger User Information Protocol", RFC 1288, December
1992.
|
[RFC 1305] | Mills, D., "Network Time Protocol (Version 3) Specification, Implementation",
RFC 1305, March 1992.
|
[RFC 1436] | Anklesaria, F., McCahill, M., Lindner, P., Johnson, D., Torrey, D.,
and B. Albert, "The Internet Gopher Protocol (a distributed document search
and retrieval protocol)", RFC 1436, March 1993.
|
[RFC 1590] | Postel, J., "Media Type Registration Procedure", RFC 1590, March 1994.
|
[RFC 1625] | St. Pierre, M., Fullton, J., Gamiel, K., Goldman, J., Kahle,
B., Kunze, J., Morris, H., and F. Schiettecatte, "WAIS over Z39.50-1988",
RFC 1625, June 1994.
|
[RFC 1700] | Reynolds, J.K., and J. Postel, "ASSIGNED NUMBERS",
STD 2, RFC 1700, October 1994.
|
[RFC 1714] | Williamson, S., and M. Kosters, "Referral Whois Protocol (RWhois)",
RFC 1714, November 1994.
|
[RFC 1777] | Yeong, W., Howes, T., and S. Kille, "Lightweight Directory Access Protocol",
RFC 1777, March 1995.
|
[RFC 1912] | Barr, D., "Common DNS Operational and Configuration Errors", RFC 1912,
Feburary 1996.
|
[RFC 1939] | Myers, J., and M. Rose, "Post Office Protocol - Version 3", STD 53,
RFC 1939, May 1996.
|
[RFC 1945] | Berners-Lee, T., Fielding, R., and H. Nielsen, "Hypertext Transfer
Protocol -- HTTP/1.0", RFC 1945, May 1996.
|
[RFC 2052] | Gulbrandsen, A., and P. Vixie, "A DNS RR for specifying the location
of services (DNS SRV)", RFC 2052, October 1996.
|
[RFC 2065] | Eastlake, D., and C. Kaufman, "Domain Name System Security Extensions",
RFC 2065, January 1997.
|
EMail: m.t.hamilton@lut.ac.uk
Russ Wright
Information & Computing Sciences Division
Lawrence Berkeley National Laboratory
1 Cyclotron Road, Berkeley
Mail-Stop: 50A-3111
CA 94720, USA
EMail: wright@lbl.gov