Hostnames Server
A simple text query service on the SRI-NIC machine that handed out the internet host name and address table.
Harrenstien, K., White, V., and E.J. Feinler, "Hostnames Server", RFC 811, DOI 10.17487/RFC0811, March 1982, <https://www.rfc-editor.org/info/rfc811>.
@misc{rfc811,
series = {Request for Comments},
number = 811,
howpublished = {RFC 811},
publisher = {RFC Editor},
doi = {10.17487/RFC0811},
url = {https://www.rfc-editor.org/info/rfc811},
author = {K. Harrenstien and V. White and E.J. Feinler},
title = {{Hostnames Server}},
pagetotal = 4,
year = 1982,
month = mar,
} RFC text
Contents
Ken Harrenstien RFC-811
Vic White 1 March 1982
Elizabeth Feinler
Network Information Center
SRI International
HOSTNAMES SERVER
INTRODUCTION
The NIC Internet Hostnames Server is an NCP/TCP-based host
information program and protocol running on the SRI-NIC
machine. It is one of a series of ARPANET/Internet name
services maintained by the Network Information Center (NIC) at
SRI International on behalf of the Defense Communications
Agency (DCA). The function of this particular server is to
deliver machine-readable name/address information describing
networks, gateways, hosts, and eventually domains, within the
internet environment. As currently implemented, the server
provides the information outlined in the DoD Internet Host
Table Specification (RFC 810).
QUERY/RESPONSE FORMAT
The name server accepts simple text query requests of the form
<command key> <argument(s)> [<options>]
where square brackets ("[]") indicate an optional field. The
command key is a keyword indicating the nature of the request.
The defined keys are explained below.
The response, on the other hand, is of the form
<response key> : <rest of response>
where <response key> is a keyword indicating the nature of the
response, and the rest of the response is interpreted in the
context of the key.
COMMAND/RESPONSE KEYS
The currently defined keywords are:
Command Keys:
HNAME (find entry with given name)
HADDR (find entry with given address)
ALL (return entire host table)
1 March 1982
RFC 811 Hostnames Server
Response Keys:
ERR (entry not found, nature of error follows)
NET (entry found, rest of entry follows)
GATEWAY (entry found, rest of entry follows)
HOST (entry found, rest of entry follows)
BEGIN (followed by multiple entries)
END (done with BEGIN block of entries)
More keywords will be added as new needs are recognized. A
more detailed description of the allowed requests/responses
will follow.
PROTOCOL
To access this server from a program, connect to service host
(SRI-NIC)
TCP: port 101 decimal
NCP: socket 101 decimal for ICP
send the information query, and await the response.
Note: Care should be taken to interpret the nature of the
reply (e.g, single record or multiple record), so that no
confusion about the state of the reply results. An "ALL"
request will likely return several hundred or more records of
all types (see RFC 810), whereas "HNAME" or "HADDR" will
usually return one HOST record, or "BEGIN:", list of host
records, "END:", if there is more than one match.
QUERY/RESPONSE EXAMPLES
1. HNAME Query - Given a name, find the entry or entries that
match
the name. For example:
HNAME SRI-NIC <CRLF> ;where <CRLF> is a carriage
return/
linefeed, and 'SRI-NIC' is a
host name
The likely response is:
HOST : 10.0.0.73 : SRI-NIC,NIC : FOONLY-F3 : TENEX : NCP :
A response may stretch across more than one line.
Continuation lines always begin with at least one space.
For example:
HOST : 10.0.0.73 : SRI-NIC,NIC : FOONLY-F3 : TENEX : NCP :
1 March 1982
Hostnames Server RFC 811
2. HADDR Query - Given an internet address (as specified in
RFC
796) find the entry or entries that match that address.
For example:
HADDR 10.0.0.73 <CRLF> ;where <CRLF> is a carriage
return/
linefeed, and '10.0.0.73' is a
host
address
The likely response is the same as for the HNAME request:
HOST : 10.0.0.73 : SRI-NIC,NIC : FOONLY-F3 : TENEX : NCP :
3. ALL Query - Deliver the entire internet host table in a
machine-readable form. For example:
ALL <CRLF> ;where <CRLF> is a carriage return/linefeed
The likely response is the keyword 'BEGIN' followed by a
colon ':', followed by the entire internet host table in
the format specified in RFC 810, followed by 'END:'. For
example:
BEGIN:
NET : 10.0.0.0 : ARPANET :
NET : 18.0.0.0 : LCSNET :
GATEWAY : 10.0.0.77, 18.8.0.4 : MIT-GW :: MOS : IP/GW :
HOST : 10.0.0.73 : SRI-NIC,NIC : TENEX : FOONLY-F3
NCP/TELNET, NCP/FTP, TCP :
HOST : 10.2.0.11 : SU-TIP, FELT-TIP ::
END:
ERROR HANDLING
1. ERR Reply - may occur on any query, and should be permitted
in
any access program using the name server. Errors are of
the form
ERR : <code> : <string> :
as in
ERR : NAMNFD : Name not found :
1 March 1982
RFC 811 Hostnames Server
The error code is a unique descriptor, limited to 8 characters
in length for any given error. It may be used by the access
program to identify the error and, in some cases, to handle it
automatically. The string is an accompanying message for a
given error for that case where the access program simply logs
the error message. Current codes and their associated
interpretations are
NAMNFD -- Name not found; name not in table
ADRNFD -- Address not found; address not in
table
ILLCOM -- Illegal command; command key not
recognized
TMPSYS -- Temporary system failure, try again
later
REMARKS
The host name server described above runs over a single global
internet host name/address data base. This data base is an
extension of the old ARPANET Hosts.txt file, and is being
maintained by the NIC to provide continuity during the
transition and expansion to the internet environment. We view
the central administration of a global host name data base,
along with this simple name server, as an interim solution on
the way to a decentralized, distributed name/address
translation service. The NIC welcomes your comments and
suggestions for such an expanded service. Send comments to
NIC@SRI-NIC.
REFERENCES
1. Feinler, E., Harrenstien, K., Su, Z. and White, V.
Official
DoD Internet Host Table Specification, RFC 810, Network
Information Center, SRI International, March 1, 1982.
2. Postel, J. Address Mappings, RFC 796, Information Sciences
Inst., Univ. of Southern Calif., Marina Del Rey, Sept.
1981.
3. Pickens, J., Feinler, E., and Mathis, J. The NIC Name
Server,
A Datagram-based Information Utility, Network Information
Center, SRI International, July 1979.
AI ELI5
On this page
§1The NIC Hostnames Server
The Hostnames Server is a program and protocol running on the SRI-NIC machine, one of several name services kept by the Network Information Center at SRI International. It delivers name and address information about networks, gateways, hosts and eventually domains, as described in the DoD Internet Host Table Specification (RFC 810).
It is a lookup desk run by one office. You ask it a name and it tells you the address.
§2Queries and Responses
A query is a line of text of the form <command key> <argument(s)> [<options>]. The command keys are HNAME (find an entry by name), HADDR (find an entry by address) and ALL (return the whole table). A response has the form <response key> : <rest of response>.
The response keys are ERR, NET, GATEWAY, HOST, BEGIN and END. An ALL request returns BEGIN:, the table, then END:. A response can span several lines, and continuation lines begin with at least one space.
You write a short question on a card. The answer comes back on a card that starts with a word saying what kind of answer it is.
§3Using the Server
A program connects to the service host SRI-NIC at TCP port 101 decimal (or NCP socket 101 for the initial connection), sends the query and waits for the reply. Clients should take care to tell a single-record reply from a multiple-record one. HNAME or HADDR usually return one HOST record, or a BEGIN: list and END: if there is more than one match.
The RFC's example is HNAME SRI-NIC, answered by a HOST line giving address 10.0.0.73. An ALL request will likely return several hundred or more records.
You phone the office on its special extension, ask your question, and listen to the answer. If lots of people match, you get a list that starts with BEGIN and ends with END.
§4Errors and Remarks
Any query can get an ERR reply of the form ERR : <code> : <string> :. The code is a descriptor of at most 8 characters that a program can use to react automatically, and the string is a message for logging.
The server runs over one global host name and address database, an extension of the old ARPANET Hosts.txt file. The authors see central administration with this simple server as an interim solution on the way to a decentralized, distributed name and address translation service.
If the office cannot find the name, it sends back a short code and a note saying why, so a program can decide what to do next.
- NAMNFDName not found — The name is not in the table.
- ADRNFDAddress not found — The address is not in the table.
- ILLCOMIllegal command — The command key was not recognized.
- TMPSYSTemporary system failure — Try again later.