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.

                                                         [Page 1]


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 :

[Page 2]


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

                                                         [Page 3]


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.

[Page 4]


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.


































                                                         [Page 5]


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.

























[Page 6]


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


















                                                         [Page 7]


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



































[Page 8]