Elizabeth Feinler
Ken Harrenstien
Zaw-Sing Su
Vic White
Network Information Center
SRI International
RFC 810
1 March 1982
References: RFC 811, 796
Obsoletes: RFC 608

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.

RFC 810 1 March 1982

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 :

1 March 1982 RFC 810

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

RFC 810 1 March 1982

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.

1 March 1982 RFC 810

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.

RFC 810 1 March 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.

1 March 1982 RFC 810

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

RFC 810 1 March 1982

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