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]