RFC 810 UNKNOWN DNS · HOST TABLE · NETWORK

DoD Internet host table specification

Specifies the format for a central host table to map network names and addresses.

On rfc-editor.org ↗
PUBLISHED
March 1982
AUTHORS
E.J. Feinler, K. Harrenstien, Z. Su, V. White
STREAM
Legacy
BUILDS ON
RFC 608 — Host names on-line
OBSOLETED BY
RFC 952 — HOSTS.TXT
MAXIMUM NAME LENGTH
24 characters
ADDRESS FORMAT
Four decimal octets separated by periods
ARPANET ADDRESS
Class A network 10.0.0.0
DOCUMENT OBSOLETES
RFC 608
DOI
10.17487/RFC0810

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Elizabeth Feinler                                         RFC 810
Ken Harrenstien                                      1 March 1982
Zaw-Sing Su                              References: RFC 811, 796
Vic White                                      Obsoletes: RFC 608
Network Information Center
SRI International

              DoD INTERNET HOST TABLE SPECIFICATION



INTRODUCTION

    The ARPANET Official Network Host Table, as outlined in RFC 608, no
   longer suits the needs of the DoD community, nor does it follow a
   format suitable for internetting.  This paper specifies a new host
   table format applicable to both ARPANET and Internet needs.

   In addition to host name to host address translation and selected
   protocol information, we have also included network and gateway name
   to address correspondence, and host operating system information.

   This Host Table is utilized by the DoD Host Name Server maintained by
   the ARPANET Network Information Center (NIC) on behalf of the Defense
   Communications Agency (DCA) (RFC 811).  It obsoletes the host table
   described in RFC 608.

LOCATION OF THE STANDARD DoD ONLINE HOST TABLE

   A machine-translatable ASCII text version of the new DoD Host Table
   is online in the file <NETINFO>HOSTS.TXT on the SRI-NIC host.  It can
   be obtained by connecting to host SRI-NIC (10.0.0.73) from your local
   FTP server, logging in as user=ANONYMOUS, password=GUEST, and doing a
   'get' on <NETINFO>HOSTS.TXT.  The same table may also be obtained via
   the NIC Host Name Server.

   NOTE:  See Appendix A. for timeframe for cutover.

ASSUMPTIONS

   1. A "name" (Net, Host, Gateway, or Domain name) is a text string up
   to 24 characters drawn from the alphabet (A-Z), digits (0-9), and the
   minus sign (-) and period (.).  No blank or space characters are
   permitted as part of a name.  No distinction is made between upper
   and lower case.  The first character must be a letter.  The last
   character must not be a minus sign or period.  A host which serves as
   a GATEWAY should have "-GATEWAY" or "-GW" as part of its name.  A
   host which is a TIP or a TAC should have  "-TIP" or "-TAC" as part of
   its host name, if it is an ARPANET or DoD host.

   2. Internet Addresses are 32-bit addresses (RFC 796).  In the host
   table described herein each address is represented by four decimal
   numbers separated by a period.  Each decimal number represents 1
   octet.

                                                Host Table Specification


   3. If the first bit of the first octet of the address is 0 (zero),
   then the next 7 bits of the first octet indicate the network number
   (Class A Address).  If the first two bits are 1,0 (one,zero), then
   the next 14 bits define the net number (Class B Address).  If the
   first 3 bits are 1,1,0 (one,one,zero), then the next 21 bits define
   the net number (Class C Address) (RFC 796).

   This is depicted in the following diagram:

   +--------------+-----------------------------------------------+
   |0|  NET <-7-> |      LOCAL ADDRESS  <-24->                    |
   +--------------+-----------------------------------------------+

   +---+--------------------------+-------------------------------+
   |1 0|       NET  <-14->        |  LOCAL ADDRESS  <-16->        |
   +---+--------------------------+-------------------------------+

   +-----+----------------------------------------+---------------+
   |1 1 0|           NET  <-21->                  | LOCAL ADDRESS |
   +-----+----------------------------------------+---------------+

   4. The LOCAL ADDRESS portion of the internet address identifies a
   host within the network specified by the NET portion of the address.

   5. For the ARPANET (a Class A network), the NET address is 10
   (decimal) and the LOCAL ADDRESS maps as follows: the second octet
   defines the physical host, the third octet defines the logical host,
   and the fourth defines the IMP.

   +-+-------------+---------------+--------------+---------------+
   |0|     10      |    HOST       | LOGICAL HOST |      IMP      |
   +-+-------------+---------------+--------------+---------------+

   (NOTE:  RFC 796 describes the local address mappings for several
   other networks.)

   6.  It is the responsibility of the user using this host table to
   translate it into whatever format is needed for his or her purposes.

   7. Names and Addresses for DoD networks, gateways, and hosts will be
   negotiated and registered with the Network Information Center
   (NIC@SRI-NIC or (415) 859-4775) before being used and before traffic
   is passed by a DoD host.  For an interim period the NIC will attempt
   to keep similar information for non-DoD networks and hosts if this
   information is provided, and as long as it is needed, i.e., until
   intercommunicating network name servers are in place.

