home *** CD-ROM | disk | FTP | other *** search
/ ftp.wwiv.com / ftp.wwiv.com.zip / ftp.wwiv.com / pub / CEREBRUM / WAT9609.ZIP / README < prev    next >
Text File  |  1992-07-08  |  31KB  |  894 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.                                      Waterloo TCP
  11.  
  12.                                   Installation Notes
  13.  
  14.                                    by Erick Engelke
  15.  
  16.  
  17.  
  18.           Introduction          Introduction
  19.  
  20.                TCP/IP is not a program, it is a set of protocols which have
  21.                been  implemented on many machines.  All machines running an
  22.                implementation  of TCP/IP  and connected  to the  world wide
  23.                Internet are capable of communicating with each other.
  24.  
  25.                There    are    several   popular    non-commercial   TCP/IP
  26.                implementations for MS-DOS computers.   Each offers  special
  27.                features but with  varied drawbacks.  I  don't believe there
  28.                is a clear choice  of one implementation for all  needs, but
  29.                users  are free to pick the best or most useful applications
  30.                from each offering.
  31.  
  32.                These  notes  describe  the various  applications  available
  33.                today.    Please remember  that  the  applications are  free
  34.                software, you  may use them and pass  them on to others, but
  35.                there is no warranty  and the support is very  limited.  You
  36.                also may not sell the included programs.
  37.  
  38.  
  39.           Installation          Installation
  40.                Waterloo  TCP  only works  if you  have  a packet  driver, a
  41.                special program which allows  your network interface card to
  42.                talk with the Waterloo TCP applications.  
  43.  
  44.                Thanks to  some very  generous people,  particularly Russell
  45.                Nelson, you probably will  not have to buy a  packet driver.
  46.                If you are  using Ethernet  hardware you  can probably  find
  47.                free  packet drivers  for  your cards  via anonymous  ftp to
  48.                sun.soe.clarkson.edu in the pub/drivers subdirectory.               ____________________        ___________
  49.  
  50.                Waterloo  TCP only  supports  Class 1  drivers.   Officially
  51.                these  are called  Ethernet  class drivers,  but many  other
  52.                types  of  networks have  drivers  which  make them  emulate
  53.                Ethernet hardware.  For example, any Novell system using IPX
  54.                or any IBM compatible Token Ring  network can be made to act
  55.                like Ethernet.  Even serial lines (SLIP) emulate Ethernet if
  56.                you use  Michael Martineau's  ETHERSLIP driver  available by
  57.                anonymous ftp from owl.nstn.ns.ca in in.coming/etherslip.                                  ______________    ___________________
  58.  
  59.                To start using Waterloo TCP software you will need to get it
  60.                configured.    There  are  two  options,  using BOOTP  or  a
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.                configuration file.
  74.  
  75.                If  you think  you may  have a  BOOTP server  on  your local
  76.                subnet, copy  the file  TCPINFO.EXE into a  new subdirectory
  77.                and  run the command  TCPINFO.  It  may take  a few seconds.
  78.                After a maximum of 30 seconds, TCPINFO should tell you if it
  79.                could get configured via  BOOTP.  If it could  not, or BOOTP
  80.                is too slow, you will have to use a configuration file.
  81.  
  82.                You will  probably want a configuration file  anyways, as it
  83.                allows some  extra things which  are not inherent  in BOOTP.
  84.                Waterloo TCP lets  you use a config file,  and pick up extra
  85.                things from BOOTP.
  86.  
  87.                If you don't  really know  what you are  doing, continue  on
  88.                with this section and make a config file.
  89.  
  90.                First  you will  need  some important  information from  you
  91.                local TCP/IP guru.   Do not merely guess, these  values must
  92.                be correct or you may do some damage and get yourself on the
  93.                death threat list from your local network people.
  94.  
  95.  
  96.                IP address (eg. 4.1.2.23)
  97.  
  98.  
  99.                     my_ip =  ______.______.______.______
  100.  
  101.  
  102.                local subnet mask (eg. 255.255.254.0, never 255.255.255.255)
  103.  
  104.  
  105.                     netmask = ______.______.______.______
  106.  
  107.  
  108.                local gateway (eg. 4.1.2.1)
  109.  
  110.  
  111.                     gateway = ______.______.______.______
  112.  
  113.  
  114.                primary name server (eg. 129.97.128.1)
  115.  
  116.  
  117.                     nameserver = ______.______.______.______
  118.  
  119.  
  120.                alternate name servers (up to 9 more if so desired)
  121.                just keep repeating this line with new addresses.
  122.  
  123.  
  124.                     nameserver = ______.______.______.______
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.                name domains list, (eg. UWaterloo.ca  or  edu)
  140.  
  141.  
  142.  
  143.                d   o   m   a   i   n   s   l   i   s   t                  =
  144.                          __________________________________________________
  145.  
  146.  
  147.                These  values must be  placed in  a file  called WATTCP.CFG.
  148.                Below is a sample copy, remember, do  not use my values, get
  149.                the correct ones!
  150.  
  151.                     print="using sample configuration" # sample comment
  152.                     print="contact local network guru for more details"
  153.                     my_ip=129.97.176.99
  154.                     netmask=255.255.254.0              # sample comment
  155.                     nameserver=129.97.128.24           ; sample comment
  156.                     nameserver=129.97.128.196          # alt nameserver
  157.                     nameserver=129.97.128.1            # 3rd nameserver
  158.                     gateway=129.97.176.1
  159.                     domainslist="uwaterloo.ca"
  160.  
  161.                The rules are simple, directive=value.  
  162.  
  163.                If quotes are not used in the value field, the value will be
  164.                terminated by  the start of a  comment or by a  newline, and
  165.                all white space (spaces and tabs) are removed.
  166.  
  167.                If you specify quotes around the value, only a second set of
  168.                quotes  or a newline will  end the value  field and comments
  169.                must  be preceded  by  an end  quote  mark.   Whitespace  is
  170.                preserved inside quotes.
  171.  
  172.  
  173.                Place the  WATTCP.CFG file in  the same subdirectory  as the
  174.                TCP  application programs.  If  the file is  not found there
  175.                the programs automatically look for the file in the  current
  176.                subdirectory of the current  disk.  Failing that, a  message
  177.                will  be  displayed but  the  program  will not  necessarily
  178.                abort.
  179.  
  180.                You may  override the above directory  choices by explicitly
  181.                setting the path in an environment variable.
  182.  
  183.                eg.  set wattcp.cfg=n:\internet
  184.  
  185.                The environment  variable is  checked first,  and  if it  is
  186.                defined  that   configuration  file   is  used.     This  is
  187.                particularly  useful on installations  where the software is
  188.                located on  a fileserver,  but individual  workstations will
  189.                need separate configuration files.
  190.  
  191.  
  192.           Testing          Testing
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.                First,  to  ensure  that  you  entered  all  the  parameters
  206.                correctly, run  TCPINFO.  It will list all system constants.
  207.                If one or more  of them seem incorrect, check  your spelling
  208.                in the WATTCP.CFG file.
  209.  
  210.                Next  we will test the  PING command to  see that everything
  211.                works  and asks  another computer  if it is  up.   The first
  212.                argument to  PING is  the name of  the other computer.   The
  213.                second argument is the  number of retries.  Since  your guru
  214.                supplied  the ip  address of  a gateway,  we will  first try
  215.                that.
  216.  
  217.                     ping  129.97.128.1  5         don't  use  129.97.128.1,
  218.                                                   use  your   gateway's  IP
  219.                                                   address
  220.  
  221.                This will generate five attempts.  You should have more than
  222.                0  % success.   Otherwise  your gateway is  down or  your ip
  223.                address or gateway is wrong.
  224.  
  225.                If  you  had success,  try pinging  the  ip address  of your
  226.                nameserver.
  227.  
  228.                eg.  ping  129.97.128.196  5
  229.  
  230.                Now check your nameserver by trying to resolve the name of a
  231.                local machine.  Near me is a machine named 'cupid'.
  232.  
  233.                     ping  cupid  5
  234.  
  235.                If that did  not work, your  various nameserver entries  are
  236.                incorrect, your  gateway or network mask  is incorrect, your
  237.                nameservers did not want to provide name service, or you did
  238.                not specify a valid name.
  239.  
  240.                These tests will  help your  guru figure out  what might  be
  241.                wrong.
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.           Applications          Applications
  272.                TCPINFO               TCPINFO
  273.                     Displays the current Ethernet/TCP configuration.  It is
  274.                     useful for  testing spelling and contents  of files and
  275.                     for determining ethernet addresses.
  276.  
  277.  
  278.                PING               PING
  279.  
  280.                          PING  [-d|/d]  [-s|/s]  hostname  [attempts]
  281.  
  282.                     You  have already  seen PING  described briefly  in the
  283.                     installation section.  PING will not generate more than
  284.                     one  request  per second,  it  also  attempts to  block
  285.                     broadcast attempts.
  286.  
  287.  
  288.                     PING can be used in a debugging mode (-d or /d).
  289.                     eg.  PING  -d  129.97.128.1
  290.  
  291.                     If  you do  not specify  the number  of attempts  to be
  292.                     made, only one attempt will be made.
  293.                     eg.  PING  129.97.128.196
  294.  
  295.                     Specifying  /s will  ping  the other  machine once  per
  296.                     second for a very long time.
  297.                     eg.  PING  -s  129.97.128.196
  298.  
  299.  
  300.                COOKIE               COOKIE
  301.  
  302.                          COOKIE [host]
  303.                     eg.  COOKIE
  304.                          COOKIE  conehead.uwaterloo.ca
  305.  
  306.                     Print a witty saying from one of the cookie servers.
  307.  
  308.  
  309.                DAYTIME                DAYTIME
  310.                     Print the time of day using TCP
  311.  
  312.                          DAYTIME  host
  313.                     eg.  DAYTIME  129.97.128.1
  314.                          DAYTIME  watmath.uwaterloo.ca
  315.  
  316.                     If the  host supports TCP based  DAYTIME text services,
  317.                     the time of  day will  be displayed as  a text  string.
  318.                     See also NTIME
  319.  
  320.  
  321.                FINGER               FINGER
  322.                     Determine user or system information
  323.                          FINGER [user]@host
  324.                     eg.  FINGER  erick@sunee.uwaterloo.ca
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.                          FINGER  @sunee.uwaterloo.ca
  338.  
  339.                     Finger returns  the remote computer's information  on a
  340.                     particular user.
  341.  
  342.                     If no user  is specified, FINGER will return  the names
  343.                     of currently logged users on that machine.
  344.  
  345.  
  346.                LPR               LPR
  347.                     Spool print jobs
  348.                LPQ               LPQ
  349.                     Query the print queue
  350.  
  351.                          Run these commands with no arguments for the exact
  352.                          syntax.   Check to  see that the  appropriate host
  353.                          privileges are extended to the pc.
  354.  
  355.                          An explanation beyond this  is beyond the scope of
  356.                          this brief document, see your local UNIX guru with
  357.                          HOSTS.LPR   or   whatever   s/he   feels   is     
  358.                          appropriate.
  359.  
  360.  
  361.                NTIME               NTIME
  362.                     Set DOS time from the Network.
  363.  
  364.                     NTIME  host  [addminutes]
  365.  
  366.                     NTIME contacts the host  and requests the current time.
  367.                     Computers are  supposed to  respond with the  number of
  368.                     seconds  since Jan 1, 1900 GMT.  Many simply return the
  369.                     current time adjusted to  the daylight savings time and
  370.                     time  zone.  I allow  you to specify  addminutes if you
  371.                     need  to add or subtract a certain number of minutes to
  372.                     the returned time.
  373.  
  374.                     I was considering using  a DST conversion algorithm but
  375.                     have not yet done so.
  376.  
  377.                TCPPORT                TCPPORT
  378.                     Treat the serial port as a TCP connection
  379.  
  380.                          TCPPORT host port "program options"
  381.  
  382.                     Host is the name  or ip address of the  remote computer
  383.                     and port is the TCP port number on that computer.
  384.  
  385.                     You  may  specify  the  terminal  emulation desired  by
  386.                     setting the environment variable
  387.                          set  tcpterm=termtype
  388.                     eg.  set  tcpterm=vt102
  389.  
  390.                     See the section on TCPPORT below
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.                REXEC               REXEC
  405.                     Execute the following command on a remote host
  406.               
  407.                     REXEC  host  [user [pass]] cmd
  408.  
  409.                     The  "cmd"  command  will  be executed  on  the  remote
  410.                     computer.  If  you fail to specify  either the password
  411.                     or the userid, you will be prompted for them.
  412.  
  413.                     eg.  rexec  hq.iraq  "ls -l"
  414.                          rexec  hq.iraq  saddam  "ls -l"
  415.                          rexec  hq.iraq saddam white_flag_of_victory "ls"
  416.  
  417.                     REXEC does not do terminal interpretation, you may wish
  418.                     to  have  NANSI.SYS  loaded  to  provide  the necessary
  419.                     emulation.  Waterloo TCP REXEC is good when you wish to
  420.                     redirect output to a file.
  421.  
  422.  
  423.           Other WATTCP Programs          Other WATTCP Programs
  424.  
  425.                The above  programs are relatively  simple demonstrations of
  426.                the  capabilities of  the  WATTCP TCP/IP  kernal.   Advanced
  427.                programs are usually distributed  separately as they tend to
  428.                be  updated   in  a  different  schedule   from  the  kernal
  429.                libraries.
  430.  
  431.                MSKERMIT 3.11               MSKERMIT 3.11
  432.                     One  of  the first  popular  uses  for WATTCP  was  its
  433.                     ability to make communication programs such as MSKERMIT
  434.                     act like  TELNET facilities.   So overwhelming  was the
  435.                     number of  requests that  MSKERMIT 3.11 now  includes a
  436.                     derivative  of   the  WATTCP  kernal  and  the  TCPPORT
  437.                     application.
  438.  
  439.                TELNETD               TELNETD
  440.                     The next  most popular use is easily TELNETD, a program
  441.                     which  allows you to TELNET into your pc and control it
  442.                     using  any  TELNET program  on  any  computer platform.
  443.                     TELNETD   can   be   found   via   anonymous   ftp   to
  444.                     sunee.uwaterloo.ca in pub/wattcp/telnetd.zip.
  445.  
  446.  
  447.  
  448.           Using Communications Programs with TCPPORT          Using Communications Programs with TCPPORT
  449.  
  450.                You may wish to use  a terminal communication program rather
  451.                than TELNET.  Waterloo TCP  makes this very easy to do  with
  452.                its  TCPPORT  program.    Now  that  TCPPORT  is built  into
  453.                MSKermit I don't really have a good example, but here goes:
  454.  
  455.                Start by creating a configuration  file which tells your com
  456.                program  to use the BIOS  ports rather than  hardware.  Then
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.                create a batch file which looks like:
  470.  
  471.                TNCOMM.BAT
  472.                     echo off
  473.                     tcpport %1 23 "c:\comm"
  474.  
  475.                Here I was assuming you kept comm.exe in the root  of C: and
  476.                tcpport could be found somewhere in  the path.  Now you  can
  477.                easily TELNET to any host by typing:
  478.  
  479.                     TNCOMM  host
  480.                eg.  TNCOMM  129.97.128.1
  481.                or   TNCOMM  watmath.uwaterloo.ca
  482.  
  483.                After  you  log off,  Waterloo  TCP  returns the  characters
  484.                forming  [??Host  closed   connection??]  or  some   similar
  485.                message.  You simply need to exit your com program.  Exiting
  486.                kermit without logging off  will simply close the connection
  487.                and typically log you off.
  488.  
  489.                You may  select a specific terminal  emulation which TCPPORT
  490.                should  try  to  run  by  setting  the  tcpterm  environment
  491.                variable before running tcpterm:
  492.                eg.  set tcpterm=vt102
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.           Advanced WATTCP.CFG Options          Advanced WATTCP.CFG Options
  536.                This  section  is  useful  once  you  have  determined  that
  537.                Waterloo TCP actually works for you.
  538.  
  539.                Including Sub-Config Files
  540.                     You may wish to use a combination of generic WATTCP.CFG
  541.                     file  and  a  smaller  sub-config file  which  will  be
  542.                     located  on  the  user's  private  subdirectory.    Any
  543.                     command which can be placed in the main config file may
  544.                     also be placed (or replaced) in the sub-command file.
  545.  
  546.                     eg. 
  547.                          include = c:\local.cfg
  548.  
  549.                     After the subcommand file  is parsed, Wattcp returns to
  550.                     the  main config  file.   The depth  of this  system is
  551.                     limited by  the number  of file  handles and  the stack
  552.                     size.
  553.  
  554.                     If  the  subcommand  file  cannot be  found,  an  error
  555.                     message will  be printed.   To allow for  the possible,
  556.                     but not-essential existance of a file (i.e., include it
  557.                     if  it is there, but don't  complain otherwise) you may
  558.                     simply prepend the filename with a question mark.
  559.  
  560.                     eg.
  561.                          include = ?c:\local.cfg
  562.  
  563.  
  564.                IP Addresses
  565.                     Most network  administrators would  prefer to  not have
  566.                     many  copies of  the configuration  file, but  rather a
  567.                     single  file  from   which  everyone   can  be   easily
  568.                     configured.  
  569.  
  570.                     As  demonstrated above,  Waterloo TCP  normally accepts
  571.                     the ip number from within the WATTCP.CFG file.  
  572.  
  573.                BOOTP
  574.                     Many  sites prefer  to use  BOOTP, a  standard protocol
  575.                     which  requests  the  user's   ip  address  and   other
  576.                     information from a BOOTP server.
  577.  
  578.                     To use BOOTP, you must specify the name 'bootp':
  579.  
  580.                          my_ip = bootp
  581.  
  582.                     in the config file.  This will broadcast the request on
  583.                     the local subnet.   You  may specify  a specific  BOOTP
  584.                     server which need not be on the same subnet, by using:
  585.  
  586.                          bootp = host
  587.                     eg.  bootp = 129.97.128.1
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.                     The  default  timeout value  is  30 seconds.    You may
  602.                     change that by using:
  603.  
  604.                          bootpto = seconds
  605.                     eg.  bootpto = 50
  606.  
  607.                     If no  WATTCP.CFG file is found,  Waterloo TCP programs
  608.                     always resort to BOOTP.
  609.  
  610.                ETHERNET to IP Table
  611.  
  612.                     Another option currently  exists, I  allow multiple  IP
  613.                     numbers in WATTCP.CFG  with each  one being  tied to  a
  614.                     particular Ethernet address.  If your  Ethernet address
  615.                     is found in list, your IP address will be assigned.
  616.  
  617.                          ETHIP=ethaddr,ipaddr
  618.                     eg.  ETHIP=00:01:2F:BC:44:33,128.252.35.4
  619.  
  620.                     In  this   case,  the  machine  with  Ethernet  address
  621.                     00:01:2F:BC:44:33  would  be  assigned  the  ip address
  622.                     128.252.35.4.    Note   that  Ethernet  addresses   are
  623.                     hexadecimal with intermediate  colons, ip addresses are
  624.                     dotted  decimal, and I use a comma to separate the two.
  625.                     Also, since  Waterloo TCP removes white  space, you may
  626.                     place  a space between any  of the fields  if you don't
  627.                     use quotes, and  you may  end the line  with a  comment
  628.                     describing  where  the  station  lives or  to  whom  it
  629.                     belongs.
  630.  
  631.                     You can quickly find the Ethernet  address of a station
  632.                     by running the TCPINFO command.
  633.  
  634.                Subnets
  635.                     The Internet is comprised of many, many subnets.  There
  636.                     are several  protocols normally used to  help computers
  637.                     reach computers on other subnets.
  638.  
  639.                     Most PC based  TCP kernals depend on  routing tables to
  640.                     manage the possible  routes, so I  elected to use  that
  641.                     strategy.
  642.  
  643.                     A  routing  table  exists  in  memory  with  a  current
  644.                     capacity  for 12  different  routes.   Each route  must
  645.                     specify a gateway, an  optional destination subnet, and
  646.                     then an optional subnet mask.
  647.  
  648.                          gateway = gate_ip [, subnet [, subnet_mask ]]
  649.                     eg.  gateway = 129.97.176.1        # default
  650.                     eg.  gateway = 129.97.176.2, 129.97.0.0, 255.255,0,0
  651.  
  652.  
  653.                     The  first  example  shows  how a  default  gateway  is
  654.                     created.  A default gateway is used if no other choices
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.                     exist.
  668.  
  669.                     The second example shows how to specify a gateway for a
  670.                     particular subnet.  In this example, whenever the 'top'
  671.                     16 bits are 129.97, that gateway will be used.
  672.  
  673.                     Yes,  you need not always  specify the mask,  but it is
  674.                     necessary for class B subnets, so I simply suggest that
  675.                     you always do specify the mask.
  676.  
  677.                     You  may specify  the same  gateway several  times with
  678.                     different routes.  
  679.  
  680.                     Non-contiguous subnet bits are supported.
  681.  
  682.                     To check  your configuration and to  see the precedence
  683.                     of gateways, run TCPINFO.EXE.
  684.  
  685.                Host Name
  686.                     Some applications will wish  to know your PC's name,  a
  687.                     short  textual  name.    This   may  be  set  with  the
  688.                     WATTCP.CFG line:
  689.  
  690.                          hostname = name
  691.                     eg.  hostname = mole
  692.  
  693.  
  694.                     Notice that  you do  not  specify the  domain, that  is
  695.                     found from the domain string.
  696.  
  697.                Timeouts
  698.                     Most Waterloo  TCP programs  have  a specified  timeout
  699.                     value between activity  before a timeout error  occurs.
  700.                     For  example,  the maximum  response  time  to an  open
  701.                     request  before the  connection is  given up  should be
  702.                     reasonably  long so  that distant  connections will  be
  703.                     usable, but short enough that the user will not believe
  704.                     the computer has hung.
  705.  
  706.                     Applications may specify  their own timeout value,  but
  707.                     if  they  chose  to  use  the  system  default (all  my
  708.                     applications do), the default value may be set from the
  709.                     WATTCP.CFG file.
  710.  
  711.                          SOCKDELAY=seconds
  712.                     eg.  SOCKDELAY=40
  713.  
  714.                     The  default value is 30  seconds.  A  smaller value is
  715.                     unwise,   but  larger  values   may  be  necessary  for
  716.                     particularly bad connections.
  717.  
  718.                Maximum Segment Size
  719.                     If you understand MSS and know what you would like, you
  720.                     can change it:
  721.  
  722.  
  723.  
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.  
  731.  
  732.  
  733.                          MSS=bytes
  734.                     eg.  MSS=512
  735.  
  736.                Cookie Server
  737.                     You may specify a cookie server in the  WATTCP.CFG file
  738.                     with the line:
  739.  
  740.                          cookie = server
  741.                     eg.  cookie = 129.97.128.1
  742.                     eg.  cookie = sunee.uwaterloo.ca
  743.  
  744.                     Up to 10 separate cookie servers may be added.  TCPINFO
  745.                     will  list  them  all.    BOOTP will  also  add  cookie
  746.                     servers.
  747.  
  748.                BOOTP Features and Limitations
  749.                     BOOTP is not the greatest  method of configuration.  In
  750.                     fact  there  is   currently  a  committee   looking  at
  751.                     implementing its successor.
  752.  
  753.                     Waterloo  TCP  programs  will  automatically  get  many
  754.                     configuration parameters from the BOOTP server if those
  755.                     values are returned:
  756.  
  757.                     IP address
  758.                     subnetmask
  759.                     gateway        (only one will be added)
  760.                     nameservers    (all supplied will be added)
  761.                     cookieservers  (all supplied will be added)
  762.                     hostname
  763.  
  764.                     The domain name cannot be specified currently.   Of the
  765.                     gateways,  only one is recorded by Waterloo TCP as they
  766.                     do not indicate subnets or anything else useful.
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.  
  780.  
  781.  
  782.  
  783.  
  784.  
  785.  
  786.  
  787.  
  788.  
  789.  
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.  
  797.  
  798.  
  799.           Notes:          Notes:
  800.                The most up-to-date versions  of these files, their sources,
  801.                and  new programs  are  available  on Sunee.uwaterloo.ca  by
  802.                anonymous FTP.  Check out pub/wattcp.
  803.  
  804.                All  executables   there  are  copyrighted  but  are  freely
  805.                available for use and non-commercial distribution.
  806.  
  807.                The library files which do the actual tcp communications are
  808.                also there.   They too are copyrighted,  but may be used  in
  809.                commercial and non-commercial work.   You are free to  do as
  810.                you choose.   If you intend to program  with this package, I
  811.                would  highly  recommend  the  developers  manual  described
  812.                below.
  813.  
  814.                Developers  may wish to join  the Waterloo TCP mailing list,
  815.                join by mailing to:
  816.  
  817.                     wattcp@Development.Watstar.UWaterloo.ca
  818.  
  819.                The  programmers manual includes  examples, a full reference
  820.                of the approximately 50 functions, notes on conversions from
  821.                UNIX.  The  cost is $40 ($US if you live in USA, $Cdn if you
  822.                live in  Canada.  $40 US  for anywhere else.   Make check or
  823.                money order payable to :
  824.  
  825.                     Erick Engelke
  826.                     1010-130 Lincoln Rd.
  827.                     Waterloo, Ont., Canada
  828.                     N2J-4N3
  829.  
  830.                The  proceeds are  entirely used  to offset  the cost  of my
  831.                manuals  and  software  costs  necessary for  improving  the
  832.                package.    The next  step is  Windows  DLL's, but  I cannot
  833.                afford everything I need to do that.
  834.  
  835.  
  836.                I have mentioned the  public domain CUTCP and NCSA  programs
  837.                which  do  an  excellent  job  of  TELNET,  RSH  with  VT100
  838.                emulation,  and  much more.   You  may  wish to  compare the
  839.                programs and use the ones which work best for you.
  840.  
  841.                For their executables, use anonymous ftp to:
  842.                     omnigate.clarkson.edu    128.153.4.2     for CUTCP
  843.                and  ????                     128.174.20.50   for NCSA
  844.  
  845.  
  846.                I hope that this distribution helps you in some way, and I'd
  847.                like to thank the contributors,
  848.  
  849.                     Bruce  Campbell who  wrote  the original  program  from
  850.                          which tcpport was  derived.  He also wrote the DOS
  851.                          network I log onto every morning.
  852.  
  853.  
  854.  
  855.  
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.  
  863.  
  864.  
  865.                     Tim  Krauskopf's  NCSA Name  Domain  code  was used  to
  866.                          develop Waterloo TCP's resolve function.
  867.  
  868.                     Edmund J. Sutcliffe donated a good portion of BOOTP.
  869.  
  870.                     Jim Martin made a  lot of extensions to  Edmund's BOOTP
  871.                          work and was influential in the new nameserver and
  872.                          new gateway code as well as the COOKIE stuff.
  873.  
  874.                     Jason Dent found some bugs and helped optimize WATTCP's
  875.                          performance.
  876.  
  877.                     Dean Roth  found  some  low  level  bugs   and  greatly
  878.                         improved the FTP program.
  879.  
  880.                     Although countless others have  given me good ideas and
  881.                          noticed an incorrect line  here or there, but none
  882.                          have been  more  thorough or  helpful than  Tarjei
  883.                          Jensen.
  884.  
  885.                     If you would like  to add your name to  the programmers
  886.                     list,  send me a copy  of your program  and I'll gladly
  887.                     include it in the distribution with full credit.
  888.  
  889.  
  890.           Erick Engelke
  891.           Erick@development.watstar.uwaterloo.ca
  892.           Waterloo TCP Architect
  893.           July 8, 1992
  894.