DOC/ 777 0 0 0 5707123624 6507 5ustar rootDOC/about.doc 644 0 0 1430 5532556554 10372 0ustar rootThese nine files are the revised TCP/IP user manual originally prepared by Bdale Garbee in 1989. It has been revised to include features that have been added since, and to include information that was available from TAPR's Plug'N'Play disk, as well as elsewhere. These files are unformatted ASCII text. They can be scanned with any text reading utility (such as list), or any word processor capable of importing text files. Chapter0 is actually the preface. It contains some intro- ductory information and instructions on how to obtain a formatted printable output using the included utility, pagenet.exe. I suggest looking over chapter0 before proceeding. Note the index which will lead you to the chapter(s) you may be interested in seeing first. Enjoy! Joe, K5JB, "The Editor" DOC/chapter0 644 0 0 61025 5643401764 10243 0ustar root The KA9Q Internet Software Package by Bdale Garbee, N3EUA Copyright 1989 by Bdale Garbee. All Rights Reserved. This Document may be reproduced in whole or in part for any non-commercial purpose, as long as credit is given the author. .pa Bdale' Preface to Original Document As is so often the case, when it came down to the wire and something had to be left in less than perfect condition... the documentation suffered. This document is a major rewrite of the document included with 871225.0 release of the KA9Q package, but it is in the author's opinion very far from perfect. I believe that the bulk of the material here is factually correct, but the formatting is rough, and there are no doubt some juicy tidbits missing that should have been included. If you have comments or suggestions about the documentation, contact me via email at bdale@col.hp.com on the Internet, ...!winfree!bdale via UUCP, or as 76430,3323 in S9 of the Hamnet forum on Compuserve. My profound thanks to the folks who contributed to this release. Bdale Garbee, N3EUA -- April 22, 1989 Apr 1993 Revision Joe Buswell, K5JB, 44.78.0 2 Editor's note: I must express my appreciation to Bdale for the work he put into this document. I certainly would have been unable to understand, and be unable to manipulate the program suite as well as I have, without this information. I have been supplying beginners in my area with a collection of files from other sources (and notes of things I discovered) to supple- ment this tome, and my collection was getting so large I felt that doing some editing was in order to simplify other's search for information. I left Chapter 1 pretty much alone, but reorganized most of the rest to incorporate things that have come to pass since this was originally writ- ten. My interest in NET has been primarily to suit myself. If someone else finds use for the thing I am happy to share my work. Joe Buswell, K5JB, 44.78.0.2 3312 N. Idylwild Dr. Midwest City OK 73110-1643 .pa Initial Revision notes -- July 1991 Chapter 1 was virtually unchanged. Chapter 2 was changed to add some of the information from the TAPR "Plug- 'N'Play disk and to refer to the sample files that were added to the kit. Some changes were made to correct a few errors in file paths for the MS- DOS computer, add information for tidying file placement, add information on new functions, and include information on starting the Unix version. Chapter 3 Was edited to add a few more examples of test driving net. Chapter 4 was slightly edited to add more Unix information and describe environmental variable information. Chapter 5, which was originally for advanced topics, and was empty, is now used to explain NET/ROM, Finger, Mulport, Mbox, and a stray Datagram/VC explanation from the commands chapter. It also discusses AX.25 Segmentat- ion and the relationships between paclen, tcp mss, interface mtu, etc. Chapter 6 was edited to add almost all available commands, particularly for NET/ROM Finger and Mbox. Chapter 7 was originally appendices. It was split up and now contains the net program's internal workings -- information for programmers. Chapter 8 Now contains the FTP Software information that was in Chapter 7. Sept 1991 Performed general housekeeping to correct errors. Added information on the Kantronics KPC-4/KAM dual port driver that is available. Added shl information for Unix version operating in background. Added notes where appropriate regarding ability to run net or bm from any drive or directory on a computer. Indicated where options.h contains commonly changed compiler directives that were originally in config.h. March - November 1992 Added ROSE information in Chapters 5 and 6. Added ax25 mboxcall command information. Revised Virtual Circuit support (for ROSE) and made some changes to make NET and BM compile and work under Coherent 386. Added a few commands, fixed an error in the shell (!) command. Revised the help command to permit reading any file with a .hlp extension. Default help files were renamed to net.hlp and helpbox.hlp. Added an optional ax25 heard command. Uploaded Unix and Coherent files to UCSD. Reworked latter files to free up processor time when running NET. April 1993 Made several minor housekeeping changes relating to AX.25 queuing and memory management. Completed the Unix telunix code. Caused incoming telnet, AX.25 and NET/ROM terminal sessions to automatically activate. Added a send message command to communicate with mailbox users. July-December 1993 Helped Bob Brose, N0QBJ, add OS9/OSK portability to the files. Added NOS type AX.25 segmentation, smoothed out the AX.25 LAPB process to eliminate unnecessary frames by making T2 really work, corrected an error in MS-DOS clock handling at midnight, corrected a couple of errors related to telnet uploading and absent smtp directories. Enabled ability to do AX.25 V1 protocol. Replaced earlier "ROSE trap" with a simpler method of handling spurious I frames. Wrote some advice in Chapter 5 for NOS users who can't figure out how to use ROSE. Incorporated in MS-DOS the Cute incoming telnet session video available in the Unix version, while extending it to the AX.25 and Netrom sessions. I made a special effort to modernize NET's look and simplify its operation, for example: Made several cosmetic changes to screen reports and simplified some commands, specifically those that required typing computer addresses, ugh!. Made the trace command a little simpler and maybe more useful by adding an "info only" switch to it. Added message of the day capability to telnet and mailbox chat sessions. Added file system checking, which reports information on incorrect setup, and even stops NET if critical errors detected. Made as many defaults as possible match typical amateur radio requirements so NET can be started in a fully functional state with only four configuration commands and six start commands in autoexec.net. (It only needs to know the AX.25 call sign, the IP address, the host name, and have the serial port attached.) Some command changes that were made to improve consistency (e.g. yes|nos were changed to on|offs) and might affect previous autoexec.nets. Netrom verbose is no longer included unless you compile a custom NET for a switch application. See Chapter 6 for current command syntax. In the Unix version, created some client-server stubs that users can apply to custom applications. Also made the shell command work by spawning a child process for it while NET continues to run in the background. I may make some stub processes for the MS-DOS version in a future version. Reduced NET's executable size (MS-DOS) between k29 and k34 by 6200 bytes. Did some general cleanup work on BM while modifying it to compensate for flawed headers created by some other (un-named) mailers. .pa This Documentation In the interest of portability, (and to save file space) this is supplied as a set of nine ASCII text files with no formatting information except some explicit page breaks (.pa in the left margin) where there would otherwise be an ungraceful break in a table, etc. All text is flush left margin except certain indented and centered lines. Maximum line length is 76 characters, which includes spaces at end of lines. A print formatting utility, pagenet.exe, is included if you want to use it. Pagenet strips trailing line spaces but your word processor print facility may not.) Rather than use form feeds, it adds lines to the top and bottom of each page to make 66 lines per page. To obtain a formatted print file, use any word processor, or use pagenet. Pagenet was written assuming you would be using an 80 column printer, with 8 1/2 x 11 page size, six lines per inch, and that you would start the printer with the print head on a sheet perforation. (Tell your laser printer you are doing all 66 lines.) Source code for pagenet.exe is probably included if you want to do it differently. To make a formatted file containing this preface, use the command: pagenet < chapter0 >chapter0.prn To print chapters, you can either keep track of accumulated page numbers or page each chapter individually. To start the first printed page with number n, use the switch -pn. I recommend using the second option. To make a print file for Chapter 1 and number its first page 1-1, use the command: pagenet -c1 < chapter1 >chapter1.prn To go directly to a printer, redirect output to the printer with the command: pagenet -c1 < chapter1 >prn For a larger left margin that permits hole punching, add the switch command, -mn to add n spaces. Maximum left margin should be no greater than 5 spaces (-m5). For example, to print chapter 2, and include a 5 character left margin, and print to the printer, use: pagenet -c2 -m5 < chapter2 >prn If you interrupt a print and want to resume in the middle of a chapter, say with page 10, you can add the -p10 switch anywhere before the first redirection symbol. If you get caught in pagenet.exe by running it without any redirected files, use a Ctrl-Z and RETURN (ENTER) to exit. For the benefit of the forgetful: pagenet ? will refresh your memory. For a quick start, I suggest you only print the preface (chapter0) and Chapters 2 through 6. You can print the others later to read while sitting around a cozy fireplace some winter evening. If you are fortunate to have Wordstar, you might try using it to print this thing. I print replacement pages by using .rm 74, .mt 1, .mb 4, setting the printer to do letter gothic, and letting 'er rip. Notes on Software Version This NET is based on the kit that I got at Dayton in 1989. Initially, the only thing I did it was fix bugs that crashed it and add some two-way functionality to the AX.25 - NET/ROM Mailbox. I kept it small so it could live on my MS-DOS computer along with CBBS and other things running under DESQview, and run under Unix on my AT&T 3B2 without maintaining two sets of files. Subsequently, I added things to suit my particular station, like the DRSI PC*PA packet driver (backed out of NOS and made to work correctly) and corrected non-functional things like the packet driver. I added a simple method for getting on-line help without reaching for the book. I prepared this documentation with the first TAPR distribution. I understand that all current development work is being done on NOS, but for my purposes, I was happier with a smaller and well behaved program that would excel in its intended function (TCP/IP over amateur radio), that would co-exist on the MS-DOS computer with other programs and run as well on the Unix computer. NET makes a fine (relatively) little IP engine on these machines and though not designed as a Unix application works very well. A recent challange to make IP available to the G8BPQ scheme was met very well with NET and I tested it on an XT with two other applications running under Desqview. Once it was apparent that no one else cared what I did with NET, I felt free to re-organize and simplify things whenever I saw an advantage. There is now considerable internal difference between current and original versions of NET, though the fundamental structure remains unchanged. NET is perhaps 30k smaller than when I started and has enormously increased in performance. I attribute this to my narrow design requirements, and time to piddle with it. I have recently (11/93) made the observation that while NOS is a BBS with incidental TCP/IP, NET is still TCP/IP with an incidental mailbox, heh! I strongly recommend NOS to those who suggest adding features NET that are outside of my design goals. I am very conservative about modifying code and its possible side effects so I give each modification a reasonable test before letting the local operators wring it out. Each change, however minor, bumps the sub version number (e.g. from j67 to j68) so I can diagnose problems possibly caused by changes. Within each version there are compile time options that net reports on the startup screen. Current net version when I release this will be k. Current BM version is 3.3.1m. On MS-DOS, I personally run the Multiport code with the multidrop KISS driver and an experimental COMBIOS driver, making a total of four logical asy ports, two of them provided by the multidrop KISS driver. Source code for the Unix/Coherent/OS9-68K version is being maintained on ucsd.edu in /hamradio/packet/tcpip/k5jb directory. Disks containing the MS-DOS executables, some setup help files, and source code are maintained in the Tucson Amateur Packet Radio (TAPR) library. Latest notes will be contained in a file, readme.1st, included with the MS-DOS executables. An LHA archive, etcfiles.lha, contains configuration and other text files that work with net and bm. Joe Buswell, K5JB, 44.78.0.2 Packet mail: K5JB@K5JB.OK Paper mail: 3312 N. Idylwild, Midwest City OK 73110-1643 Internet address information provided on request. Login on my personal computer can be arranged but it is much more cost effective to send me a floppy and mailer than to download files long distance. .pa Crude Index Revised December 1993 (I quit trying to keep up with page numbers as I edited this thing, so hopefully you can find your way from the paragraph numbering.) 1. TCP/IP -- History and Design Philosophy 1.1. An Overview of the TCP/IP Protocol Family 1.1.1. Acknowledgment 1.1.2. Introduction 1.1.3. What is TCP/IP? -- What's in it for me? 1.1.3.1. FTP - File Transfer Protocol 1.1.3.2. TELNET - Remote Login. 1.1.3.3. SMTP - Simple Mail Transfer Protocol 1.1.3.4. Other services - not implemented here 1.1.4. General description of the TCP/IP protocols 1.1.5. The IP level 1.1.6. The Ethernet level 1.1.7. Well-known sockets and the applications layer 1.1.8. An example application: SMTP 1.2. Protocols other than TCP: UDP and ICMP 1.3. Keeping track of names and information: the domain system 1.4. Routing 1.5. Details about Internet addresses: subnets and broadcasting 1.6. Datagram fragmentation and reassembly 1.7. Ethernet encapsulation: ARP 1.8. Getting more information 1.9. Overview of the KA9Q Internet Package 2. Installation 2.1. What an IP Address Is, and How to Get One 2.2. Configuring a TNC for TCP/IP Operation 2.2.1. TAPR TNC-1 and Clones 2.2.2. TAPR TNC-2 and Clones 2.2.3. AEA PK-232 and PK-87 2.2.4. DRSI PC Packet Adapter 2.2.5. Kantronics TNC's 2.2.6. Optional Multidrop KISS driver 2.2.6.1. Multidrop KISS explanation 2.2.7. PacComm PC-100 Card, EAGLE, HAPN, etc. 2.3. IBM PC and Clones 2.3.1. Serial Data Cable 2.3.2. MS-DOS Quick Start -- File Structure 2.3.2.1. The AUTOEXEC.NET File 2.3.2.2. The FTPUSERS File 2.3.2.3. The HOSTS.NET File 2.3.3. Other files you can add later. 2.3.3.1. The alias and bm.rc files 2.3.3.2. The net.hlp file. 2.3.3.3. The helpbox.hlp file 2.3.3.4. Finger files 2.3.3.5. Mulport files - digilist and exlist 2.4. DESQview Setup 2.5. Unix 2.5.1. Telunix (remote login) 2.5.2. Telserv (general purpose server) 2.5.3. NET and Unix Multi-tasking 2.6. Macintosh 3. Taking NET for a Test Drive 3.1. Trying out the AX.25 Support 3.2. Trying out the NET/ROM Support 3.3. Trying out the Finger Command 3.4. The Telnet Command 3.5. The FTP Command 3.6. The Mail System 3.7. Tracing and Status Commands 3.8. Unix and shell layers 4. The Mail System 4.1. Installing and Using BM 4.1.1. Directory Structure 4.1.2. Configuration File 4.1.2.1. edit 4.1.2.2. folder 4.1.2.3. fullname 4.1.2.4. host 4.1.2.5. maxlet 4.1.2.6. mbox 4.1.2.7. mqueue 4.1.2.8. record 4.1.2.9. reply 4.1.2.10. screen [bios|direct] 4.1.2.11. smtp 4.1.2.12. user 4.1.2.13. wordwrap 4.1.2.14. zone 4.1.2.15. Example BM.RC File 4.1.3. The alias File 4.1.4. \spool\mqueue\sequence.seq 4.2. Environment - Timezone 4.3. Commands 4.3.1. Main Menu Commands 4.3.1.1. b [] 4.3.1.2. d [] 4.3.1.3. f [] 4.3.1.4. h 4.3.1.5. k 4.3.1.6. l 4.3.1.7. m [] 4.3.1.8. n [] 4.3.1.9. N 4.3.1.10. p 4.3.1.11. q 4.3.1.12. r [] 4.3.1.13. s [] [] 4.3.1.14. u 4.3.1.15. w 4.3.1.16. x 4.3.1.17. . 4.3.1.18. ! 4.3.1.19. $ 4.3.1.20. ? 4.3.1.21. msg# 4.3.2. Text Input Commands 4.3.3. Command Line Options BM may be invoked as follows: 4.4. Technical Information 4.4.1. Outbound Mail Queue File Formats 4.4.2. Standards Documents 5. Other Things: NET/ROM, Finger, Mulport, Mbox, Datagrams, V Circuit and AX.25 Segmentation 5.1. NET/ROM Services 5.1.1 Setting up NET/ROM 5.1.1.1 The NET/ROM Interface 5.1.1.2. Tracing on the NET/ROM Interface 5.1.1.3. Routing Broadcasts 5.1.1.4. The NET/ROM Routing Table 5.1.1.5. The Importance of the Routing Table 5.1.1.6. Interfacing with NET/ROMs Using Your Serial Port 5.1.1.7. The Time to Live Initializer 5.1.1.8. Using NET/ROM Support for IP 5.1.2. The NET/ROM Transport Layer 5.1.2.1. Connecting via NET/ROM Transport 5.1.2.2. Displaying the Status of NET/ROM Connections 5.1.2.3. NET/ROM Transport Parameters 5.1.3. Where to go for More Information 5.1.4. About the Code 5.2. The Finger Server (to put it on someone) 5.3. Mulport -- Run your own router! 5.3.1. Mulport planning and setup 5.3.2. Digilist file 5.3.3. Exlist file 5.3.4. Mulport Rules 5.4. AX.25 and NET/ROM Mailbox 5.4.1. A two way communication 5.4.2. Mbox File placement. 5.4.3. Mbox user commands 5.5. Virtual Circuits and Datagrams 5.6. ROSE Transport 5.7. AX.25 Segmentation 6. NET Command Reference 6.1. Startup 6.2. Console Mode 6.3. Commands - Syntax 6.3.1. 6.3.2. ? 6.3.3. ! 6.3.4. # 6.3.5. arp 6.3.5.1. arp add ether|ax25|netrom|vax25 6.3.5.2. arp drop ether|ax25|netrom|vax25 6.3.5.3. arp publish ether|ax25|netrom|vax25 6.3.6. attach