EXAMPLE OF NEW HOST TABLE FORMAT

   NET : 10.0.0.0 : ARPANET :

Host Table Specification


   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 : FOONLY-F3 : TENEX :
       NCP/TELNET,NCP/FTP, TCP/TELNET, TCP/FTP :
   HOST: 10.2.0.11 : SU-TIP,FELT-TIP :::

SYNTAX AND CONVENTIONS

   ; (semicolon)      is used to denote the beginning of a comment.
                      Any text on a given line following a ';' is
                      comment, and not part of the host table.

   NET                keyword introducing a network name/address entry

   GATEWAY            keyword introducing a gateway name/address entry

   HOST               keyword introducing a host name/address entry

   : (colon)          is used as a field delimiter

   :: (2 colons)      indicates a null field

   , (comma)          is used as a data element delimiter

   XXX/YYY            indicates protocol information of the type
                      TRANSPORT/SERVICE.

      where TRANSPORT/SERVICE options are specified as

         "FOO/BAR" - both transport and service known
         "FOO"     - transport known; services not known or not
                     running, OR
         "BAR"     - name is known, what it does is not

         NOTE:  See Appendices B and C for specific options and
                acronyms.

   Each host table entry is an ASCII text string comprised of 6 fields,
   where

      Field 1 = KEYWORD indicating whether this entry pertains
                to a NET, GATEWAY, or HOST.  NET entries cannot have
                alternate addresses or nicknames.
      Field 2 = Internet Address of Network, Gateway, or Host
                followed by alternate addresses
      Field 3 = Official Name of Network, Gateway, or Host
                (with optional nicknames)
      Field 4 = Machine Type
      Field 5 = Operating System
      Field 6 = Protocol List

                                                Host Table Specification


   Fields 4, 5 and 6 are optional.

   Fields 3-6, if available, pertain to the first address in Field 2.

   'Blanks' (spaces and tabs) are ignored between data elements or
   fields, but are disallowed within a data element.

   Each entry ends with a colon.

   The host table will be sorted by internet address.

GRAMMATICAL HOST TABLE SPECIFICATION

   A. Parsing grammar

   <entry> ::= <keyword> ":" <addresses> ":" <names> [":" [<cputype>]
                      [":" [<opsys>]  [":" [<protocol list>] ]]] ":"
   <addresses> ::= <address> *["," <address>]
   <address> ::= <octet> "." <octet> "." <octet> "." <octet>
   <octet> ::= <0 to 255 decimal>
   <names> ::= <netname> | <gatename>
              | <official hostname> *["," <nicknames>]
   <netname>  ::= <name>
   <gatename> ::= <name>
   <official hostname> ::= <name>
   <nickname> ::= <name>
   <protocol list> ::= <protocol spec> *["," <protocol spec>]
   <protocol spec> ::= <transport name> "/" <service name> |
                       <raw protocol name>

   B. Lexical grammar

   <entry-field> ::= <entry-text> [<cr><lf> <blank> <entry-field>]
   <blank> ::= <space or tab>
   <keyword> ::= NET | GATEWAY | HOST
   <name> ::= <letter>[*[<letter-or-digit-or-hyphen>]<letter-or-digit>]
   <cputype> ::= PDP-11/70 | DEC-1080 | C/30 | CDC-6400...etc.
   <opsys>   ::= ITS | MULTICS | TOPS20 | UNIX...etc.
   <transport name> ::= TCP | NCP | UDP | IP...etc.
   <service name> ::= TELNET | FTP | SMTP | MTP...etc.
   <raw protocol name> ::= <name>
   <comment> ::= ";" <arbitrary text><cr><lf>

   Notes:

      1. Zero or more 'blanks' between separators " , : " are allowed.
      'Blanks' are spaces and tabs.
      2. Continuation lines are lines that begin with at least one
      blank.  They may be used anywhere 'blanks' are legal to split an
      entry across lines.

