This document outlines using the University of Waterloo TCP (WATTCP) clients under MS-DOS. There are a few commercial TCP/IP stacks available for MS-DOS, along with Microsoft's own version (found on the NT4.0 server CD), but the WATTCP clients are entirely free. With that, they are completely unsupported by the original author. Monkeying around with these utilities is merely a hobby. I did not write the WATTCP libraries nor any of the clients. I simply find it interesting and wish to share my experiences with you here.
The Waterloo TCP is not actually a TCP/IP stack. It is merely a set of programming libraries used for making TCP/IP socket connections. Since each of the WATTCP clients is pre-complied, the necessary library commands used in each one are complied into the binary. This means that the overhead to use these clients is quite low. The only drawback is that the computer running the WATTCP clients is not actually a true host on the IP network. You can't ping it, for example, from another box unless it's running a daemon (see below).
Over the past few days, I have experimented with these programs. The box I'm using is an Intel Pentium 133 with 32Mb of ram, with a Connor 120Mb fixed hard drive. I've installed MS-DOS version 6.22 along with the packet driver for my net card (Samsung 1200-tx). My local network consists of two NT4 servers and an NT4 workstation. All of this is connected to the Internet through a SDSL router.
The only hard part to using the WATTCP clients is finding and loading the packet driver for your particular net card. Usually this is a single file, with the '.com' extension, and can be found on the floppy that came with your net card. If you don't have the original floppy disk that came with your net card, check the manufacturers web site for downloadable drivers. It is possible that some manufacturers don't write (or support) packet drivers for their products. Once you obtain the packet driver, copy it to your boot drive of your DOS install. Then, load it with a command in the AUTOEXEC.BAT file, like this:
where 'SC1200' is the name of the packet driver. (In this example, my netcard is a Samsung SC1200-tx.) That's all you have to do. Some packet drivers may require more memory than others. If you're loading other devices, try loading them into upper memory using the DEVICEHIGH command in CONFIG.SYS, or the LOADHIGH command in AUTOEXEC.BAT
The WATTCP.CFG file
Each of the WATTCP clients expects to see the WATTCP.CFG file somewhere in the current path. This file defines basic information about your host, and how it will interact with other hosts on the network. Here's a sample WATTCP.CFG file. The '#' indicates a comment and is not required.
DO NOT use these settings! Make sure to configure your WATTCP.CFG file correctly. This example is used to show the reader the basic requirements in the WATTCP.CFG file, and define the correct syntax.
my_ip=192.168.0.69 #The ip address of my dos box
netmask=255.255.255.0 #The subnet mask for my ip
nameserver=192.168.0.2 #The nameserver for my domain
gateway=192.168.0.1 #The gateway for my subnet
hostname=lala.smashco.com #The hostname of my dos box
I'm assuming the reader will understand each entry. This is the basic information that ANY host needs to participate on a TCP/IP network. Some WATTCP clients require more entries in this file. More on that later.
Organize your files
I like to put all the WATTCP clients, along with the WATTCP.CFG file, into one directory. Call it what you will, and to make your life easier, add it to the SET PATH command in AUTOEXEC.BAT.
This is not an exhaustive list. There may be more utilities, or different versions, available. This list represents the archives I was able to find at the time of writing. I have only tested about a third of these utilities.
- ftpbeta.zip Version .65 of the FTP client
- gophserv.zip Gopher server. One of two daemons I have found
- htget102.zip Retrieve an HTML document without a browser
- irc101.zip An IRC client.
- lynx_386.zip A Lynx Web Browser specifically for WATTCP
- mt.zip Telnet client
- newsnuz.zip Newsreader
- nslb01a.zip Nslookup and nsquery
- pc_pine3.96 mail & news reader, here written for WATTCP
- pc_pine3.91 version 3.91 is much slimmer than 3.96
- pprd200.zip send jobs to the printers from any machine.
- rdemo01a.zip These are the three simple demo programs from SunRPC compiled with the WatTCP tcp/ip library and a port of SunRPC to DOS.
- rmtd091.zip Remote MagTape Protocol Daemon.
- simplftp.zip Trivial FTP client
- smbpd094.zip SMBPD is a small program that turns an XT or AT running DOS into a dedicated SMB printer server.
- smtpserv.zip SMTPSERV is a program which runs on your pc and allows it to accept SMTP based mail from other sources, even from several sources at one time.
- talk-10.zip A simple talk client. I haven't tested it.