Host Table Specification


BIBLIOGRAPHY

   1. Feinler, E. and Kudlick, M.  Host Names Online, RFC 608,
      Network Information Center, SRI International, Jan. 1973.

   2. Postel, J.  Assigned Numbers, RFC 790, Information Sciences
      Inst., Univ. of Southern Calif., Marina Del Rey, Sept. 1981.

   3. Postel, J.  Internet Protocol, RFC 791, Information Sciences
      Inst., Univ. of Southern Calif., Marina Del Rey, Sept. 1981.

   4. Postel, J.  Address Mappings, RFC 796, Information Sciences
      Inst., Univ. of Southern Calif., Marina Del Rey, Sept. 1981.

   5. 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.

                                                Host Table Specification


                      APPENDIX A.  CUTOVER DETAILS


   The cutover date for use of the new host table is 1 May 1982.  The
   table below indicates which files will contain the old or the new
   versions of the host table for what period of time.  After 1 August
   1982, the old format for <NETINFO>HOSTS.TXT (specified in RFC-608)
   will no longer be supported.

   --------------------------------------------------------------------
     May 1982               June-July 1982              August 1982 on
   --------------------------------------------------------------------

   <NETINFO>HOSTS.TXT     <NETINFO>HOSTS.TXT        <NETINFO>HOSTS.TXT
     old version            new version               new version

   <NETINFO>NHOSTS.TXT    <NETINFO>NHOSTS.TXT         old version
     new version (test)     new version               discontinued

   <NETINFO>OHOSTS.TXT    <NETINFO>OHOSTS.TXT
     old version            old version

   --------------------------------------------------------------------

   These periods of overlap should give implementors time to make the
   necessary changes to programs accessing this file.

Host Table Specification


          APPENDIX B.  TRANSPORT/SERVICE OPTIONS AND ACRONYMS


Current TRANSPORT/SERVICE options are:

   IP           TCP/FTP
   IP/GW        TCP/MTP
   NCP          TCP/NNS
   NCP/FTP      TCP/RJE
   NCP/RJE      TCP/SMTP
   NCP/SMTP     TCP/TELNET
   NCP/TELNET   TCP/TFTP
   NCP/NNS      UDP
   NVP
   TCP

   Note: "TCP" implies IP is also implemented

Acronym definitions for the above protocol options are:

   FTP  - File Transfer Protocol
   GW   - Gateway Protocol
   IP   - Internet Protocol
   MTP  - Mail Transfer Protocol
   NCP  - Network Control Protocol
   NNP  - NIC Internet Name Server Protocol
   NVP  - Network Voice Protocol
   RJE  - Remote Job Entry Protocol
   SMTP - Simple Mail Transfer Protocol
   TELNET - TELNET Protocol
   TCP  - Transmission Control Protocol
   TFTP - Trivial File Transfer Protocol
   UDP  - User Datagram Protocol

                                                Host Table Specification


                 APPENDIX C.  OPERATING SYSTEM ACRONYMS

Current operating system acronyms are:

   ASP          KRONOS       RSX11M      VMS
   AUGUST       MCP          RT11        WAITS
   BKY          MOS          SCOPE
   CCP          MPX-RT       SIGNAL
   DOS/360      MULTICS      SINTRAN
   ELF          MVT          TENEX
   EPOS         NOS          TOPS10
   EXEC-8       NOS/BE       TOPS20
   GCOS         OS/MVS       TSS
   GPOS         OS/MVT       UNIX
   ITS          RIG          VM/370
   INTERCOM     RSX11        VM/CMS

AI ELI5

On this page
PROBLEMThe ARPANET and early Internet needed a way to maintain a central list of host names, network names, and gateway addresses, with information about what protocols and services each machine supported. The previous format in RFC 608 was no longer adequate.
MECHANISMThis RFC defines a simple ASCII text format with one entry per line. Each entry specifies whether it is a network, gateway, or host, followed by its address, official name and nicknames, machine type, operating system, and supported protocols.
WHY IT FADEDA machine-readable host table maintained by the DoD Network Information Center (NIC) that could be distributed to all connected systems. This was later replaced by the Domain Name System (DNS) in RFC 952.

§1The DoD Host Table

RFC 810 defines a standard format for a host table used across the ARPANET and early Internet. The host table is a central, machine-readable list of all known hosts, networks, gateways, and their associated addresses and capabilities.

The purpose is to provide name-to-address translation and information about what each machine is, what operating system it runs, and which protocols and services it supports. The table is maintained by the DoD Host Name Server at the SRI Network Information Center (NIC) and distributed to all participating systems. This specification replaces the format in RFC 608.

Think of it like a telephone directory: it lists computers by name, gives their address (like 10.0.0.73), and notes whether they handle FTP, TELNET, or other services.

§2Host Table Entry Structure

Each entry in the host table is an ASCII text string with six fields separated by colons:

  • Field 1: Keyword indicating the entry type: NET, GATEWAY, or HOST
  • Field 2: Internet address (and optional alternate addresses)
  • Field 3: Official name and optional nicknames
  • Field 4: Machine type (optional)
  • Field 5: Operating system (optional)
  • Field 6: Protocol list (optional)

Fields 4, 5, and 6 are optional. Fields 3 through 6 apply only to the first address in Field 2. Each entry ends with a colon. NET entries cannot have alternate addresses or nicknames.

Each line in the list is like a note card: first you say what it is (HOST, NETWORK, or GATEWAY), then the computer's number, then its name, and optionally what operating system it runs and what services it has.

§3Syntax and Data Format

The syntax uses specific delimiters and conventions. A semicolon begins a comment; anything after it on a line is ignored. Colons separate fields, with double colons indicating a null (empty) field. Commas separate elements within a field, such as multiple addresses or protocol specifications.

Protocol information is written as TRANSPORT/SERVICE (for example, TCP/TELNET or TCP/FTP). Some entries may specify only the transport (like TCP) or only a service name. Blanks (spaces and tabs) are allowed between elements but not within a single element. Continuation lines beginning with at least one blank character can split an entry across multiple lines.

The format is like a simple spreadsheet row: fields separated by colons, multiple items in one field separated by commas, and services written as type/name like TCP/FTP.

§4Internet Addresses and Naming Rules

Internet addresses are 32-bit values represented as four decimal numbers separated by periods (for example, 10.0.0.73). Each number is one octet (0 to 255).

Names (for networks, gateways, and hosts) are text strings up to 24 characters using letters, digits, the minus sign, and the period. No blanks are allowed. The first character must be a letter, and the last must not be a minus sign or period. Gateways have -GATEWAY or -GW in their name; TIP or TAC machines have -TIP or -TAC. No distinction is made between uppercase and lowercase letters.

Every computer gets a number like 10.0.0.73 and a name like SRI-NIC. Names can have letters, numbers, and hyphens, but must start with a letter.

IPv4 address classes and their structure
ClassFirst bit(s)Network bitsHost bits
Class A07 bits24 bits
Class B1014 bits16 bits
Class C11021 bits8 bits

§5Example Entries and Machine Information

The RFC includes example entries. A network entry looks like NET : 10.0.0.0 : ARPANET :. A gateway entry lists both addresses where it connects (for example, GATEWAY : 10.0.0.77, 18.8.0.4 : MIT-GW :: MOS : IP/GW :). A host entry might be HOST : 10.0.0.73 : SRI-NIC,NIC : FOONLY-F3 : TENEX : NCP/TELNET,NCP/FTP,TCP/TELNET,TCP/FTP :.

Machine types (Field 4) include names like PDP-11/70, DEC-1080, or CDC-6400. Operating systems (Field 5) include ITS, MULTICS, TOPS20, UNIX, TENEX, and others. The protocol list specifies both transport and service protocols available on that host.

Each entry shows what the computer is, where to find it, its nickname, what kind of machine it is, what operating system it runs, and what services it offers.

§6References