home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / Other / Coherent / DemonArchives / docs / tcp-ip-pc.z / tcp-ip-pc
Encoding:
Text File  |  1993-10-12  |  102.9 KB  |  3,243 lines

  1. Archive-name: ibmpc-tcp-ip
  2.  
  3. comp.protocols.tcp-ip.ibmpc:
  4. FAQ Posting, 10/1/93
  5.  
  6. Unless otherwise stated, the views expressed herein are my own.  Last
  7. time I looked, I had not been appointed official spokesperson of any
  8. of the following:
  9.  
  10.     The Planet Earth
  11.     The U.S.Government
  12.     The State of California (not so good)
  13.     The University of California, Berkeley
  14.     The City of Berkeley (bringing you Riot of the Week)
  15.     Any major or minor breakfast cereal (not even oatmeal!)
  16.     
  17. This FAQlet will be posted bi-weekly. In between it will be
  18. available from the FTP archive on netcom1.netcom.com,  
  19. get /pub/mailcom/IBMTCP/ibmtcp.zip.
  20.  
  21. ************** Legalese  **************
  22.  
  23. This FAQ is presented with no warranties or guarantees of ANY KIND
  24. including correctness or fitness for any particular purpose.  The
  25. author(s) of this document have attempted to verify correctness of the
  26. data contained herein; however, slip-ups can and do happen.  If you use
  27. this data, you do so at your own risk.
  28.  
  29. *********** Citation entry  ***********
  30.  
  31. This FAQ may be cited as:
  32.  
  33.   Aboba, Bernard D.(1993) "comp.protocols.tcp-ip.ibmpc Frequently
  34.   Asked Questions (FAQ)" Usenet news.answers, available via 
  35.   file://netcom1.netcom.com/pub/mailcom/IBMTCP/ibmtcp.zip, 
  36.   51 pages.
  37.  
  38.  
  39. *********** Change History  ***********
  40.  
  41. Changes from 9/16/93 posting:
  42. Various updates and corrections. 
  43.  
  44. *********** Related FAQs ***************************
  45.  
  46. There is also a FAQ available on features of TCP/IP
  47. Packages for DOS and Windows. This is available at:
  48. ftp.cac.psu.edu:/pub/dos/info/tcpip.packages. 
  49.  
  50. The Windows Sockets Faq, is posted to alt.winsock, and
  51. is available at:
  52. SunSite.UNC.EDU:/pub/micro/pc-stuff/ms-windows/winsock/FAQ
  53.  
  54. *********** EXAMPLE CONFIGURATION FILES  ***********
  55.  
  56. Many thanks to Dave Fetrow (fetrow@biostat.washington.edu)
  57. for creating an archive of setup files. The archive is 
  58. particularly oriented toward sets of applications that 
  59. are somewhat tricky, such as combinations involving 
  60. different driver sets, mixtures of Novell, TCP/IP, 
  61. and W4WG, etc. 
  62.  
  63. Please include not only the setup and configuration files
  64. but some directions. Comments included with the setup files
  65. are highly desirable. The files can include your name if you
  66. desire. 
  67.  
  68. Please mail submissions to ftp@ftp.biostat.washington.edu. 
  69.  
  70. The archive itself is located at ftp.biostat.washington.edu,
  71. /ftp/pub/msdos/network.setups. 
  72.  
  73.  
  74. TABLE OF CONTENTS
  75.  
  76. A. Components of a TCP/IP solution
  77.  
  78. A-1. What do I need to run TCP/IP on the PC?
  79. A-2. What are packet drivers?  Where do I get them?
  80. A-3. What is Winsock?  Where can I get it?
  81. A-4. What publicly distributable TCP/IP applications are there
  82.      for DOS?  Windows?
  83. A-5. What software is available for doing SLIP?  Compressed SLIP?
  84.      PPP?  For DOS?  For Windows?
  85. A-6. Where can I get ping?  traceroute?
  86. A-7. How do I install packet drivers for Windows applications?
  87. A-8. When do I need to install  WINPKT?
  88. A-9. How to do I run both WinQVT and ODI?
  89. A-10. Is it possible to use BOOTP over SLIP?
  90. A-11. How do SLIP drivers work? 
  91. A-12. When do I need to install PKTMUX?
  92. A-13. Can NDIS be used underneath multiple protocol stacks of the same type?
  93. A-14. Is there an NDIS over packet driver shim? 
  94. A-15. How do I run NetBIOS over TCP/IP? 
  95. A-16. How do I get my BBS to run over TCP/IP? 
  96. A-17. Sample Stick Diagrams
  97. A-18. Strange and wonderful configuration files submitted by readers
  98.  
  99. B. Hints for particular packages
  100.  
  101. B-1. What do I need to know before setting up SLIP or PPP?
  102. B-2. How do I configure SLIPDISK?
  103. B-3. What version of KA9Q should I use and where do I get it?
  104. B-4. How do I configure KA9Q as a SLIP connection?
  105. B-5. How do I configure KA9Q as a router?
  106. B-6  How do I get KA9Q to support BOOTP?
  107. B-7. How do I get DesQView X to run over the network?
  108. B-8. Why is NFS so slow compared with FTP?
  109. B-9.  How do I get KA9Q to support PPP?
  110. B-10. How do I get KA9Q to support SLIP dialin?
  111. B-11. Where can I get information on running Novell and TCP/IP
  112.       concurrently? 
  113. B-12. What Novell TCP/IP NLMs are out there and how do I get them
  114.       to work? 
  115. B-13. How do I get a telecom package supporting Int 14h redirection
  116.       to work? 
  117. B-14. How do I run SLIP with Windows For Workgroups TCP/IP?
  118. B-15. How do I get Windows For Workgroups to work alongside Novell?
  119. B-16. NCSA Telnet doesn't reassemble fragments. What should I do?
  120.  
  121. C. Information for developers
  122.  
  123. C-1. What publicly distributable TCP/IP stacks are there that I can
  124.      use to develop my own applications?
  125. C-2. Where can I get a copy of the Windows Sockets FAQ?
  126.  
  127.  
  128. --------------------- FAQlet Begins Here ---------------------------
  129.  
  130. A. Components of a TCP/IP solution
  131.  
  132. A-1. What do I need to run TCP/IP on the PC?
  133.  
  134. To run TCP/IP on the PC you will need:
  135.  
  136. * Appropriate hardware, such as:
  137.  
  138.     Ethernet card
  139.     Token Ring card
  140.     AppleTalk card
  141.     Serial Port
  142.    
  143.  
  144.   Any other network card with a packet driver or NDIS or ODI driver,
  145.   (such as Arcnet), will also work.  If your card supports NetBIOS,
  146.   this is also acceptable, since you can run a packet-driver-over-
  147.   NetBIOS shim.
  148.  
  149. * Drivers for your hardware.
  150.  
  151.   Your card probably came with one or more of the following drivers:
  152.  
  153.     Network Device Interface Specification (NDIS) drivers
  154.       [spec. by 3Com & Microsoft, used by LAN Manager, Windows
  155.       for Workgroups, and Windows NT. LAN Manager uses NDIS 2.0,
  156.       Windows NT uses 3.0, and WFW supports 2.0 and will support 
  157.       3.0]
  158.     ODI Drivers [spec. by Novell, abbreviation for Open DataLink
  159.       Interface]
  160.     Packet Drivers [spec. by FTP Software]
  161.    
  162.   TCP/IP stacks have been written for each of these driver interfaces, 
  163.   so the important thing is whether your chosen stack is compatible 
  164.   with the interface available for your card.
  165.  
  166.   A shim is software that runs on top of one set of drivers to
  167.   provide an interface equivalent to another set. This is useful,
  168.   for example,if you are looking to run software requiring an
  169.   NDIS driver(such as Chameleon NFS) alongside software
  170.   requiring a packet driver interface (such as KA9Q, Gopher, Popmail,
  171.   NCSA Telnet, etc.), or run software intended for, say, a packet
  172.   driver over an NDIS driver instead.
  173.  
  174.   Shims are available to run packet drivers over NetBIOS, ODI,
  175.   or NDIS, in order to run software expecting a packet driver over
  176.   NDIS, ODI, or NetBIOS instead. 
  177.  
  178.  
  179. * A TCP/IP protocol stack.
  180.  
  181.   The TCP/IP protocol stack runs on top of the driver software, and
  182.   uses it to access your hardware. If you are running a TCP/IP
  183.   protocol stack that requires drivers that aren't available for your
  184.   hardware, you're in trouble. Check into this before purchasing!
  185.  
  186.  
  187. * If running Windows applications that require it, WINSOCK.DLL. 
  188.  
  189.  
  190.   Windows Sockets is a sockets interface which was created as a 
  191.   Windows DLL. Each  TCP/IP implementation requires its own version 
  192.   of Windows Sockets. There is not yet a freely available Windows
  193.   Sockets implementation released yet, although Trumpet WinSock is
  194.   currently in Alpha test. WINSOCK.DLL provides 16-bit support; 
  195.   WSOCK32.DLL provides 32-bit support. 
  196.  
  197.    
  198. * Applications software.
  199.  
  200.   Although most of us in this newsgroup seem to spend our time
  201.   looking for working combinations of applications, WINSOCK.DLL,
  202.   Windows Sockets compliant TCP/IP implementations, shims, 
  203.   drivers, and hardware, ultimately your goal is eventually to 
  204.   run an application successfully. If and when that ever happens, 
  205.   please send me a note, so I can add it to this FAQlet.
  206.  
  207.  
  208. A-2. What are packet drivers?  Where do I get them?
  209.  
  210. Packet drivers provide a software interface that is independent of the  
  211. interface card you are using, but NOT independent of the particular 
  212. network technology. As Frances K. Selkirk (fks@vaxeline.ftp.com) notes:
  213.  
  214. "That's one reason they're easier to write than ODI drivers! If you
  215. write a class three (802.5 Token Ring) driver, you will need to use
  216. software that expects a class three driver, not software that expects
  217. a class 1 (DIX ethernet) driver. There are a few drivers that fake class 1. 
  218.  
  219. I believe only class 1 and class 6 (SLIP) drivers are supported by 
  220. freeware packages."
  221.  
  222. The chances are fair that your Ethernet card came with a packet
  223. driver, and if so, you should try that first. If not, then you
  224. can try one of the drivers from the Crynwr collection (formerly
  225. called the Clarkson Drivers). See the Resource listing for info.
  226.  
  227. For 3COM drivers, try ftp ftp.3com.com. For technical information,
  228. try info@3com.com. For marketing and product info, try
  229. leads@hq.3mail.3com.com.The packet driver specification is available
  230. from vax.ftp.com in packet-d.ascii
  231.  
  232.  
  233. A-3. What is Windows Sockets?  Where can I get it?
  234.  
  235.   The idea for Windows Sockets was born at Fall Interop '91, during a
  236.   Birds of a Feather session.  
  237.  
  238.   From the Windows Sockets specification:
  239.   [courtesy of Mark Towfiq, towfiq@Microdyne.COM]:
  240.  
  241.  
  242.     The Windows Sockets Specification is intended to provide a
  243.     single API to which application developers can program and
  244.     multiple network software vendors can conform. Furthermore, in
  245.     the context of a particular version of Microsoft Windows, it
  246.     defines a binary interface (ABI) such that an application
  247.     written to the Windows Sockets API can work with a conformant
  248.     protocol implementation from any network software vendor.
  249.  
  250. Windows Sockets will be supported by Windows, Windows for Workgroups,
  251. Win32s, and Windows NT. It will also support protocols other than TCP/IP.
  252. Under Windows NT, Microsoft will provides Windows Sockets support over
  253. TCP/IP and IPX/SPX. DEC will be implementing DECNet. Windows NT will 
  254. include mechanisms for multiple protocol support in Windows Sockets, 
  255. both 32-bit and 16-bit.
  256.  
  257. As Mark Towfiq notes:
  258. "The next rev. of Winsock will not be until towards the end of 1993.  
  259. We need 1.1 of the API to become firmly settled and implemented first."
  260.    
  261. Mark continues:
  262.     "Files and information related to the Windows Sockets API are
  263.      available via FTP (user: "anonymous", password: your e-mail
  264.      address) on the host SunSite.UNC.EDU, in
  265.      /pub/micro/pc-stuff/ms-windows/winsock, which is a mirror of
  266.      /pub/winsock on Microdyne.COM (SunSite has a much
  267.      faster connection to the Internet, so you are advised to use
  268.      that).
  269.  
  270.      If you do not have FTP access to the Internet, send a message
  271.      with the word "help" in the body to either
  272.      ftpmail@SunSite.UNC.Edu, or ftpmail@DECWRL.DEC.Com, to obtain
  273.      information about the FTP to Mail service there."
  274.  
  275.   Alternative sources for the Windows Sockets specification include
  276.   rhino.microsoft.com (an FTP server running NT), as well as the
  277.   Microsoft forum on CompuServe (go msl).
  278.   
  279.   Currently NetManage (NEWT), Distinct, and Frontier are shipping
  280.   Winsock TCP/IP stacks. Wollongong and FTP are in beta. If you are
  281.   looking for a Winsock.dll, you should first contact your TCP/IP
  282.   stack vendor. Windows NT and TCP/IP for Windows for Workgroups are
  283.   currently in beta from Microsoft. 
  284.  
  285.   Peter Tattam is alpha-testing a shareware Windows Sockets compliant
  286.   TCP/IP stack. If you're interested in helping with the testing, you 
  287.   can obtain it via ftp ftp.utas.edu.au, cd /pc/trumpet/winsock, 
  288.   get winsock.zip, winpkt.com. 
  289.  
  290. A-4. What publicly distributable TCP/IP applications are there for
  291.      DOS?  Windows?
  292.  
  293. Right now there are a wealth of publicly distributable TCP/IP
  294. applications running under DOS.  The situation is not as good under
  295. Windows, although things are developing fast.
  296.  
  297. See the Resource listings for information.
  298.  
  299.  
  300. A-5. What software is available for doing SLIP?  Compressed SLIP?
  301.      PPP?  For DOS?  For Windows?  For OS/2?
  302.  
  303. For SLIP, I recommend the SLIPDISK distribution (see resources section 
  304. for listing), since this supports a suite of applications.  However, 
  305. this does not support Van Jacobson compression.
  306.  
  307. KA9Q supports SLIP/CSLIP/PPP, but unfortunately can not be used as a
  308. TCP/IP protocol stack to run other apps.
  309.  
  310. [Are there any PPP supporting drivers out there?]
  311.  
  312. There is a special version of NCSA Telnet for PPP, available from
  313. merit.edu, /pub/ppp directory.
  314.  
  315. IBM is reportedly shipping an OS/2 CD-ROM with beta versions of their
  316. TCP/IP package, for a very good price.  The CD includes their TCP/IP
  317. stack, X-Windows implementation, and TCP/IP developer's kit.  Please
  318. see the FAQ from comp.os.os2.networking for details.
  319.  
  320. IBM, FTP Software, and Netmanage also offer SLIP support in their
  321. products. See the resource listings for details.  
  322.  
  323.  
  324. A-6. What diagnostic utilities are available to find problems with
  325. my connection?  Where can I get them?
  326.  
  327. Frequently used diagnostic utilities include ifconfig (checks the
  328. configuration of the network interfaces), ping (tests IP layer
  329. connectivity), traceroute (traces the route that a packet takes
  330. between two sites), netstat (checks the routing table), tcpdump
  331. (protocol analyzer), arp (looks at the IP to Ethernet address
  332. mappings).
  333.  
  334. KA9Q includes ifconfig, ping and traceroute functions.  In KA9Q hop
  335. check is the equivalent of traceroute.  The Trumpet TCP/IP stack also
  336. has a hopchk2 command that is a traceroute equivalent.
  337.  
  338. The DNPAP tools (check the resource guide for listings) include
  339. Ethernet packet catchers, networking monitors and a network host
  340. profiler.
  341.  
  342. A-7. How do I install packet drivers for Windows applications?
  343.  
  344. The secret is to load the packet driver, then run Windows.
  345.  
  346. A-8. When do I need to install Winpkt?
  347.  
  348. James Harvey (harvey@iupui.edu) notes:
  349. Winpkt is only useful for DOS applications with built-in TCP/IP
  350. stacks. When an application registers with a packet driver TSR to 
  351. receive packets of a specified protocol type, one of the things it has to 
  352. pass in the call is an address of a routine in the application to call 
  353. when the packet driver has a packet to pass back to the application.  
  354. In the case of an application running in 386 enhanced mode in a DOS 
  355. shell under Windows using a packet driver loaded in real mode before 
  356. Windows was loaded, the packet driver must ensure that
  357. Windows has the application in memory when it does the callback, otherwise
  358. the callback jumps off into space and your system locks up.  WINPKT does a
  359. Windows system call to force the app into memory before the callback is done.
  360.  
  361.  
  362. Erick Engelke (erick@development.uwaterloo.ca) notes:
  363. Windows in enhanced mode uses the protected mode of the
  364. 386 CPU to create multiple virtual machines.  Winpkt tells
  365. Windows to switch to the correct virtual machine before
  366. trying to pass up the packet.  This reduces the chances of
  367. Windows crashing.
  368.  
  369. A-9. How do I run both WinQVT/Net and ODI?
  370.  
  371. To do this, you need to install an ODI driver, and then use ODIPKT
  372. to provide a packet driver style interface to WinQVT/Net. If you
  373. are using other packet driver applications, you might also install
  374. PKTMUX as well. The arrangement looks like:
  375.  
  376.                               WinQVT/Net  Trumpt, NCSA Telnet, PC Gopher
  377.                                   \       /
  378.                                    \   WINPKT 
  379.                                     \   /
  380.                     PKTMUX (opt.,use if >1 TCP/IP app.)
  381.                                       |
  382.                                       |
  383.                     Novell            |
  384.                         \            /
  385.                       NETX         PKTINT 
  386.                           \        /
  387.                         IPXODI   ODIPKT
  388.                              \   /
  389.                               \ /
  390.                                |
  391.                         ODI driver and LSL
  392.                                |
  393.                           Ethernet Card
  394.  
  395. A-10. Is it possible to use BOOTP over SLIP?
  396.  
  397. Yes, but it is easier to use dynamic address assignment to get your IP address.
  398. This is where the SLIP server outputs your IP address before switching
  399. to SLIP. 
  400.  
  401. If you need BOOTP, then you should run a BOOTP server on the SLIP
  402. server so that it can tell which SLIP connection originated the
  403. request. Of course, the BOOTP server will ignore the hardware address
  404. of the request originator, but instead will keep track of the SLIP
  405. interface the request came in on. See the question on adding BOOTP to
  406. KA9Q for info on how to handle this on the PC. Under UNIX, you may
  407. have to add BOOTP capability to your slip driver, and rebuild the
  408. kernel. (Not recommended for the squimish). 
  409.  
  410.  
  411. A-11. How do SLIP drivers work?
  412.  
  413. Some TCP/IP applications are written to only support Class 1 (Ethernet)
  414. packet drivers, but do not support Class 6 (SLIP). For these applications, you
  415. need software to make the application think it is dealing with a class 1
  416. interface. This is done by adding fake ethernet headers to incoming 
  417.  
  418. SLIP packets and stripping the headers off outgoing packets. 
  419.  
  420.  
  421. A-12. When do I need to use PKTMUX?
  422.  
  423. PKTMUX is needed to allow you to use more than one TCP/IP stack at the same 
  424. time. This is useful if you have applications that require different stacks. 
  425. Note that you do not need PKTMUX to run different protocols, since packet 
  426. drivers only look at packets in the protocol they're designed to handle, 
  427. and therefore you can use more than one of these at a time without conflict. 
  428. You also don't need PKTMUX if all your applications use the same TCP/IP stack. 
  429.  
  430.  
  431. PKTMUX works by looking at outgoing datagrams, and caching information on 
  432. source and destination ports and addresses. Using this information, PKTMUX
  433. tries to sort incoming datagrams by TCP/IP stack. If it can't figure out
  434. which stack to send a datagram to (as might be the case if you were running
  435. a server application on a well-known port, and had not sent any outgoing
  436. packets yet), PKTMUX will send the datagram to all stacks. If all stacks
  437. do not complain about the datagram, PKTMUX will throw away the ensuing outgoing
  438. ICMP error message, assuming that one of the stacks correctly received
  439. the datagram. If all stacks complain, it will send a single ICMP message
  440. and throw the rest away.
  441.  
  442. While PKTMUX does its job very well, there are some situations that it cannot
  443. handle, such as port conflicts. If two applications open the same TCP port,
  444. chaos is inevitable, and there is little that PKTMUX can do to help. 
  445.  
  446.  
  447. A-13. Can NDIS be used underneath multiple protocol stacks of the same type?
  448. No. There is no equivalent to PKTMUX for NDIS.  
  449.  
  450. A-14. Is there an NDIS over Packet Driver Shim? 
  451. Joe Doupnik writes:
  452.  
  453. "No. Packet Drivers work by having an application register
  454. for a particular packet TYPE, such as 0800 for IP. NDIS does works much
  455. differently by offering a peekahead of every packet to applications in turn,
  456. a polling operation. The only way NDIS could gracefully sit on a PD would
  457. be to run the Packet Driver in all-types mode and let NDIS see all pkts
  458. not used by other clients. Needless to say, that's an undesirable situation.
  459. The quick solution, costing about US$100 (at least at my place,
  460. more at yours) is a second Ethernet board in the client together with a
  461. second IP address (most important, please)."
  462.  
  463. A-15. How do I run NetBIOS over TCP/IP?
  464.  
  465. NetBIOS over TCP/IP is discussed in RFCs 1001 and 1002. 
  466.  
  467. Assuming you don't need any of the extensions to RFC NetBIOS 
  468. Microsoft created to make NetBIOS work smoothly in a routed environment 
  469. (available only in their IP stack), you can choose from a wide variety of
  470. commercial vendors. For example, FTP Software's PC/TCP includes RFC NetBIOS support; Performance Technologies has a NetBIOS that runs over packet drivers,
  471. as does Accton (LANSoft). 
  472.  
  473. A-16. How do I get my BBS to run over TCP/IP?
  474.  
  475. First off, let's clarify what we mean by "over TCP/IP." Usually
  476. this means "accessible via Telnet." Be aware that doing this will
  477. not necessarily work well, since few BBSes have been tested running
  478. over TCP/IP. As a result you may experience frequent crashes, or
  479. abominable transfer rates. For example, I have seen
  480. transfer rates as low as 100 characters/second over a 14.4 Kbps
  481. PPP connection which routinely supports 1600 cps transfers with
  482. FTP.
  483.  
  484. This situation might be improved by running an FTP server instead. 
  485. This could be accomplished for example by running KA9Q in another
  486. window under DesQView, or by putting the files on an NFS-mounted
  487. drive, then using another machine as the FTP server. 
  488.  
  489. One way to hook up a multi-line BBS is to use a terminal server, 
  490. and hook up the BBS's serial ports to that. The disadvantage of this is that
  491. if your BBS is really big you will need multiple terminal servers
  492. which will each have their own domain names and TCP/IP addresses. 
  493. Confusing. 
  494.  
  495. Brian Clements of Murkworks has a better solution. This is to run
  496. a terminal server NLM. This can hook up BBSes of arbitrary size,
  497. all lines with a single TCP/IP address. This works along with
  498. a FOSSIL compatible communications driver. For info, contact him
  499. at bkc@murkworks.com. 
  500.  
  501. In this same vein, there is a line of TCP/IP FOSSIL drivers from
  502. Daniel J. Karnes (djk@tasp.tasp.net) of NMS & Systems Engineering,
  503. TASP Development Group, Silverado, CA 92676-0233, (909)245-2286. 
  504.  
  505. According to Daniel:
  506. "TASP installs in any IBM PC/AT/XT compatible system as a TSR and once
  507. resident provides an application transparent interface layer for several
  508. major networking protocols. TASP fully conforms to the FOSSIL specification,
  509. which means that it will work with any program that can talk to a FOSSIL,
  510. including Fido, WILDCAT!, PCBoard, Searchlight, and Waffle. 
  511.  
  512. TASP is easily installed and can operate totally independent of any other
  513. software. A user connects to TASP via a LAN, X.25 link or Internet SLIP
  514. line and then TASP communicates with the application as if it were a 
  515. modem. All the application need to is to make Int 14 function calls to
  516. talk to TASP. TASP can make use of the internal COM ports on your system,
  517. a multiport or multimodem board, or an ethernet card. "
  518.  
  519. It may also be possible to use Int 14h redirection, as supported by
  520. the WATTCP Int 14h redirection program (see below). 
  521. I haven't used this, but I have heard that it works with both WILDCAT!
  522. and QMODEM Pro. If you know differently, please let me know. 
  523.  
  524.  
  525. A-17. Stick diagrams
  526.  
  527. It has been proposed that we begin to collect some diagrams of working
  528. combinations of hardware, drivers, shims, stacks, and applications. I'm
  529. game, and have made a start below. If you've got some other exotic
  530. configuration that works (or if you've tried one of the configurations below
  531. and discovered it doesn't work, drop me a line).
  532.  
  533.    Running an individual DOS application under Windows
  534.  
  535.     NCSA telnet / DOS Trumpet / POPmail/ PC Gopher III
  536.                  |
  537.              DOS Session
  538.                  |
  539.              Windows 3.1
  540.                  |
  541.                WinPKT
  542.                  |
  543.             Packet driver or Shim
  544.                  |
  545.                 DOS 
  546.  
  547.  
  548. DOS Trumpet, NCSA Telnet, and WinQVT/Net over Ethernet under Windows
  549.  
  550.                                                 QVT/NET
  551.                                                    |
  552.      TRUMPET                    NCSA telbin        |
  553.        |                             |             |            
  554.      PKTDRV1                     PKTDRVn           |
  555.        |                             |             |
  556.      DOS Session                DOS Session    Windows Session
  557.        +-----------+-----------------+             |
  558.                    |                               |
  559.                    +                               |             
  560.              WINDOWS 3.1 .............        WINDOWS 3.1
  561.                    |                               |
  562.                    |                      PKTINT(QVT/NET own)
  563.                    |                               |
  564.                    |                           PKTDRVx
  565.                    +-------------------------------+            
  566.                PKTMUX n
  567.                    |                   
  568.           CryNwr Driver or SHIM
  569.                    |              
  570.                   DOS 
  571.  
  572. PC Gopher III, NCSA Telnet over CSLIP under Windows
  573.  
  574.  
  575.                                                 
  576.                                                    
  577.   PC Gopher III                 NCSA telbin        
  578.        |                             |                         
  579.      PKTDRV1                     PKTDRVn           
  580.        |                             |             
  581.      DOS Session                DOS Session   
  582.        +-----------+-----------------+             
  583.                    |                               
  584.                    +                                            
  585.              WINDOWS 3.1 
  586.                    |                               
  587.                    |                   
  588.                    |                               
  589.                    |                           
  590.                    +           
  591.                 PKTMUX n
  592.                    |                   
  593.                CSLIPPER
  594.                    |              
  595.                   DOS
  596.            |
  597.           Serial Port  
  598.  
  599. PC Gopher II and Novell on a LAN - Alternative I
  600.  
  601.                NOVELL
  602. PC Gopher        |
  603.   III            |
  604.    |             |
  605. DOS Session    NETX
  606.    |             |
  607.  Windows 3.1     |
  608.    |           PDIPX
  609.   WINPKT        /
  610.      \         /
  611.       \       /
  612.        \     /
  613.         \   /
  614.      Packet Driver
  615.           |
  616.      DOS
  617.           |
  618.      Ethernet card
  619.           |
  620.       Ethernet
  621.    
  622.  
  623. PC Gopher III and Novell on a LAN - Alternative II
  624.  
  625.                                    PC-Gopher III
  626.                       |
  627.                   DOS Session
  628.                       |
  629.                       Windows 3.1                 
  630.                                       |
  631.                                     WINPKT 
  632.                                       |
  633.                                       |
  634.                     Novell            |
  635.                         \            /
  636.                       NETX         PKTINT 
  637.                           \        /
  638.                         IPXODI   ODIPKT
  639.                              \   /
  640.                               \ /
  641.                                |
  642.                         ODI driver and LSL
  643.                    |
  644.                   DOS
  645.                                |
  646.                           Ethernet Card
  647.                    |
  648.                Ethernet
  649.  
  650. WinQVT/Net and PC Gopher II and Novell over a LAN - Alternative I
  651.  
  652. PC Gopher      
  653.   III 
  654.    |             Win QVT/Net      
  655.  PKTDRV1            |      
  656.    |                |   
  657. DOS session      Windows 3.1
  658.    |                |
  659. Windows 3.1      PKTINT (QVT/NET own)
  660.    |                |
  661.    |             PKTDRVn
  662.  WinPKT             |
  663.    |                |          NOVELL
  664.    +----------------+            |
  665.    |                             |
  666.    |                             |
  667.  PKTMUX n                      NETX
  668.    |                             |
  669.     \                          PDIPX
  670.      \                           |
  671.       \                          |
  672.        \                         |
  673.         \                        |
  674.      Packet Driver --------------+
  675.           |
  676.      DOS
  677.           |
  678.        Ethernet Card
  679.           |
  680.        Ethernet
  681.  
  682. WinQVT/Net, PC Gopher III and Novell over a LAN - Alternative II
  683.     
  684.                                              QVT/Net
  685.   PC Gopher III                 NCSA telbin        |
  686.        |                             |             |            
  687.      PKTDRV1        .....        PKTDRVn           |
  688.        |           |                 |             |
  689.      DOS Session                DOS Session    Windows Session
  690.        +-----------+-----------------+             |
  691.                    |                               |                                  
  692.            |                               |            
  693.              WINDOWS 3.1 .......................WINDOWS 3.1
  694.                    |                               |
  695.                    |                      PKTINT(QVT/NET own)
  696.                    |                               |
  697.                    |                           PKTDRVx
  698.                      |                               |      
  699.            |                           |
  700.            |                           |
  701.            |                           |
  702.            +------------------+------------+
  703.                       |
  704.                     Novell            |
  705.                         \            /
  706.                       NETX         PKTMUX n (use if >1 TCP/IP app)
  707.                           \        /
  708.                         IPXODI   ODIPKT
  709.                              \   /
  710.                               \ /
  711.                                |
  712.                         ODI driver and LSL
  713.                                |
  714.                   DOS
  715.                    |
  716.                           Ethernet Card
  717.                    |
  718.                Ethernet
  719.  
  720.  
  721.  
  722. PC Eudora and WinVN over CSLIP under Windows using Packet Driver
  723. supporting stack
  724.  
  725. [Whether the TCP/IP stack is loaded before or after
  726. Windows depends on the stack]
  727.  
  728.  
  729.  PC Eudora    WinVN
  730.      \         /
  731.       \       /
  732.        \     /
  733.         \   /
  734.        Winsock
  735.           |
  736.      Windows 3.1
  737.       |
  738.       TCP/IP Stack
  739.  (Supports Packet Drivers)
  740.           |
  741.        CSLIPPER
  742.           |
  743.          DOS
  744.           |
  745.       Serial Port
  746.       
  747. PC Eudora and WinVN supporting Ethernet and CSLIP under Windows 
  748. using NDIS supporting stack [Chameleon]
  749.  
  750. [Note: this diagram requires a stack that routes]
  751.  
  752.  PC Eudora    WinVN
  753.      \         /
  754.       \       /
  755.        \     /
  756.         \   /
  757.        Winsock
  758.           |
  759.       TCP/IP Stack
  760.           |
  761.       Windows v3.1
  762.           |
  763.       +------------------+
  764.       |                  |
  765.       NDIS Driver            |
  766.           |                  |
  767.          DOS              Serial Port
  768.           |
  769.      Ethernet card
  770.           | 
  771.       Ethernet
  772.  
  773.  
  774.  
  775.  
  776. PC Eudora and WinVN over CSLIP and Ethernet under Windows
  777.  
  778. [TCP/IP stack must support routing!]
  779.  
  780.  PC Eudora    WinVN
  781.      \         /
  782.       \       /
  783.        \     /
  784.         \   /
  785.        Winsock
  786.           |
  787.       Windows 3.1
  788.       |
  789.        TCP/IP Stack
  790.           |
  791.          / \
  792.         /   \
  793.   CSLIPPER Packet Driver
  794.       |       |
  795.       |       |
  796.    Serial  Ethernet card
  797.     Port      |
  798.               |
  799.            Ethernet
  800.  
  801. WinQVT/Net (Windows Sockets version) and WinVN under Windows
  802.  
  803.   WinVN, WinQVT/Net (Winsock version), HGopher, Cello, PC Eudora, etc. 
  804.           |               
  805.        Winsock
  806.           |            
  807.      TCP/IP Stack
  808.           |
  809.       Windows Session
  810.           |                 
  811.           |                 
  812.        Windows 3.1  
  813.           |
  814.           |
  815.           |
  816.   NDIS, Packet or ODI Driver
  817.           |
  818.          DOS
  819.           |
  820.        Ethernet
  821.  
  822. PC Eudora, WinVN, and PC Gopher III under Windows
  823.  
  824.          WinVN   PC Eudora
  825.             \     /
  826.  PC Gopher   \   /
  827.   III         \ /
  828.    |           |
  829.  WINPKT      WinSock
  830.      \         |
  831.       \    TCP/IP Stack
  832.        \     /
  833.         \   /
  834.      \ /
  835.       |
  836.         PKTMUX
  837.           |
  838.      Packet Driver
  839.           |
  840.          DOS
  841.           |
  842.      Ethernet Card
  843.           |
  844.        Ethernet
  845.  
  846. HGopher, PC Eudora, and WinVN Under Windows
  847. (Whether the TCP/IP stack is loaded before or
  848. after Windows depends on the stack)
  849.  
  850.        HGopher
  851.          |       
  852.          |
  853.    PC    |
  854.  Eudora  |  WinVN
  855.      \   |   /
  856.       \  |  /
  857.        \ | /
  858.         \|/
  859.        Winsock
  860.          |
  861.      Windows 3.1
  862.          |
  863.       TCP/IP Stack
  864.          |
  865.   NDIS, Packet, or ODI Driver
  866.          |
  867.         DOS
  868.          |
  869.    Ethernet Card
  870.          |
  871.      Ethernet
  872.  
  873. A-18. Strange and wonderful configuration files 
  874.  
  875. Robert Clift (clifta@sfu.ca) writes:
  876.  
  877. "I have WinQVT/Net 3.4, PC Gopher III (including NCSA DOS Telnet), KA9Q 
  878. (gopher and FTP server), and POPMail all running together under Windows 
  879. over PKTMUX on a 3C503 packet driver (and ehternet card)."
  880.  
  881. Here is the stick diagram (yikes!): 
  882.  
  883. Win/QVTNet 3.7     KA9Q Gopher      PC POPMail 3.2     PC Gopher III 1.01
  884. on interrupt 65    & FTP Server           \                    /
  885.     \                  |                    \                /
  886.       \                |                      \            /
  887.         \              |                        \        /
  888.           \          PKTDRV                       PKTDRV
  889.             \          |                            /
  890.               \      DOS Session               DOS Session
  891.                 \      |                        /
  892.                   \    |    -------------------       
  893.                     \  |  /                 
  894.                   Windows 3.1
  895.                        |
  896.                      PKINT
  897.                        |
  898.          PKTDRV on Int 65 no listeners set
  899.                        | 
  900.            PKTMUX 1.2 with 3 channels
  901.                        |
  902.           Clarkson 3C503 Packet Driver
  903.                    |
  904.                   DOS
  905.                        |
  906.            3Com Etherlink II/16 TP
  907.                        |
  908.                     Ethernet
  909.  
  910. NOTES:
  911.  
  912. Win/QVTNet must be loaded as the very first Windows application and must be 
  913. kept operating as long as your are in Windows.  It appears that its TCP/IP 
  914. stack does some strange things when it disconnects and kills access to the 
  915. actual packet driver.
  916.  
  917. I run PC gopher and POPMail alternatively, so they share one channel which 
  918. is allocated via PKTDRV before running the application and deallocated 
  919. after the application is finished (I usually throw in a reset command to 
  920. PMTMUX as well just to be safe).
  921.  
  922. To explain what is happening (as best I can since a lot of this came from 
  923. experimentation):
  924.  
  925. 1.  The packet driver is loaded
  926. 2.  PKTMUX is run over the packet driver in order to multiplex it (in this 
  927.     case three channels).
  928. 3.  A virtual packet driver is loaded for Win/QVTNet on interrupt 65 and 
  929.     the packet driver is told that it is not to listen for any server 
  930.     requests.
  931. 4.  The PKINT shim is loaded over top of the virtual packet driver
  932. 5.  Start Windows and run Win/QVTNet as the first application, it must be 
  933.     kept running throughout the Windows session.
  934. 6.  Load a virtual packet driver from a DOS session and start KA9Q.  I use 
  935.     the following batch file to do this:
  936.  
  937.          c:\network\pktdrv 63 /l
  938.          h:
  939.          cd \
  940.          net091b
  941.          c:\network\pktdrv 63 /uu
  942.          c:\network\pktmux /r
  943.  
  944. 7.  Load a virtual packet driver and run PC Gopher or POPMail as needed.  I 
  945.     use the following batch files for PC Gopher and POPMail respectively:
  946.  
  947.          c:\network\pktdrv 63
  948.          h:\goph-cli\gopher /T=h:\goph-cli\text /X=h:\goph-cli\binary
  949.          c:\network\pktdrv 63 /uu
  950.  
  951.  
  952.          c:\network\pktdrv 66 /c
  953.          h:\popmail\popmail /noems
  954.          c:\network\pktdrv 66 /uu
  955.  
  956. 8.  The only problem seems to be that the NNTP module in Win/QVTNet will 
  957.     not operate correctly if POPMail is operating.  Otheriwse it seems to 
  958.     work okay without too many problems.
  959.  
  960. B. Hints for particular packages
  961.  
  962. B-1. What do I need to know before setting up SLIP or PPP?
  963.  
  964. Before setting up your SLIP or PPP connection, you should
  965. have available the following information:
  966.  
  967. * The domain name and TCP/IP address of your host.
  968. * Whether your TCP/IP address will be assigned statically,
  969.   dynamically, or from the server.
  970. * The domain name and TCP/IP address of your machine (if you are not
  971.   configuring the address dynamically or via BOOTP)
  972. * The domain name and TCP/IP address of the primary and secondary
  973.   Domain Name Server.
  974. * The subnet mask.
  975. * The domain name and TCP/IP address of an NNTP server.
  976. * Whether your host supports POP, and if so, what version.
  977. * Whether the host supports compressed or uncompressed SLIP, or PPP.
  978. * The size of the Maximum Receivable Unit (MRU). 
  979.  
  980.  
  981. Do not attempt to connect to your host before you have this
  982. information, since it will just waste your time and money, and may
  983. cause problems for the network.  In particular, do not attempt to
  984. initiate a connection using a made up TCP/IP address! It is possible
  985. that your made-up address may conflict with an existing address.  
  986.  
  987. This is probably the quickest way to get people very angry at you.
  988.  
  989. Static addressing means that your TCP/IP address will always
  990. be the same.  This makes it easy to configure your setup files.
  991. Dynamic addressing means that the host will send you a message
  992. containing your TCP/IP address when you log on. This can be
  993. problematic if your software doesn't support grabbing the address
  994. and inserting it into the setup files. If not, then you may have
  995. to edit your setup files every time you log on. Yuck!
  996.  
  997. Chameleon NFS includes a version of SLIP which can handle dynamic
  998. addressing. The most recent version of Novell's Lan Workplace for
  999. DOS does as well. 
  1000.  
  1001. If your software supports Bootstrap Protocol (BOOTP), then you can
  1002. also determine your address by retrieving it from the BOOTP server.
  1003. PPP also supports server assignment of TCP/IP addresses.
  1004.  
  1005.  
  1006. B-2. How do I configure SLIPDISK?
  1007.  
  1008. SLIPDIAL is part of the SLIPDISK package for the PC, available via
  1009. anonymous FTP to boombox.micro.umn.edu, get /pub/slipdial/slipdisk/slipdisk.zip. 
  1010.  
  1011. It supports uncompressed SLIP via the UMSLIP driver, and is compatible 
  1012. with versions of telnet, gopher, popmail, and ftp included in the package.
  1013. However, it is possible to use CSLIPPER with it instead.This package includes
  1014. the PHONE dialer. 
  1015.  
  1016. From Ashok Aiyar, ashok@biochemistry.cwru.edu:
  1017.  
  1018. PHONE Script Files:
  1019.  
  1020. PHONE comes with several scripts (for various modems) and for the
  1021. University of Minnesota Terminal server built into it.  The command
  1022. PHONE WRITE writes these scripts to an ASCII file called PHONE.CMD,
  1023. which can be edited to your needs (modem and slip server)
  1024.  
  1025. The documentation that accompanies PHONE, provides good instructions on
  1026. writing script files to get PHONE to dial SLIP servers other than
  1027. the University of Minnesota server.  For example here is a script
  1028. that I use to dial a CISCO server at the University that I attend.
  1029.  
  1030. Background:  To start a SLIP connection, I dial our terminal server,
  1031. and login with a username and password.  After doing so, I start a SLIP
  1032. session with the following command "slip username-slip.dialin.cwru.edu",
  1033. followed by my password -- again.
  1034.  
  1035. Here then is the relevant portion of the PHONE.CMD script file -
  1036. #
  1037. # CWRU-TS2 SLIP login script by Ashok Aiyar 3/26/93
  1038. # Last revised 3/28/93
  1039. Procedure    Host.CWRU.Login
  1040. TimeOut 60      'CWRU-TS2 terminal server is not responding'
  1041. Message         "CWRU-TS2 SLIP login script -- Version 1.1"
  1042. Message         'Waiting for SLIP server to respond'
  1043. Quiet ON
  1044. Expect 'Verification'
  1045. Message         'Request for User Verification Received from CWRU-TS2'
  1046. Message         'Sending your user name and password'
  1047. Quiet OFF
  1048. Expect   'Username:'
  1049. Send '%u<'
  1050. Expect   'Password:'
  1051. Private
  1052. Send '%p<'
  1053. Reject    'Access denied'   'Your user name or password was not accepted'
  1054. TimeOut 30    'SLIP server did not respond to your validation request'
  1055. Expect 'CWRU-TS2>'
  1056. Send 'SLIP<'
  1057. TimeOut 10    'SLIP server did not respond to SLIP command'
  1058. Expect 'IP hostname or address:'
  1059. Send '%u-slip.dialin.cwru.edu<'
  1060. TimeOut 10 'SLIP server did not respond to hostname'
  1061. Reject    'Bad IP address'   'Incorrect Hostname'
  1062. Expect 'Password:'
  1063. Send '%p<'
  1064. Reject    'Access denied'    'Password not accepted.'
  1065. TimeOut 10
  1066. Expect 'Header Compression will match your system'
  1067. Message 'Login to CWRU SLIP server successful'
  1068. Wait 1.0
  1069. EndProcedure   Host.CWRU.Login
  1070. #
  1071. #
  1072. Procedure      Host.CWRU.LogOut
  1073. # Nothing special needs to be done to logout
  1074. EndProcedure   Host.CWRU.LogOut
  1075. #
  1076. #   End of Script file
  1077. #
  1078. ----------------------------------------------------------------------
  1079. How to use packet drivers other than UMSLIP with PHONE?
  1080.  
  1081. The quick answer -- there is no "clean" way.  Below is a batch file
  1082. hack that I wrote to use PHONE with other packet drivers.  In this
  1083. example, the packet driver is Peter Tattam's CSLIPPER.  To use a
  1084. batch file like this, you must know the parameters with which you
  1085. plan to use the packet driver -- i.e interrupt vector, baud rate,
  1086. port address, and IRQ.  This batch file requires UMSLIP.COM,
  1087. CSLIPPER.EXE, and TERMIN.COM to be in the same directory
  1088. or in your path ...
  1089.  
  1090. All that the BATCH file does is to let you dial the SLIP connection
  1091. using PHONE, load the appropriate packet driver, hangup the
  1092. connection, and unload the driver when you are done ...
  1093.  
  1094. -- being CWRUSLIP.BAT --
  1095. @echo off
  1096. rem   this batch file is an ugly hack of U. of Minn. "SLIP.BAT"
  1097. rem   awaiting a version of C/SLIPPER that can directly interact
  1098. rem   with PHONE
  1099. rem   CWRUSLIP.BAT file is used with PHONE.EXE to start a SLIP
  1100. rem   connection on CWRU-TS2
  1101. rem   last modified 3/28/93 -- Ashok Aiyar
  1102.  
  1103. @echo off
  1104. cls
  1105. goto start
  1106.  
  1107. :start
  1108. if %1. == ?.         goto help
  1109. if %1. == help.      goto help
  1110. if %1. == setup.     goto setup
  1111. if %1. == dial.      goto forceD
  1112. if %1. == hangup.    goto forceH
  1113. if %1. == quit.      goto forceH
  1114. if %1. == HELP.      goto help
  1115. if %1. == SETUP.     goto setup
  1116. if %1. == DIAL.      goto forceD
  1117. if %1. == QUIT.      goto forceH
  1118. goto bogus
  1119. goto unload
  1120.  
  1121. :forceH
  1122. termin 0x60
  1123. umslip >nul
  1124. phone force hangup
  1125. goto unload
  1126.  
  1127. :slipper
  1128. termin 0x60
  1129. REM  the following line must be changed to reflect the COM port,
  1130. REM  IRQ, baud rate, and software interrupt
  1131. lh c:\packet\cslipper com1 vec=60 baud=57600 ether
  1132. goto end
  1133.  
  1134. :forceD
  1135. termin 0x60
  1136. umslip >nul
  1137. phone force dial
  1138. goto slipper
  1139.  
  1140. :setup
  1141. termin 0x60
  1142. umslip >nul
  1143. phone setup
  1144. goto help
  1145.  
  1146. :unload
  1147. termin 0x60
  1148. goto end
  1149.  
  1150. :bogus
  1151. echo %1 is not a valid command.
  1152. echo Try "cwruslip help" for a list of valid commands
  1153. echo.
  1154.  
  1155. :help
  1156. echo --------------------------------------------------------------
  1157. echo           Case Western Reserve University SLIP Setup
  1158. echo                  using Univ. of Minnesota PHONE
  1159. echo --------------------------------------------------------------
  1160. echo cwruslip setup     modem settings, phone number, username etc.
  1161. echo.
  1162. echo cwruslip dial      DIAL and establish the SLIP connection
  1163. echo cwruslip quit      HANGUP the phone and unload the driver
  1164. echo cwruslip help      this screen
  1165. echo.
  1166.  
  1167. :end
  1168. -- end CWRUSLIP.BAT --
  1169.  
  1170.  
  1171. B-3. What version of KA9Q should I use and where do I
  1172. get it?
  1173.  
  1174. I have tried the latest version of KA9Q (January 1993), but found that it 
  1175. locked up my machine, and have gone back to v2.1. 
  1176.  
  1177. From mike@childsoc.demon.co.uk (Michael Bernardi):
  1178.  
  1179. "Demon Internet Services have a dialin Internet service in the UK.
  1180. They also support a customised version of KA9Q optimised for
  1181. dialup, they also support the PCElm mailer, SNEWS news reader and
  1182. a customised front end. There is also a combined NEWS and MAIL
  1183. program called CPPNEWS and an alternative MAIL program called
  1184. VIEW, these last are unsupported by Internet@demon.co.uk but other
  1185. DIS users do support them. All these programs can be found on
  1186. ftp.demon.co.uk in the pub/ibmpc/ directory, and are written to
  1187. work with KA9Q (specifically the DIS version)."
  1188.  
  1189. Anthony McCarthy has added a multi-windowing system to KA9Q that 
  1190. supports the mouse, which has been recommended. See Resource 
  1191. listings for info.
  1192.  
  1193.  
  1194. B-4. What do I need to run KA9Q? Why won't it do VT-100 emulation?
  1195.  
  1196. KA9Q is usually run from a startup script, such as my script
  1197. startnos.bat:
  1198.  
  1199. \nos\drivers\8003pkdr
  1200. \nos\net -d \nos
  1201.  
  1202. Here I first load the packet drivers for my 8003 Ethernet card, then
  1203. run KA9Q (known as net.exe).
  1204.  
  1205. The KA9Q package then reads commands from a configuration file, called
  1206. AUTOEXEC.NOS.
  1207.  
  1208. For VT100 emulation with KA9Q, try using Giles Todd's VT102.COM,
  1209. available via ftp from ftp.demon.co.uk, cd /pub/ibmpc/DIS.
  1210.  
  1211.  
  1212. B-5. How do I configure KA9Q as a SLIP connection?  a router?
  1213.  
  1214. Here is a sample CSLIP only configuration file:
  1215.  
  1216. # Set the host name
  1217. #
  1218. hostname aboba.slip.netcom.com
  1219. ip address [192.187.134.3]
  1220. #
  1221. #
  1222. #
  1223. # Configure COM3 on Interrupt 5, at 38400 bps with
  1224. # RTS/CTS (c) and Van Jacobson Compression (v) and MTU = 1008
  1225. #
  1226. attach asy 0x3e8 5 VJSLIP sl0 8092 1008 38400 cv
  1227. ifconfig sl0 netmask 255.255.255.252
  1228. #
  1229. #
  1230. #
  1231. route add default sl0
  1232. # route all packets over sl0 by default (sl0 is the route to
  1233. # the Internet)
  1234. #
  1235. # Time To Live is the maximum number of hops a packet can take
  1236. # before it is thrown away.  This command prevents an inadvertent
  1237. # infinite loop from occuring with packets in the network.
  1238. #
  1239. ip ttl 400
  1240. #
  1241. #-------------------------------------------------
  1242. #
  1243. # The Maximum Segment Size is the largest single transmission that
  1244. # you care to receive.  An mss of 216 will force folks to send you
  1245. # packets of 256 characters or less (counting the overhead). 
  1246.  
  1247. #
  1248. tcp mss 1048
  1249. #
  1250. #-------------------------------------------------
  1251. #
  1252. # The Window parameter establishes the maximum number of bytes that
  1253. # may be outstanding before your system expects an ack.  If window is
  1254. # twice as big as mss, for example, there will be two active packets
  1255. # on the channel at any given time.  Large values of window provide
  1256. # improved throughput on full-duplex links, but are a problem on the
  1257. # air.  Keep mss <= window <= 2*mss if you're on the air.
  1258. #
  1259. #
  1260. tcp window 6888
  1261. #
  1262. #-------------------------------------------------
  1263. #
  1264. # This entry will open net.log in the \spool directory and will
  1265. # record the server activity of your system.  If you don't want a log,
  1266. # comment out this line; if you do, make sure you have a \spool
  1267. # directory!
  1268. #
  1269. log \spool\net.log
  1270. #
  1271. #-------------------------------------------------
  1272. #
  1273. # Each of the servers (services you will provide) must be turned
  1274. # on before they will be active.  The following entries turn all
  1275. # of them on.  To turn any function off use the command 'stop' after
  1276. # NET gets fired up, or just comment out the line here.
  1277. #
  1278. start ftp
  1279. start echo
  1280. start discard
  1281. #start telnet
  1282. start smtp
  1283. #
  1284. isat on
  1285. #
  1286. domain addserver 192.100.81.101
  1287. domain addserver 192.100.81.105
  1288. smtp gateway 140.174.7.1
  1289. #
  1290. #
  1291. #  Display Name and IP Address
  1292. #
  1293. hostname
  1294. ip address
  1295. #
  1296. # Just for yucks, lets try calling the other end.
  1297. comm sl0 atdt14082411528
  1298. # THE END
  1299.  
  1300. After executing this setup file, you should hear the modem dial out
  1301. to your SLIP host. Enter TIP sl0 at the prompt to be connected to the
  1302. SLIP interface. You will then see your hosts's login prompt. Give
  1303. the login name and password, and when you go into SLIP mode, hit
  1304. F10 to get back to the prompt. Note that newer versions of KA9Q
  1305. may not be compatible with the comm command, since they support
  1306. more sophisticated dialing scripts. 
  1307.  
  1308. Type RESET 1 at the prompt. This moves session 1 from tip mode into
  1309. SLIP mode. Type another RESET to kill any residual processes that
  1310. may be operating.  
  1311.  
  1312. At this point you should have a functioning connection. You might
  1313. try to ping your host via the command:
  1314. PING <host adddress>
  1315. If this works, you will then see the round trip time to your host,
  1316. in milliseconds. 
  1317.  
  1318. Other possible diagnostic commands:
  1319.  
  1320. ASYSTAT <interface>    Gives statistics on packets received, sent, etc.
  1321. TRACE <interface> 1011    Shows incoming characters
  1322. RIP TRACE 1        Traces RIP packets
  1323. HOPCHK <address>    Traces the route to the designated system. Useful 
  1324.             for figuring out routing problems. 
  1325.  
  1326. Routing
  1327.  
  1328. The KA9Q configuration that follows uses two interfaces, one a CSLIP
  1329. interface to an annex terminal server (sl0), the other an Ethernet
  1330. interface (lan) with another machine (a NeXT) attached.
  1331.  
  1332. Note the use of Van Jacobson compression (v) on the slip line, as well 
  1333. as the strange interrupt settings (Interrupt 5, port is COM3).  One of 
  1334. the nice things about KA9Q is that it is flexible enough to deal with 
  1335. such situations.
  1336.  
  1337. Here is a sample router configuration file:
  1338.  
  1339. # Set the host name
  1340. #
  1341. hostname gate.slip.holonet.net
  1342. #
  1343. #
  1344. # Configure COM3 on Interrupt 5, at 38400 bps with
  1345. # RTS/CTS (c) and Van Jacobson Compression (v)
  1346. #
  1347. attach asy 0x3e8 5 VJSLIP sl0 8092 576 38400 cv
  1348. ifconfig sl0 ipaddress [157.151.0.253] netmask 255.255.255.0
  1349. #
  1350. # FTP, Inc., compatible packet driver installed at software interrupt number
  1351. # 0x60; probably an Ethernet card of some kind.
  1352. #
  1353. attach packet 0x60 lan 2 1500
  1354. ifconfig lan ipaddress [157.151.64.1] netmask 255.255.255.0
  1355. #
  1356. route add default sl0
  1357. # The local Ethernet has a Class C network address so
  1358. # route all IP addresses beginning with 157.151.64 to it.
  1359. route add 157.151.64/24 lan
  1360. #
  1361. #
  1362. # Time To Live is the maximum number of hops a packet can take
  1363. # before it is thrown away.  This command prevents an inadvertent
  1364. # infinite loop from occuring with packets in the network.
  1365. #
  1366. ip ttl 400
  1367. #
  1368. #-------------------------------------------------
  1369. #
  1370. # The Maximum Segment Size is the largest single transmission that
  1371. # you care to receive.  An mss of 216 will force folks to send you
  1372. # packets of 256 characters or less (counting the overhead). 
  1373. #
  1374. tcp mss 576
  1375. #
  1376. #-------------------------------------------------
  1377. #
  1378. # The Window parameter establishes the maximum number of bytes
  1379. # that may be outstanding before your system expects an ack.
  1380. # If window is twice as big as mss, for example, there will be two
  1381. # active packets on the channel at any given time.  Large values of
  1382. # window provide improved throughput on full-duplex links, but are a
  1383. # problem on the air.  Keep  mss <= window <= 2*mss if you're on the air.
  1384. #
  1385. #
  1386. tcp window 6888
  1387. #
  1388. #-------------------------------------------------
  1389. #
  1390. # This entry will open net.log in the \spool directory and will
  1391. # record the server activity of your system.  If you don't want a log,
  1392. # comment out this line; if you do, make sure you have a \spool
  1393. # directory!
  1394. #
  1395. log \spool\net.log
  1396. #
  1397. #-------------------------------------------------
  1398. #
  1399. # Each of the servers (services you will provide) must be turned
  1400. # on before they will be active.  The following entries turn all
  1401. # of them on.  To turn any function off use the command 'stop' after
  1402. # NET gets fired up, or just comment out the line here.
  1403. #
  1404. start ftp
  1405. start echo
  1406. start discard
  1407. #start telnet
  1408. start smtp
  1409. #
  1410. isat on
  1411. #
  1412. domain addserver 157.151.0.2
  1413. domain addserver 157.151.0.1
  1414. smtp gateway 157.151.0.2
  1415. #
  1416. #
  1417. # Use Router Information Protocol (RIP) to inform the router at
  1418. # 157.151.0.253 about the existence of the local network. Send
  1419. # RIP packets every 240 seconds.
  1420. rip add 157.151.0.253 240
  1421. #
  1422. #
  1423. # Just for yucks, lets try calling the other end...
  1424. #
  1425. comm sl0 atdt7041063
  1426. #
  1427. # THE END
  1428.  
  1429. Here is another routing configuration file, using proxy arp:
  1430.  
  1431. # Set the host name
  1432. #
  1433. hostname gate.slip.holonet.net
  1434. #
  1435. #
  1436. # Configure COM3 on Interrupt 5, at 38400 bps with
  1437. # RTS/CTS (c) and Van Jacobson Compression (v)
  1438. #
  1439. attach asy 0x3e8 5 VJSLIP sl0 8092 576 38400 cv
  1440. ifconfig sl0 ipaddress [157.151.0.253] netmask 255.255.255.0
  1441. #
  1442. # FTP, Inc., compatible packet driver installed at software interrupt number
  1443. # 0x60; probably an Ethernet card of some kind.
  1444. #
  1445. attach packet 0x60 lan 2 1500
  1446. ifconfig lan ipaddress [157.151.64.1] netmask 255.255.255.0
  1447. #
  1448. #  Set Routing Tables
  1449. #
  1450. #
  1451. route add default sl0
  1452. # The local Ethernet has a Class C network address so
  1453. # route all IP addresses beginning with 157.151.64 to it.
  1454. route add 157.151.64/24 lan
  1455. #
  1456. #  Use Proxy ARP
  1457. #
  1458. arp publish 157.151.64.1 ether 00:00:c0:33:f3:13
  1459. arp publish 157.151.64.254 ether 00:00:c0:33:f3:13
  1460. #
  1461. #  For PC AT
  1462. #
  1463. isat on
  1464. #
  1465. # Add Domain Name Servers
  1466. #
  1467. domain addserver 157.151.0.2
  1468. domain addserver 157.151.0.1
  1469. smtp gateway 157.151.0.2
  1470. #
  1471. #
  1472. # Time To Live is the maximum number of hops a packet can take
  1473. # before it is thrown away.  This command prevents an inadvertent
  1474. # infinite loop from occuring with packets in the network.
  1475. #
  1476. ip ttl 400
  1477. #
  1478. #-------------------------------------------------
  1479. #
  1480. # The Maximum Segment Size is the largest single transmission that
  1481. # you care to receive.  An mss of 216 will force folks to send you
  1482. # packets of 256 characters or less (counting the overhead). 
  1483. #
  1484. tcp mss 576
  1485. #
  1486. #-------------------------------------------------
  1487. #
  1488. # The Window parameter establishes the maximum number of bytes
  1489. # that may be outstanding before your system expects an ack.
  1490. # If window is twice as big as mss, for example, there will be two
  1491. # active packets on the channel at any given time.  Large values of
  1492. # window provide improved throughput on full-duplex links, but are a
  1493. # problem on the air.  Keep  mss <= window <= 2*mss if you're on the air.
  1494. #
  1495. #
  1496. tcp window 6888
  1497. #
  1498. #-------------------------------------------------
  1499. #
  1500. # This entry will open net.log in the \spool directory and will
  1501. # record the server activity of your system.  If you don't want a log,
  1502. # comment out this line; if you do, make sure you have a \spool
  1503. # directory!
  1504. #
  1505. log \spool\net.log
  1506. #
  1507. #-------------------------------------------------
  1508. #
  1509. # Each of the servers (services you will provide) must be turned
  1510. # on before they will be active.  The following entries turn all
  1511. # of them on.  To turn any function off use the command 'stop' after
  1512. # NET gets fired up, or just comment out the line here.
  1513. #
  1514. start ftp
  1515. start echo
  1516. start discard
  1517. #start telnet
  1518. start smtp
  1519. #
  1520. #  Display Name and IP Address
  1521. #
  1522. hostname
  1523. ip address
  1524. #
  1525. # Just for yucks, lets try calling the other end.
  1526. comm sl0 atdt7041063
  1527. # THE END
  1528.  
  1529.  
  1530.  
  1531. B-6  How do I get KA9Q to support BOOTP?
  1532.  
  1533. Steven L. Johnson (johnson@TIGGER.JVNC.NET) notes:
  1534.  
  1535.   KA9Q does have a bootp client but it is not compiled in by default.
  1536.   It has a bug that truncates the returned ip address to 16 bits
  1537.   which must be corrected before it will work.  It also complains
  1538.   about bootp servers that only support RFC 951 bootp without RFC
  1539.   1084 (or 1048) vendor extensions.  Other than that it seems to work
  1540.   for me.
  1541.  
  1542.   To enable the bootp client, add the following line to config.h:
  1543.  
  1544.     #define BOOTP 1
  1545.  
  1546.   To correct the ip address truncation problem, in bootp.c change:
  1547.  
  1548.                 Ip_addr = (int) reply.yiaddr.s_addr;    /* yiaddr */
  1549.                           ^^^^^problem
  1550.   at line 188 to:
  1551.  
  1552.                 Ip_addr = (int32) reply.yiaddr.s_addr;    /* yiaddr */
  1553.                           ^^^^^^^solution
  1554.  
  1555.   And of course, recompile.
  1556.  
  1557.   This worked on the src1229 (1991) version and may work on the
  1558.   most recent version.  I did check to make sure that the bug still
  1559.   exists, but I haven't rechecked whether there are additional
  1560.   problems in the new version.
  1561.  
  1562.  
  1563. B-7  How do I get DesQView X to run over the network?
  1564.  
  1565. V1.0 of DesQView X did not include a TCP/IP protocol stack.
  1566. Surprise! The FTP software stack or Novell stack was needed to
  1567. make it work.  They've corrected the situation in subsequent 
  1568. revisions.  Contact QuarterDeck for assistance.
  1569.  
  1570. [pricing and availability, anyone?]
  1571.  
  1572. B-8. Why is NFS so slow compared with FTP?
  1573.  
  1574. NFS usually runs over RPC via UDP, rather than utilizing TCP. NFS only 
  1575. acknowledges a write request when the disk completes; there
  1576. are no sliding windows as in TCP. This makes NFS fairly inefficient.
  1577.  
  1578. Frances K. Selkirk (fks@vaxeline.ftp.com ) notes:
  1579.  
  1580. "There are NFS implementations that use TCP. They are only
  1581. faster over WANs. UDP is faster over most normally functioning LANs.
  1582. The lockstep paradigm is inherent to NFS, but some implementations
  1583. provide the ability to violate it - a speed win when the net is
  1584. reliable, a loss when it is not.
  1585.  
  1586. Whatever the transport, NFS will have more overhead than TCP, because
  1587. it is trying to transparently imitate an OS, and has to do a lot of
  1588. shuffling and translating."
  1589.  
  1590. B-9  How do I get KA9Q to support PPP?
  1591.  
  1592. Here is a sample ppp configuration file: 
  1593.  
  1594. # Set the host name
  1595. #
  1596. hostname aboba.slip.netcom.com
  1597. ip address [192.187.134.3]
  1598. #
  1599. #
  1600. #
  1601. # Configure COM3 on Interrupt 5, at 38400 bps with
  1602. # MTU = 1008
  1603. #
  1604. attach asy 0x3e8 5 ppp pp0 8092 1008 38400
  1605. dialer pp0 dialer.ppp
  1606. ifconfig pp0 netmask 255.255.255.252
  1607. ppp pp0 trace 2
  1608. ppp pp0 quick
  1609. ppp pp0 lcp open
  1610. ppp pp0 ipcp open
  1611. #
  1612. #
  1613. #
  1614. route add default pp0
  1615. # route all packets over pp0 by default (pp0 is the route to
  1616. # the Internet)
  1617. #
  1618. # Time To Live is the maximum number of hops a packet can take
  1619. # before it is thrown away.  This command prevents an inadvertent
  1620. # infinite loop from occuring with packets in the network.
  1621. #
  1622. ip ttl 400
  1623. #
  1624. #-------------------------------------------------
  1625. #
  1626. # The Maximum Segment Size is the largest single transmission that
  1627. # you care to receive.  An mss of 216 will force folks to send you
  1628. # packets of 256 characters or less (counting the overhead). 
  1629. #
  1630. tcp mss 1048
  1631. #
  1632. #-------------------------------------------------
  1633. #
  1634. # The Window parameter establishes the maximum number of bytes that
  1635. # may be outstanding before your system expects an ack.  If window is
  1636. # twice as big as mss, for example, there will be two active packets
  1637. # on the channel at any given time.  Large values of window provide
  1638. # improved throughput on full-duplex links, but are a problem on the
  1639. # air.  Keep mss <= window <= 2*mss if you're on the air.
  1640. #
  1641. #
  1642. tcp window 6888
  1643. #
  1644. #-------------------------------------------------
  1645. #
  1646. # This entry will open net.log in the \spool directory and will
  1647. # record the server activity of your system.  If you don't want a log,
  1648. # comment out this line; if you do, make sure you have a \spool
  1649. # directory!
  1650. #
  1651. log \spool\net.log
  1652. #
  1653. #-------------------------------------------------
  1654. #
  1655. # Each of the servers (services you will provide) must be turned
  1656. # on before they will be active.  The following entries turn all
  1657. # of them on.  To turn any function off use the command 'stop' after
  1658. # NET gets fired up, or just comment out the line here.
  1659. #
  1660. start ftp
  1661. start echo
  1662. start discard
  1663. #start telnet
  1664. start smtp
  1665. #
  1666. isat on
  1667. #
  1668. domain addserver 192.100.81.101
  1669. domain addserver 192.100.81.105
  1670. smtp gateway 140.174.7.1
  1671. #
  1672. #
  1673. #  Display Name and IP Address
  1674. #
  1675. hostname
  1676. ip address
  1677. #
  1678. # THE END
  1679.  
  1680. In file dialer.ppp:
  1681.  
  1682. control down
  1683. wait 1000
  1684. control up
  1685. wait 1000
  1686. wait 2000
  1687. send "at\r"
  1688. wait 3000 "OK"
  1689. send "atdt8659004\r"
  1690. wait 60000 "login: "
  1691. send "<userID>\r"
  1692. wait 5000 "word:"
  1693. wait 1000
  1694. send "<password>\r"
  1695.  
  1696.  
  1697. B-10. How do I get KA9Q to support SLIP dialin?
  1698.  
  1699. If you are willing to settle for little or no security, there is not
  1700. much you have to change to allow a KA9Q system to receive calls, as
  1701. opposed to originating them. These should include:
  1702.  
  1703. 1. Setting the system to autoanswer, via use of the ATS0=1 command to
  1704. the modem. 
  1705.  
  1706. 2. Setting up a trace on the router end, to figure out if it's working,
  1707. via the command:
  1708. TRACE <interface> 1011, where <interface> = sl0 for SLIP, or another
  1709. value such as LAN or ether0 for the Ethernet interface. It's probably
  1710. a good idea to put a trace on all interfaces until the system is
  1711. shaken down. 
  1712.  
  1713. Note that without addition of a special dialing script, this setup
  1714. is completely insecure! 
  1715.  
  1716. B-11. Where can I get information on running Novell and TCP/IP
  1717.       concurrently? 
  1718.       
  1719. The bit.listserv.novell group (NOVELL@SUVM) regularly posts a FAQ
  1720. which includes information on concurrent use of TCP/IP and Novell
  1721. IPX. 
  1722.  
  1723. B-12. What Novell TCP/IP NLMs are out there and how do I get them to
  1724. work? 
  1725.  
  1726. There are publicly distributable FTP daemon and BOOTP NLMs for
  1727. NetWare v3.11. Some have noted that these NLMs tend to crash the
  1728. server after a few hours. [Anyone with better success?] See
  1729. the Resource Listings for info. 
  1730.  
  1731. B-13. How do I get a telecommunications package supporting Int 14h
  1732. to work? 
  1733.  
  1734. Int 14h support is becoming increasing common, with vendors such as 
  1735. Mustang (QMODEM Pro) having included this feature. 
  1736.  
  1737. Aside from commercial stacks (such as FTP's PC/TCP),
  1738. try the TCPPORT program in WATTCP, available via ftp
  1739. dorm.rutgers.edu, get /pub/msdos/wattcp/apps.zip.
  1740.  
  1741. B-14. How do I get SLIP working with NDIS products such as
  1742. Windows For Workgroup TCP/IP?
  1743.  
  1744. Rumour has it that there is a serial NDIS driver available called
  1745. NBR11. This is available via ftp complab.gtri.gatech.edu, 
  1746. cd /pub/lanman/ndis.  
  1747.  
  1748. B-15. How do I get Windows For Workgroups to work alongside Novell?
  1749.  
  1750. ODINSUP from Novell is an NDIS over ODI shim. This allows you to run 
  1751. software requiring ODI drivers, as well as software requiring NDIS 
  1752. drivers. Since IPX and TCP/IP are different protocols, you will not
  1753. need to run PKTMUX. 
  1754.  
  1755. Available via ftp.novell.com, 
  1756. cd /netwire/novfiles/client.kit/doswin/files/WSDOS1.EXE. 
  1757.  
  1758. B-16. NCSA Telnet doesn't reassemble fragments. What should I do?
  1759.  
  1760. Yell at the folks at NCSA to fix the problem, and to notify all
  1761. the people who are using the same TCP/IP code to insert the fix in
  1762. their software as well. This problem is really common, and
  1763. very annoying, and affects NCSA Telnet as well as PC Gopher III,
  1764. and POPmail. One possible workaround is to set the MTU to 576,
  1765. but this will not always work.  
  1766.  
  1767. Since Matthew Kaufman (matthew@echo.com) has
  1768. provided the following explanation and fix, as detailed
  1769. below, there is really no good reason for this bug not
  1770. to be squashed soon:
  1771.  
  1772. How to get rid of the message:
  1773. "IP: fragmented packet received, frags not supported"
  1774. (assuming you have a C compiler and source code)
  1775.  
  1776. Many people on the net have complained that NCSA Telnet
  1777. (among other useful PC TCP/IP programs) doesn't properly handle 
  1778. fragmented IP packets. this problem becomes especially evident if 
  1779. any of your packets are arriving over SLIP connections.
  1780. I figured that the fastest way to get it to work would be to go
  1781. ahead and do it myself rather than wait for it to get to the
  1782. top of the list of desired features.
  1783.  
  1784. MANY other programs have used the NCSA TCP/IP implementation, so
  1785. if you maintain a program which does, PLEASE add this fix.
  1786. I (and MANY OTHERS) are unable to use your software until you do.
  1787.  
  1788. I posted the basic form of this fix around the beginning of the year,
  1789. but it didn't seem to make it into several subsequent versions of
  1790. related software, so I am posting and mailing this once again, in
  1791. a revised form, with helpful hints at the end.
  1792.  
  1793. I request only the following in return:
  1794.     This software revision is in the public domain. It may be
  1795.     used anywhere without further permission from the author.
  1796.     Please credit the origin of the fix in your release notes
  1797.     or bug fix document. (I am "Matthew Kaufman, matthew@echo.com")
  1798.     If you are the official maintainer of a software package
  1799.     which you have added this fix to, please send me an
  1800.     email note letting me know that the fix made it in.
  1801.     (So I don't need to worry that, for instance, the next
  1802.     version of NCSA Telnet or WinQVT/Net isn't going to
  1803.     include this) And, please add this fix as soon as possible.
  1804.  
  1805. So here's my fix:
  1806.  
  1807. The following are the changes to the NCSA Telnet TCP/IP engine to add
  1808. support for IP fragment reassembly. I also know how to make telnet compile 
  1809. properly under Borland C without running out of space in DGROUP (see the end of this)
  1810.  
  1811. if you have any questions, you can reach me at:
  1812. matthew@echo.com. I am willing to help, within the limits of my schedule.
  1813.  
  1814. changes follow:
  1815.  
  1816. file: engine\ip.c (the only file that needs to change)
  1817.  
  1818. delete the following:
  1819. >/*
  1820. >*  We cannot handle fragmented IP packets yet, return an error
  1821. >*/
  1822. >
  1823. >    if(p->i.frags &0x20) {           /* check for a fragmented packet */
  1824. >        netposterr(304);
  1825. >        return(1);
  1826. >      }
  1827.  
  1828. ----------
  1829. after the line:
  1830. >    iplen-=hlen;
  1831.  
  1832. but before the lines:
  1833. > /*
  1834. > *  check to make sure that the packet is for me.
  1835.  
  1836.  
  1837. add this:
  1838.  
  1839.     /* check for fragment and handle. note that the &0x20 above is WRONG */
  1840.     if(p->i.frags)           /* NOW check for a fragmented packet - mtk add*/
  1841.     {
  1842.     ipfraghandle(p,iplen);    /* pass in computed iplen to save time */
  1843.         return(1);
  1844.       }
  1845.  
  1846. ----------
  1847. and then, at the end of that file (ip.c) add this:
  1848.  
  1849. /*
  1850. * IP Fragment Reassembly Hack
  1851. * by Matthew T Kaufman (matthew@echo.com)
  1852. * 1/1993, 8/1993
  1853. */
  1854.  
  1855. typedef struct ipb {
  1856.         DLAYER d;
  1857.         IPLAYER i;
  1858.         uint8 data[4104];    /* "Big Enough" */
  1859. }FIPKT;
  1860.  
  1861. #define IPF_CHUNKS 513 /* 4104 / 8 */
  1862. #define IPF_BITWORDS 18  /* 513 / 32 round up + 1*/
  1863. #define IPF_BUFFERS 7  /* Max # of different fragmented pkts in transit */
  1864.  
  1865. typedef struct {
  1866.     FIPKT pkt;
  1867.     unsigned long bits[IPF_BITWORDS];
  1868.     int lastchunk;
  1869.     unsigned long lasttime;
  1870.     unsigned int iplen;
  1871. }FPBUF;
  1872.  
  1873. static FPBUF far Frag[IPF_BUFFERS];
  1874.  
  1875. ipfraghandle(IPKT *p, int iplen)
  1876. {
  1877.  
  1878.     uint16 fraginfo;
  1879.     uint16 foffset;
  1880.     uint16 iden;
  1881.     FPBUF far *buf;
  1882.     int i;
  1883.  
  1884.     fraginfo = intswap(p->i.frags);
  1885.     foffset = fraginfo & (0x1fff);
  1886. #define morefrags (fraginfo & (0x2000))
  1887.  
  1888.     iden = intswap(p->i.ident);
  1889.  
  1890. /* we already KNOW that this IS fragmented */
  1891. /* see if we can find any friends who've already arrived... */
  1892.  
  1893.     buf = (FPBUF *) 0L;
  1894.     for(i=0; i<IPF_BUFFERS; i++)
  1895.     {
  1896.         if(p->i.ident == Frag[i].pkt.i.ident)
  1897.         {
  1898.             buf = &(Frag[i]);
  1899.             goto foundfriend;
  1900.         }
  1901.     }
  1902.     /* otherwise, we must be the first one here */
  1903.     {    
  1904.         long oldtime = 0x7fffffff;
  1905.         int oldest = 0;
  1906.  
  1907.         for(i=0; i<IPF_BUFFERS; i++)
  1908.         {
  1909.             if(Frag[i].lasttime == 0)    /* unused buffer? */
  1910.             {
  1911.                 buf = &(Frag[i]);
  1912.                 goto foundempty;
  1913.             }
  1914.  
  1915.             if(Frag[i].lasttime < oldtime)    /* track LRU */
  1916.             {
  1917.                 oldtime = Frag[i].lasttime;
  1918.                 oldest = i;
  1919.             }
  1920.         }
  1921.  
  1922.         /* if we're here, we need to reuse LRU */
  1923.  
  1924.         buf = &(Frag[oldest]);
  1925.  
  1926. foundempty:    ;
  1927.         /* initialize new buffer */
  1928.         /* time will be filled in later */
  1929.  
  1930.         for(i=0; i<IPF_BITWORDS; i++) buf->bits[i] = 0L; /* reset */
  1931.         buf->lastchunk = 0;    /* reset */
  1932.         /* fill in the header with the current header */
  1933.         movmem(p,&(buf->pkt), sizeof(DLAYER) + sizeof(IPLAYER) );
  1934.     }
  1935.  
  1936.         
  1937. foundfriend: ;
  1938.  
  1939.     /* now, deal with this specific fragment... */
  1940.     /* copy data */
  1941.     movmem(&(p->x.data),&(buf->pkt.data[8 * foffset]),iplen);
  1942.     /* update rx chunks information */
  1943.     for(i=foffset; i<= (foffset+(iplen / 8)); i++)
  1944.     {
  1945.         buf->bits[i/32] |= (unsigned long) (1L<<(i % 32));
  1946.     }
  1947.  
  1948.     if(!morefrags)
  1949.     {
  1950.         /* now we can tell how long the total thing is */
  1951.         buf->iplen = (8*foffset)+iplen;
  1952.         buf->lastchunk = foffset;
  1953.             /* actually, lastchunk is more than this, but it */
  1954.             /* IS true that we only need to check through    */
  1955.             /* this foffset value to make sure everything has */
  1956.             /* arrived  -mtk */
  1957.     }
  1958.  
  1959.     /* now touch the time field, for buffer LRU */
  1960.     buf->lasttime = clock();
  1961.  
  1962.     /* check to see if there are fragments missing */
  1963.  
  1964.     if(buf->lastchunk == 0)
  1965.     {
  1966.         /* we haven't even gotten a fragment with a cleared MORE */
  1967.         /* FRAGMENTS flag, so we're missing THAT piece, at least */
  1968.         return 1;
  1969.     }
  1970.     for(i=0; i<= buf->lastchunk; i++)
  1971.     {
  1972.         /* scanning to see if we have everything */
  1973.         if(0 == ((buf->bits[i/32]) & (unsigned long)(1L<<(i % 32))) )
  1974.         {
  1975.             return 1;    /* still waiting for more */
  1976.         }
  1977.     }
  1978.  
  1979.     /*  otherwise, done waiting... use the packet we've gathered */
  1980.     /* first clear stuff from fragment buffer: */
  1981.     buf->lasttime = 0L;    /* mark as free to take */
  1982.     buf->lastchunk = 0;    /* need to do this, because we use it as flag */
  1983.     buf->pkt.i.ident = 0;    /* so we don't find this later */
  1984.     buf->pkt.i.frags = 0;    /* in case anybody above us checks */
  1985.     /* then send it on its way... */
  1986.  
  1987.     if(!comparen(nnipnum,p->i.ipdest,4)) {     /* potential non-match */
  1988.         if(comparen(nnipnum,junk,4) && p->i.protocol==PROTUDP)
  1989.             return(udpinterpret((UDPKT *)p,iplen));
  1990.         return(1);              /* drop packet */
  1991.       } /* end if */
  1992.  
  1993.        switch (buf->pkt.i.protocol) {        /* which protocol */
  1994.             case PROTUDP:
  1995.                 return(udpinterpret((UDPKT *)&(buf->pkt),buf->iplen));
  1996.         
  1997.             case PROTTCP:
  1998.                 return(tcpinterpret((TCPKT *)&(buf->pkt),buf->iplen));  
  1999.         
  2000.             case PROTICMP:
  2001.             return(icmpinterpret((ICMPKT *)&(buf->pkt),buf->iplen));
  2002.         
  2003.            default:
  2004.                netposterr(303);
  2005.                return(1);
  2006.       }
  2007.  
  2008.  
  2009. }
  2010.  
  2011. *** helpful hint:
  2012.  
  2013. if you run out of space in DGROUP, its because your compiler doesn't
  2014. place each 'far' data object in its own segment. To make things work,
  2015. you need to make the raw packet buffer be in its own segment.
  2016. Here's how:
  2017. in include/pcdefs.h search for:
  2018.  
  2019. -->  unsigned char far raw[17000];
  2020.  
  2021.  (the 17000 might be some other number... smaller, if someone tried to
  2022.   fix this before)
  2023.  and change to
  2024.  
  2025. -->  unsigned char far raw[17000]={0,0};    /* force into own segment */
  2026.  
  2027. C. Information for developers
  2028.  
  2029. C-1. What publicly distributable TCP/IP stacks are there that I can
  2030.      use to develop my own applications?
  2031.  
  2032. In writing an application, you can use device drivers provided by
  2033. particular vendors, or you can opt for an Application Binary Interface (ABI) 
  2034. that supports multiple TCP/IP protocol stacks, such as Winsock. For a given 
  2035. version of Windows, Winsock is an ABI for both Windows 3.x and Windows NT 
  2036. (via the NT Win16 subsystem).
  2037.  
  2038. Device drivers are included with PC-NFS and Beame & Whiteside's
  2039. BW-TCP.  Free examples of ABIs are the WATTCP API, the NCSA API
  2040. (public domain), the Trumpet ABI from Peter Tattum, and the NuPOP ABI.
  2041.  
  2042. As Mark Towfiq notes, all major TCP/IP vendors will be implementing
  2043. Windows Sockets:
  2044.  
  2045. Company                         BETA    FINAL
  2046. ---------------------------------------------
  2047. 3Com Corp                       Q1 '93  Q2 '93
  2048. Beame & Whiteside               ?       ?
  2049. Distinct Corp                   Q3 '92  Shipping
  2050. FTP Software                    Q4 '92  Shipping
  2051. Frontier Technologies           Q3 '92  Shipping
  2052. IBM                             Q4 '92  Q1 '93
  2053. JSB Corporation                 Q4 '92  Q4 '92
  2054. Lan Design                      Q4 '92  Q1 '93
  2055. Microdyne                       Q4 '92  Q1 '93
  2056. Microsoft (Windows NT 32-bit)   Q3 '92  Q2 '93
  2057. Microsoft (Windows NT 16-bit)   Q4 '92  Q2 '93
  2058. Microsoft (Windows 3.x 16-bit)  Q4 '92  Q2 '93
  2059. NetManage                       Q4 '92  Q4 '92
  2060. Network Research                ?       ?
  2061. Novell                          ?       ?
  2062. Sun Microsystems                Q4 '92  First Half '93
  2063. Ungermann Bass                  ?       ?
  2064. Walker Richer Quinn             Q4 '92  Q1 '93
  2065. Wollongong                      Q4 '92  Q1 '93
  2066.  
  2067. Source: Martin Hall (martinh@jsbus.com), available via ftp sunsite.unc.edu,
  2068. get/pub/micro/pc-stuff/ms-windows/winsock/vendors.
  2069.  
  2070.  
  2071. C-2. Where can I get a copy of the Windows Sockets FAQ?
  2072.  
  2073. A separate developer-oriented FAQ file about Windows Sockets created
  2074. by Mark Towfiq is available on
  2075. SunSite.UNC.EDU:/pub/micro/pc-stuff/ms-windows/winsock/FAQ
  2076. and Microdyne.COM:/pub/winsock/FAQ
  2077.  
  2078. An alternative source for the FAQ is rhino.microsoft.com. 
  2079.  
  2080.  
  2081. RESOURCE LISTING
  2082.  
  2083. Key
  2084.  
  2085. Downright speculation = I have not used this product personally, nor 
  2086. has anyone I know.  However, the specifications sounded interesting, 
  2087. so it's included.
  2088.  
  2089. Suggestion = I have not used this enough to pass judgement, but it 
  2090. has come to me recommended by someone I respect.
  2091.  
  2092. Recommendation = I use this package regularly, and like it.
  2093.  
  2094. BOOKS
  2095.  
  2096. Downright speculation
  2097. NOSintro - An Introduction to the KA9Q Network Operating System
  2098. Price: 11.50 Pounds sterling, plus postage and handling.
  2099. U.S. price, including shipping:  17.34 pounds sterling
  2100.  
  2101. This book by Ian Wade (author of NOSView) thoroughly covers
  2102. KA9Q. Publisher is Dowermain, 356 pages, 35 chapters, 6 appendices,
  2103. illustrated. ISBN 1-897649-00-2.
  2104.  
  2105. Dowermain, Ltd., 7 Daubeney Close, Harlington, DUNSTABLE, Bedfordshire, 
  2106.  
  2107. LU5 6NF, United Kingdom, email  ian@g3nrw.demon.co.uk. Written orders only, 
  2108. no U.S. distributor yet.
  2109.  
  2110. Recommendation
  2111. InfoPOP - Guide to Internet Resources    Free
  2112.  
  2113. InfoPOP/Windows is a smallish guide to the Internet in the form of a 
  2114. Windows Help application. InfoPOP/DOS is a TSR with the same content. 
  2115.  
  2116. Available via ftp gmuvax2.gmu.edu, or the fenwick.gmu.edu gopher
  2117.  Computers/Info-Technology/Software
  2118.   |___under Software available on this  Gopher
  2119.  
  2120.  
  2121.  
  2122. MAILING LISTS
  2123.  
  2124. Windows Sockets
  2125.  
  2126. winsock-request@microdyne.com
  2127. winsnmp-request@microdyne.com
  2128.  
  2129. W3 for Windows
  2130.  
  2131. mail LISTSERV@fatty.law.cornell.edu, with
  2132.  
  2133.          sub cello-l your full name
  2134.  
  2135. in the body of the message. 
  2136.  
  2137. Firewalls
  2138.  
  2139. mail majordomo@greatcircle.com, with
  2140.         sub firewalls-digest 
  2141.  
  2142. in the body of the message. Back issues
  2143. are available at ftp.greatcircle.com:/pub/firewalls.digest/vNN.nMMM.Z
  2144. where NN is the volume number and MMM is the issue number. 
  2145.  
  2146.  
  2147. PUBLICLY DISTRIBUTABLE SOFTWARE
  2148.  
  2149. DRIVERS
  2150.  
  2151. Recommendation
  2152. Crynwr drivers    free
  2153. Support    Contact Crynwr for info    
  2154.  
  2155. The Crynwr drivers, also known as the Clarkson University CUTCP
  2156. drivers, support many Ethernet adapter boards.  The drivers are also
  2157. compatible with Novell Netware, so that you can both Novell and 
  2158.  
  2159. TCP/IP at the same time.  Ethernet adapter boards from 3COM, 
  2160. Telesystems, AT&T, Digital, Mitel, HP, BICC, NCR, Novell, Interlan, 
  2161. MICOM, Racal/Interlan, NTI, Tiara, Ungermann-Bass, and Western 
  2162. Digital are supported.
  2163.  
  2164. The Packet Driver Specification v1.09 is available by ftp to
  2165. vax.ftp.com, get /pub/packet-d.ascii, /pub/packet-d.mss [check this]
  2166.  
  2167. Drivers available from EXEC-PC, Winnet, or ftp sun.soe.clarkson.edu,
  2168. get /pub/packet-drivers/drivers.zip.  PC-NFS drivers available in
  2169. /pub/packet-drivers/compat.tar.Z (requires Sun's PC-NFS)
  2170.  
  2171. The drivers are also available via ftp wsmr-simtel20.army.mil, cd
  2172. pd1:<msdos.pktdrvr>, get drivers.zip, drivers1.zip, drivers2.zip
  2173. Other mirrored archives include oak.oakland.edu, wuarchive.wustl.edu,
  2174. ftp.uu.net, nic.funet.fi, src.doc.ic.ac.uk, nic.switch.ch, archie.au,
  2175. nctuccca.edu.tw.
  2176.  
  2177. EXEC-PC,P.O. Box 57, Elm Grove, WI 53122, (414)789-4200 (Voice),
  2178. (414)789-4210 (data)
  2179.  
  2180. Crynwr Software, 11 Grant St., Potsdam, NY 13676, (315)268-1925,
  2181. Fax: (315)268-9201, email: nelson@Crynwr.com
  2182.  
  2183.  
  2184. Downright Speculation
  2185. Slipper v1.3    Free
  2186.  
  2187. An improved version of the SLIP8250 driver included with SLIPDISK. 
  2188. It's faster, allowing SLIP operation at up to 38.4 Kbps on a 486. 
  2189. Supports PKTMUX. 
  2190.  
  2191. Available from 
  2192. ftp.utas.edu.au, get /pc/trumpet/slipper/slipper.zip
  2193.  
  2194. P. Tattam, Programmer, Psychology Department, University of Tasmania, 
  2195. Hobart, Tasmania, Australia, 61-02-202346,
  2196. email: peter@psychnet.psychol.utas.edu.au
  2197.  
  2198. Downright Speculation
  2199. CSLIPPER    Free
  2200.  
  2201. A SLIP driver which supports Van Jacobson header compression. 
  2202. Supports PKTMUX when used in ethernet simulation mode.
  2203. Available from 
  2204. biochemistry.cwru.edu, get /pub/slipper/cslipper.exe. 
  2205.  
  2206. Downright Speculation
  2207. ETHERPPP    Free
  2208.  
  2209. Glenn McGregor, formerly of Merit Network, has released a new ETHERPPP packet
  2210. driver that appears as a class 1 packet driver. Available from ftp merit.edu, 
  2211. cd /pub/ppp
  2212.  
  2213. Downright Speculation
  2214. BOOTPQ         Free
  2215.  
  2216. BOOTPQ can take configuration parameters extracted via BOOTP and
  2217. insert them into a file or environmental variables. 
  2218.  
  2219. Available via ftp biochemistry.bioc.cwru.edu, get /pub/dos/bootpq12.zip
  2220.  
  2221. Downright Speculation
  2222. PKTMUX v1.2    Free
  2223.  
  2224. This program allows multiple TCP/IP protocol stacks to use a single
  2225. packet driver.
  2226.  
  2227. Available via ftp sunee.uwaterloo.ca, get /pub/wattcp/pktmux12.exe,
  2228. also via ftp ib.rl.ac.uk, get /PCSOFT.192/PKTMUX12.EXE. 
  2229. [Available at dorm.rutgers.edu?]
  2230.  
  2231. Downright speculation
  2232. NDIS shim free
  2233.  
  2234. Provides a packet driver over an NDIS driver. This is useful when you
  2235. need to run both packet driver software (such as KA9Q or NCSA Telnet)
  2236. and NDIS-based software (such as Chameleon NFS). 
  2237.  
  2238. Available via ftp to vax.ftp.com, cd /pub/packet.driver/pubdom/ndis,
  2239. get dis_pkt.asm, dis_pkt.dos, protman.sys, readme.
  2240.  
  2241. Also via ftp to netlab.usu.edu, cd /novell, get dis_pkt.zip
  2242. ftp hsdndev.harvard.edu, get /pub/dis_pkt/dis_pktx.asm (experimental)
  2243. ftp hsdndev.harvard.edu, get /pub/dis_pkt/dis_pktx.dos (experimental)
  2244.  
  2245.  
  2246. Suggestion
  2247. PDEther v1.03
  2248.  
  2249. According to Brad Eacker:
  2250. "I use this package regularly to allow Netware Lite 1.1
  2251. and QVTnet to co-exist on the same thin-enet. It works relatively 
  2252. well though QVTnet requires a pktint that is the protected mode 
  2253. driver that is included with the package."
  2254. Supports ODI over packet drivers.
  2255.  
  2256. Available by ftp to sjf-lwp.novell.com, cd /odi/pdether, get
  2257. pde103.zip
  2258.  
  2259.  
  2260. Downright speculation
  2261. Odipkt v2.1
  2262.  
  2263. Supports packet drivers over ODI and Ethernet. 
  2264.  
  2265. Available via ftp to hsdndev.harvard.edu, cd /pub/odipkt, 
  2266. get net.cfg, odipkt.8, odipkt.asm, odipkt.com
  2267.  
  2268. Downright speculation
  2269. ODITRPKT v2.0
  2270.  
  2271. Supports packet drivers over ODI and token ring. 
  2272.  
  2273. Available via ftp datacomm.ucc.okstate.edu, 
  2274. cd /pub/oditrpkt. Currently at BETA9.ZIP
  2275.  
  2276. ROUTERS, BRIDGES, TCP/IP STACKS AND DIAGNOSTIC SOFTWARE
  2277.  
  2278.  
  2279. Suggestion
  2280. WATTCP    free
  2281.  
  2282. Development package for TCP/IP.  Available from dorm.rutgers.edu
  2283. [128.6.18.15], cd /pub/msdos/wattcp, get readme.1st, wattcp.zip,
  2284. winwattcp.zip.
  2285.  
  2286. Erick Engelke (erick@development.uwaterloo.ca) says:
  2287. "Easy to program.  But of course I would think that."
  2288.  
  2289. Erick Engelke, WATTCP Architect, email erick@development.uwaterloo.ca
  2290.  
  2291.  
  2292. Suggestion
  2293. Trumpet    TCP/IP stack
  2294.  
  2295. This TCP/IP stack comes in three versions: a TSR version; a
  2296. windows version (not yet released); and a built-in version.It
  2297. includes a traceroute program called hopchk2. A WinSock-compatible
  2298. version is in development. 
  2299.  
  2300. Available from ftp.utas.edu.au, cd /pc/trumpet/abi-version/
  2301.  
  2302. P. Tattam, Programmer, Psychology Department, University of Tasmania, 
  2303. Hobart, Tasmania, Australia, 61-02-202346, 
  2304. email: peter@psychnet.psychol.utas.edu.au
  2305.  
  2306.  
  2307. Downright Speculation
  2308. CIRCA RARP server    
  2309.  
  2310. RARP lets machines determine their TCP/IP address by
  2311. querying a machine on the local ethernet.  
  2312.  
  2313. Available via anonymous FTP to pine.circa.ufl.edu,
  2314. get /pc/rarp/rarp.zip
  2315.  
  2316.  
  2317. Suggestion
  2318. BOOTP server    free
  2319.  
  2320. This is a BOOTP server for the PC that runs as a TSR, and is only 900
  2321. bytes long.  Erick Engelke says, "Works with NCSA, CUTCP, WATTCP,
  2322. KERMIT, etc."
  2323.  
  2324. Available via ftp sunee.uwaterloo.ca,
  2325. get /pub/wattcp/readme.1st, bootp.zip
  2326.  
  2327.  
  2328. Downright Speculation
  2329. Traceroute      free
  2330.  
  2331. Two versions of traceroute for DOS are available. 
  2332.  
  2333. biochemistry.cwru.edu:pub/trumpet/tcp201.zip, and
  2334. ftp-ns.rutgers.edu:/pub/wattcp
  2335.  
  2336. There are also versions of ping and traceroute by
  2337. Peter Tattam that work with Trumpet Winsock. 
  2338.  
  2339. Downright Speculation
  2340. SNMP monitor    Free
  2341.  
  2342. Available via FTP to sun.soe.clarkson.edu, get
  2343. /pub/packet-drivers/snmpsrc.zip.  Also available from ftp
  2344. enh.nist.gov, get /misc/snmpsrc.zip, snmpsup.zip, snmpsun.tar_Z
  2345.  
  2346. Downright speculation
  2347. SMTP client v1.1
  2348.  
  2349. A Windows Sockets-compatible SMTP client that is limited to
  2350. "send only." Available at:
  2351. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/smtp11.zip
  2352.  
  2353. Contact: Todd.Young@StPaul.NCR.COM
  2354.  
  2355. SMTP daemon    free
  2356.  
  2357. A Windows-Sockets SMTP daemon, complete with source code.
  2358. Available at:
  2359. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/wsmtpd15.zip.  
  2360.  
  2361. contact: iblenke@cip60.corp.harris.com
  2362.  
  2363. Suggestion
  2364. DNPAP Network Analyzers    Free
  2365.  
  2366. Packet monitoring and grabbing network tools.
  2367.  
  2368. Erick Engelke (eric@development.watstar.uwaterloo.ca) says "VERY
  2369. RECOMMENDED!"  Fergie is an  SNMP-able Ethernet monitor
  2370. and frame grabber that supersedes The Beholder and Gobbler. 
  2371. Spectre is a network host profiler. Tricklet is a set of SNMP utilities.
  2372.  
  2373. Fergie is available at dnpap.et.tudelft.nl:/pub/Fergie/frgbin2.zip. The
  2374. source code is available at dnpap.et.tudelft.nl/pub/Fergie/frgsrc2.zip. 
  2375.  
  2376. To get on the Fergie mailing list, send mail to:
  2377.  
  2378. request@dnpap.et.tudelft.nl
  2379.  
  2380. Suggestion
  2381. NetProbe    Free
  2382.  
  2383. An unsupported utility from 3Com that can decode
  2384. XNS,TCP/IP, ICMP, AppleTalk, Ipx/Spx, SMB, and other protocols, but
  2385. only supports the Etherlink, Etherlink II, EtherLink Plus and Token Plus adapters. 
  2386.  
  2387. Available on CompuServe in the 3Com forum as EPROBE.ZIP in lib 5, unsupported utilities.
  2388. [Internet FTP site, anyone?]  
  2389.  
  2390. Downright Speculation
  2391. NETWATCH    Free
  2392.  
  2393. Essential network debugging tools for the PC.  Available via FTP 
  2394. netlab.usu.edu cd /netwatch, get netwatch.exe. 
  2395.  
  2396.  
  2397. Recommendation
  2398. KA9Q    
  2399. Educational Use    Free
  2400. Commercial Use    $50
  2401.  
  2402. KA9Q can route TCP/IP packets over X.25, Ethernet, LocalTalk (with a
  2403. special version), and serial lines (via SLIP/CSLIP/PPP) as well as
  2404. handling telnet, mail, and ftp (client and server).  It supports
  2405. connection to 56 Kbps leased lines via a CSU/DSU and an SCC card, and
  2406. supports up to 4 serial ports per machine.  This means you can
  2407. purchase a 56 Kbps Internet link, then divide it among 4 users,
  2408. bringing the cost way down.  KA9Q is an essential tool for sysops
  2409. looking to hook their systems to the Internet, regardless of what kind 
  2410. of computer the BBS runs on.  A Mac version (NetMac) is available
  2411. via ftp sumex-aim.stanford.edu, cd /info-mac/comm.  
  2412.  
  2413. Available via FTP from ucsd.edu in directory
  2414. /hamradio/packet/tcpip/ka9q.  The LocalTalk version is available from
  2415. [help, anyone?] 
  2416.  
  2417. Textwin (multiwindowing version with mouse support) available via ftp
  2418. ftp.demon.co.uk, cd /pub/ibmpc/textwin.
  2419.  
  2420. Contact: amc@beryl.demon.co.uk, amccarthy@cix.compulink.co.uk, 
  2421. 100012.3712@compuserve.com
  2422.  
  2423. Phil Karn, KA9Q, 7431 Teasdale Ave, San Diego, CA
  2424. 92122, (619)587-8281, Fax: (619)587-1825
  2425.  
  2426. Downright Speculation
  2427. PC-IP    Free
  2428.  
  2429. This software has been worked on at MIT, Carnegie Mellon, Harvard and
  2430. other places. Erick Engelke (erick@development.uwaterloo.ca) notes:
  2431.  
  2432. "PCIP is not in the mainstream anymore.  I would recommend looking
  2433. at Trumpet, WATTCP or NCSA instead.  Or if you just need UDP, look
  2434. at PDCLKSET."
  2435.  
  2436. Harvard version: Source code: ftp hsdndev.harvard.edu, cd /pub/pcip,
  2437. get pcip.tar.Z, doc.tar.Z, readme, readme.cmu
  2438. Binaries: ftp hsdndev.harvard.edu, mget /pub/pcip/bin/packet/*.exe
  2439. mget /pub/pcip/bin/general/*.exe
  2440.  
  2441. Another version:
  2442. ftp netlab.usu.edu, cd /netwatch, get pcip96.zip
  2443.  
  2444.  
  2445. Downright Speculation
  2446. NOSView v3.04    
  2447.  
  2448. Written by Ian Wade, G3NRW, NOSView is online documentation for KA9Q,
  2449. which describes all the NOS commands. It also contains a complete
  2450. set of templates for use of KA9Q.
  2451.  
  2452. Available via FTP from ucsd.edu in directory
  2453. /hamradio/packet/tcpip/nosview/nosvw304.zip
  2454.  
  2455. Ian Wade,  ian@g3nrw.demon.co.uk 
  2456.  
  2457.  
  2458. Suggestion
  2459. PCROUTE v2.24    Free
  2460.  
  2461. These packages can convert a PC into a TCP/IP router (PCROUTE) or an
  2462. Ethernet Bridge (PCBRIDGE).
  2463.  
  2464. Available via FTP; ftp.acns.nwu.edu, mget /pub/pcroute/pcroute2.24.*
  2465. and pcbridge1.2.*
  2466.  
  2467. Erick Engelke (erick@development.uwaterloo.ca) says: "Excellent
  2468. product.  I have used it for years with many heavily used subnets.
  2469. Advice: use a 25 Mhz 286 or a similarly fast 386 DX.  Uses only
  2470. conventional memory so don't buy more than 1 Mb.Only takes a small
  2471. amount of DOS memory."
  2472.  
  2473.  
  2474. Vance Morrison, LANport, Inc., 2040 Polk Street #340, San Francisco,
  2475. CA 94109, (415)775-0188, email: lanport@cup.portal.com.
  2476.  
  2477. Suggestion
  2478. PCBRIDGE v2.77    Free
  2479.  
  2480. Originally by Vance Morrison of Northwester, PCBRIDGE has been taken over by  
  2481. Alessandro Fanelli and Luigi Rizzo. The latest version of PCBRIDGE is now ROMable. The  
  2482. software is available by anonymous ftp from pical3.iet.unipi.it
  2483. (131.114.9.12), cd /pub/bridge.
  2484.  
  2485.  
  2486. Alessandro Fanelli, Luigi Rizzo (luigi@iet.unipi.it),
  2487. Universita` di Pisa - via Diotisalvi 2, 56126 Pisa, Italy
  2488. Tel. +39-50-568533  -- Fax +39-50-568522
  2489.  
  2490. Downright Speculation
  2491. Drawbridge v1.1
  2492.  
  2493. Drawbridge is a bridging filter that requires two ethernet cards. 
  2494. It is comprised of three programs: Filter, Filter Compiler and Filter
  2495. Manager.
  2496.  
  2497. It is available via anonymous ftp from sc.tamu.edu (128.194.3.57)
  2498. get pub/security/drawbridge/drawbridge-1.1.tar.Z, 
  2499. drawbridge-1.1-des.tar.Z
  2500.  
  2501.  
  2502. Downright Speculation
  2503. KarlBridge v1.41
  2504.  
  2505. This software provides a two port Ethernet to Ethernet bridge that can filter
  2506. based on any Ethernet protocol, including IP, XNS, DECNET, LAT, EtherTalk,
  2507. NetBEUI, Novell IPX, etc. 
  2508.  
  2509.  
  2510. It will also act as an IP firewall by filtering IP packets based 
  2511. on IP address/network/subnet combinations and socket numbers. It can 
  2512. also filter DECNET and AppleTalk Phase 1 & 2 packets. Novell SAP and NCR 
  2513. WaveLAN filtering are coming in a future release.
  2514. Available via ftp 128.146.1.7, cd /pub/kbridge
  2515.  
  2516. Downright Speculation
  2517. Ethload       Free
  2518.  
  2519. This is an Ethernet load monitor that will give you an idea when collisions
  2520. are getting out of hand and you need to install a bridge. 
  2521.  
  2522. Available via cs.ubc.ca, cd /mirror4/msdos/lan/ethld101.zip. 
  2523. Also available on Simtel20, <msdos.lan>ethld101.zip. 
  2524.  
  2525.  
  2526. DOS APPLICATIONS
  2527.  
  2528. Downright Speculation
  2529. BOOTP and FTPD NLMs
  2530.  
  2531. Available from novell.felk.cvut.cs, cd /pub/nw311/ftpd,
  2532. cd /pub/nw311/bootpd, cd /pub/nw311/resolv. 
  2533.  
  2534. Downright Speculation
  2535. LPD    Free
  2536. FTP and BOOTP server included
  2537.  
  2538. This software is a freeware line printer daemon as well as an FTP and
  2539. BOOTP server.  Available via ftp tacky.cs.olemiss.edu, get
  2540. /pub/lpd/lpd.zip, lpdsrc.zip
  2541.  
  2542. Downright Speculation
  2543. WinLPR    Shareware
  2544.  
  2545. This is a Windows Sockets-compliant LPR client, which lets you
  2546. print to remote printers hanging off LPD servers, query remote
  2547. queues, etc. 
  2548.  
  2549. It is available via ftp microdyne.com, get /pub/incoming/winlpr10.zip. 
  2550.  
  2551. Suggestion
  2552. TELNETD    Free
  2553.  
  2554. TELNETD is a simple, free and unsupported TELNET server for
  2555. PCs. It works on top of packet drivers and lets you run
  2556. most DOS software. 
  2557.  
  2558. Available via ftp sunee.uwaterloo.ca, /pub/wattcp/telnetd.zip
  2559.  
  2560.  
  2561. Downright Speculation
  2562. IRC client    free
  2563.  
  2564. A client for Internet Relay Chat.
  2565.  
  2566. Available via ftp ftp.utas.edu.au, mget /pc/trumpet/irc/irc*.zip
  2567.  
  2568.  
  2569. Downright Speculation
  2570. WAIS for DOS    free
  2571.  
  2572. A DOS WAIS client which uses the Clarkson drivers is available by
  2573. anonymous FTP to samba.oit.unc.edu, get /pub/WAIS/UNC/DOS/doswais.zip.
  2574.  
  2575. A DOS WAIS client that requires the PC/TCP software from FTP Software
  2576. is available via anonymous FTP to oac.hsc.uth.tmc.edu (129.106.30.1),
  2577. get /public/dos/misc/oacwais.exe.
  2578.  
  2579. For information, contact: Steven E. Newton, Office of Academic 
  2580.  
  2581. Computing, University of Texas Health Science Center, Houston,
  2582. snewton@oac.hsc.uth.tmc.edu.
  2583.  
  2584. There is also a Novell LAN Workplace WAIS client available by
  2585. anonymous FTP to ftp.oit.unc.edu, get
  2586. /pub/WAIS/UNC/nov-cli-visual.zip.
  2587.  
  2588. Downright Speculation
  2589. PDCLKSET    Free
  2590.  
  2591. This software sets your PC clock to via an Internet time server.
  2592. Available via FTP pollux.lu.se, get
  2593. /pub/network/pdclkset/pdcclk146.zip.  Also available at ftp.lu.se, 
  2594.  
  2595. get /pub/network/pdclkset, or on wsmr-simtel20.army.mil, cd
  2596. PD1:<MSDOS.PKTDRVR>, get PDCLK145.ZIP.
  2597.  
  2598.  
  2599. Suggestion
  2600. NCSA Telnet    Free
  2601.  
  2602. Available via FTP zaphod.ncsa.uiuc.edu, get /PC/Telnet/tel2305b.zip
  2603. and tel2305s.zip.  Also available from wsmr-simtel20.army.mil, cd
  2604. PD1:<MSDOS.PKTDRVR>, get tel2305b.zip
  2605.  
  2606.  
  2607. Compatible with LocalTalk.  A special version which supports PPP is
  2608. available via ftp merit.edu get /pub/ppp/ncsappp.zip.
  2609.  
  2610. Be aware that the current version does not reassemble fragments, even
  2611. though a fix is available for this (argghhh....)
  2612.  
  2613.  
  2614. Recommendation
  2615. Kermit v3.12    Free
  2616.  
  2617. This version of Kermit supports telnet, VT320 and Tektronix emulation,
  2618. as well as SIXEL. Directly supports ODI. A book is available on this.
  2619.  
  2620. As Joe Doupnik states:
  2621. "MS-DOS Kermit runs over its own internal TCP/IP stack, as we know,
  2622. over Novell's LWP/DOS+Telapi, over FTP Inc's PC/TCP+Tnglass, over B&W's TCP/IP
  2623. stack, over DEC Pathworks, as well as over anyone's NetBIOS (straight for 
  2624. AT&T/NCR Unix logins and EBIOS/ACSI for AT&T/NCR and IBM async servers). It 
  2625. supports several Int 14h standards too, plus Int 6Bh, though I have never been 
  2626. able to get the NCSA Telnet INT14 program to work for me. This seems like a 
  2627. pretty broad set of choices (especially in a 230KB program). 
  2628. What we can't do is link in any commercial library to Kermit. The program must 
  2629. have completely open source code and be buildable & runnable in the absence of 
  2630. every/any vendor's TCP/IP product. Even the C code in MSK can be compiled by
  2631. multiple vendors's compilers and no vendor's run time library (or startup code) 
  2632. is touched."
  2633.  
  2634. Available via ftp kermit.cc.columbia.edu, get /kermit/bin/msvibm.zip
  2635.  
  2636.  
  2637. Downright speculation
  2638. PCUCP    Free
  2639.  
  2640. This is an X terminal application that runs over a serial port. It
  2641. supports multiple windows, and multiple sessions.It is available via 
  2642. ftp.cica.indiana.edu:/pub/pc/win3/modem/pcucp11a.zip.
  2643.  
  2644.  
  2645. Suggestion
  2646. CUTCP Telnet    Free
  2647.  
  2648. Now supported by Rutgers University, having been tranferred from
  2649. Clarkson University and Brad Clements. Available via FTP from 
  2650. ftp-ns.rutgers.edu, cd /pub/msdos/cutcp/current. This directory
  2651. contains the source and binary distributions, both in zip archives.
  2652. For information contact cutcp-support@ftp-ns.rutgers.edu. 
  2653.  
  2654. Downright speculation
  2655. Clarkson Archie    Free
  2656.  
  2657. Available via FTP from omnigate.clarkson.edu, get pub/cutcp/archie.zip
  2658.  
  2659. Suggestion
  2660. Princeton Telnet Free
  2661.  
  2662. The Princeton version of Telnet supports localtalk cards and also does tn3270
  2663. access. Works on all localtalk cards (Sitka, Daystar, Farallon, ... )
  2664.  
  2665. Available from pusun3.princeton.edu, get /pub/PU2-2TN/pu2-2tn.zip
  2666.  
  2667. Downright speculation
  2668. Clarkson Charon IPX/TCP email and printer gateway
  2669.  
  2670. Available via FTP from omnigate.clarkson.edu, get
  2671. pub/cutcp/charon-3.4/charon.zip
  2672.  
  2673. Also ftp sun.soe.clarkson.edu, get /pub/charon.zip.
  2674.  
  2675.  
  2676. Recommendation
  2677. SLIPDISK package    Free
  2678.  
  2679. A complete package for dialup Internet access via SLIP which supports
  2680. Gopher, Telnet, Popmail, and FTP.  Only drawback is lack of support
  2681. for compressed SLIP.  The current version has problems with modems
  2682. based on the Rockwell V.32bis chip set.  To get around this, you can
  2683. use a scripting communications program to dial out instead, then use a
  2684. batch script to load UMSLIP or the SLIPPER driver.  Other hints:
  2685. turn off DTR.  The UMSLIP driver included with this package will 
  2686. not work with PKTMUX.
  2687.  
  2688. Available via anonymous FTP to boombox.micro.umn.edu, get
  2689. /pub/slipdial/slipdisk/slipdisk.zip.
  2690.  
  2691. Downright Speculation
  2692. PC Gopher III    Free
  2693.  
  2694. An MS-DOS client for the Gopher information server. Be aware
  2695. that you must load WINPKT.COM to get this program to work under
  2696. Windows. 
  2697.  
  2698.  
  2699. Available via anonymous FTP to boombox.micro.umn.edu,
  2700.  
  2701.   get /pub/gopher/PC_client/docs/pcgopher.txt
  2702.   get /pub/gopher/PC_client/00README
  2703.  
  2704. Downright Speculation
  2705. KA9Q Gopher Server
  2706.  
  2707. Available at:
  2708. boombox.micro.umn.edu:/pub/gopher/PC_server/ka9q
  2709.  
  2710. Downright Speculation
  2711. Hamburg Gopher Server
  2712.  
  2713. Available at:
  2714. boombox.micro.umn.edu:/pub/gopher/PC_server/hamburg
  2715.  
  2716. Suggestion
  2717. DOS Trumpet    v1.06 Shareware, $10. 
  2718.  
  2719. Trumpet is an NNTP newsreader for DOS that can be placed on a 
  2720. Novell server, while storing news groups and configuration files
  2721. in each user's directory. It supports packet drivers, LAN
  2722. WorkPlace for DOS, and Trumpet ABI.    
  2723.  
  2724. Available at ftp.utas.edu.au(131.217.1.20):/pc/trumpet/dostrump/trmp106b.zip
  2725.  
  2726. Contact: lee@nrc.com. 
  2727.  
  2728. Multi-user site licenses
  2729.  
  2730. Trumpet will be charged by the  total number of users who have  access
  2731. to  Trumpet  on  a  network.  A  site  is  designated  as  being   one
  2732. organization located within a radius of 10 km.
  2733.  
  2734. The pricing structure is:
  2735.  
  2736. 1-99 users            $10 US per user
  2737. 100-999 users       $1000 US + $2 US per additional user above 100
  2738. 1000-4999 users     $2800 US + $0.20 US per additional user over 1000
  2739. 5000+               $3600 US
  2740.  
  2741. P. Tattam, Programmer, Psychology Department, University of Tasmania, 
  2742. Hobart, Tasmania, Australia, 61-02-202346, 
  2743. email: peter@psychnet.psychol.utas.edu.au
  2744.  
  2745.  
  2746. Downright Speculation
  2747. Stan's Own Server    Free
  2748.  
  2749. Available via FTP to sun.soe.clarkson.edu,
  2750.  
  2751. get /pub/packet-drivers/soss.zoo.  Also available from: ftp 
  2752. spdcc.com, get/pub/sos/soss.zoo, sossexe.zoo
  2753.  
  2754. A version with a couple of bugs fixed is available from:
  2755. ftp hilbert.wharton.upenn.edu, cd pub/tcpip
  2756.  
  2757. For info, contact: Richard Bruan, rbraun@spdcc.com, or Seemong Tan,
  2758. stan@cs.uiuc.edu.
  2759.  
  2760.  
  2761. Downright Speculation
  2762. Broadcast    Free
  2763.  
  2764. This is a PC client for the Macintosh Broadcast program,
  2765. by Kai Getrost. 
  2766.  
  2767.  
  2768. Available by ftp to caisr2.caisr.cwru.edu,
  2769. get /pub/net/bdcst11.zip [check this]
  2770.  
  2771.  
  2772. Suggestion
  2773. NuPOP/PC v1.03 free
  2774.  
  2775. A menu driven version of POP for DOS.  Can be gotten to support
  2776. LocalTalk via the provided LocalTalk driver, do not use the Clarkson
  2777. drivers for this. By the way, NuPOP also supports serial access,
  2778. as well as Gopher. 
  2779.  
  2780. Available via ftp.acns.nwu.edu, mget /pub/nupop/nupop*.zip
  2781.  
  2782.  
  2783. Suggestion
  2784. POPmail-PC v3.1    
  2785.  
  2786. This is the package included with SLIPDISK.  Supports Ethernet and
  2787. SLIP, and claims LocalTalk support [anyone gotten this to work?].
  2788.  
  2789. Available via anonymous FTP to boombox.micro.umn.edu, cd
  2790. /pc/popmail-3.1/popmail.*
  2791.  
  2792. A POP3 server for VMS and MS-DOS client software is available via ftp
  2793. logos.ucs.indiana.edu, cd /INDEX.
  2794.  
  2795. Suggestion
  2796. PC-Pine v3.84    Free
  2797.  
  2798. This is a PC-compatible version of Pine, running under DOS. There
  2799. are versions written for FTP Software's PC/TCP, Novell's Lan WorkPlace
  2800. for DOS, and WATTCP. 
  2801.  
  2802. Available via anonymous FTP to ftp.cac.washington.edu,
  2803. cd /mail, get pcpine_n.zip (Novell LWP), pcpine_f.zip (FTP PC/TCP),
  2804. pcpine_p.zip (WATTCP version). 
  2805.  
  2806. Note that PC Pine relys on the Interactive Mail Access Protocol 
  2807. (IMAP) rather than POP. You must have an IMAP server installed in
  2808. order to use it. IMAPd is available from ftp.cac.washington.edu,
  2809. get /mail/imap.tar.Z. 
  2810.  
  2811. Downright speculation
  2812. Ph client    
  2813.  
  2814. University of Illinois CCSO name server client.
  2815.  
  2816. Available via anonymous FTP to uxc.cso.uiuc.edu, mget /net/ph/dos/*.*
  2817.  
  2818.  
  2819. Downright Speculation
  2820. FTPNuz    $10/shareware
  2821.  
  2822. Gene Mangum's shareware newsreader for DOS, which requires FTP 
  2823. Software's PC/TCP kernel. Runs under MS-DOS, as well as in a DOS 
  2824. window under MS Windows and OS/2. Features incluee support for NNTP,
  2825. pull-down menus, reading and posting of news, reply by mail via SMTP.
  2826.  
  2827. Available via anonymous FTP to calvin.sfasu.edu,
  2828. get /pub/dos/network/ftp-pctcp/ftpnuz10.zip
  2829.  
  2830. Gene Mangum, h198@hosp.med.umich.edu
  2831.  
  2832. WINDOWS APPLICATIONS
  2833.  
  2834. Downright Speculation
  2835. WAIS for Windows
  2836.  
  2837. A Windows WAIS client is vailable by anonymous FTP to ftp.oit.unc.edu, 
  2838. get /pub/WAIS/UNC/Windows/winwais.zip. Now compatible with Winsock. 
  2839.  
  2840.  
  2841. For information, contact Jim Fullton, UNC Office of Information
  2842. Technology, Computing Systems Development Group, (919)962-9107,
  2843. fullton@samba.oit.unc.edu.
  2844.  
  2845. Suggestion
  2846. Trumpet WinSock
  2847.     
  2848. Finally, a publicly distributable TCP/IP stack supporting Windows 
  2849. Sockets! It's in Alpha, but if you need it badly enough, go ahead. 
  2850.  
  2851. Available at biochemistry.cwru.edu:/pub/trumpwsk
  2852.  
  2853. Suggestion
  2854. Windows Trumpet 
  2855.  
  2856. WinTrumpet is a Windows-Sockets compatible NNTP client from P. Tattam
  2857. that supports the Trumpet ABI, packet drivers, Novell Lan Workplace for 
  2858. DOS and WinSock v1.1. 
  2859.  
  2860. Available at ftp.utas.edu.au:/pc/trumpet/wintrump/*
  2861.  
  2862. Downright speculation
  2863. Cookie server    Free
  2864.  
  2865. This is a Windows-Sockets compatible fortune cookie server 
  2866. (RFC 865) that runs on port 17. Available via: 
  2867. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/cooksock.zip. 
  2868.  
  2869. Contact: alun@huey.wst.com
  2870.  
  2871. Recommendation
  2872. HGopher            Free
  2873.  
  2874. This is a Windows-sockets compatible version of Gopher. 
  2875.  
  2876. Available at:
  2877. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/hgopher.zip
  2878.  
  2879. Downright speculation
  2880. Text server
  2881.  
  2882. This is an extended finger client, which can also
  2883. serve text files. Available via:
  2884. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/txtsrv.zip
  2885.  
  2886. Recommendation
  2887. WinQVT/Net v3.7
  2888. Shareware    $40
  2889. Students    $20
  2890.  
  2891. QVTNet v3.7 is a Windows v3.1 application that supports FTP client 
  2892. and server (not fully graphical; commands are entered at the bottom 
  2893. of the window), telnet (up to 15 simultaneous sessions), mail (SMTP 
  2894. and POP3), NNTP (up to 30 newsgroups) and lpr.  It is compatible with
  2895. SLIPDIAL and is written as a DLL.  WinQVT requires you to supply your
  2896. own packet drivers; most Ethernet cards come with such drivers, or if
  2897. not, you can use one from the Crynwr (formerly Clarkson) Packet 
  2898. Driver library.  It is compatible with AppleTalk.  [Hints, anybody?]
  2899.  
  2900. WinQVT/Net supports class 6 SLIP drivers, so you do not need to 
  2901. use software such as SLIPPER or CSLIPPER with it. 
  2902.  
  2903. Available via biochemistry.bioc.cwru.edu, cd /pub/qvtnet
  2904.  
  2905. Contact: djpk@troi.cc.rochester.edu
  2906.  
  2907. Downright Speculation
  2908. WinVN v0.80    
  2909.  
  2910. A Windows application for reading news which supports NNTP over TCP/IP 
  2911. or serial line connections.  Compatible with Winsock v1.1; a version 
  2912. is also available for Windows NT. Does not support LocalTalk. Current 
  2913. version has been tested with:
  2914.  
  2915. NetManage's WINSOCK
  2916. FTP Inc.'s WINSOCK
  2917. Wollongong's WINSOCK
  2918. NT's WSOCK32
  2919. DEC's Pathworks
  2920. MS's Lan Man
  2921.  
  2922. Available by ftp to titan.ksc.nasa.gov, cd /pub/win3/winvn
  2923.  
  2924. Sam Rushing, email: rushing@titan.ksc.nasa.gov,
  2925. hoggle!hoggle2!rushing@peora.sdc.ccur.com
  2926.  
  2927. You'll find a bunch of zip files.  Be sure to use binary mode.
  2928. Read the file announce-2.txt first.
  2929.  
  2930.  
  2931. Downright speculation
  2932. Finger v3.1    Free    
  2933.  
  2934. The Windows version of Finger, which requires a Winsock DLL.
  2935.  
  2936. Available at:
  2937. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/finger31.zip. 
  2938.  
  2939.  
  2940. Recommendation
  2941. PCEudora    Free    
  2942.  
  2943. The Windows version of Eudora, now compatible with Winsock. Great!
  2944.  
  2945. Available at:
  2946. sunsite.unc.edu:/pub/micro/pc-stuff/ms-windows/winsock/apps/pce*.zip
  2947.  
  2948.  
  2949. Downright Speculation
  2950. Uwho    Free    
  2951.  
  2952. Uwho is Stan Barber's interface to whois and ph e-mail address servers 
  2953. that runs under MS-DOS. An alpha test version is available on ftp on 
  2954. punisher.caltech.edu in pub/dank/uwho as uwho218b.tar.Z, uwho218b.zip, 
  2955. or unarchived in subdir uwho218b.  The archived text files are in 
  2956. Unix format.
  2957.  
  2958. Recommendation
  2959. Cello WWW client    Free
  2960.  
  2961. This application is not finished yet, but it's looking good.
  2962. It supports some Mosaic extensions to WWW, including embedded pictures, 
  2963. sounds, and postscript files via external viewers. The current version is 
  2964. based on Distinct TCP, with a Windows Sockets version to follow. 
  2965.  
  2966. Available via ftp fatty.law.cornell.edu, cd /pub/LII/Cello. Files include
  2967. VIEWERS.ZIP, the graphics viewer and sound player; GSWIN.ZIP, a Ghostscript
  2968. Postscript viewer for Windows; CELLO.ZIP the executables of Cello; and 
  2969. DIS.ZIP, a time-limited version of Distinct TCP to use with the client. 
  2970.  
  2971.  
  2972. COMMERCIAL SOFTWARE
  2973.  
  2974. Development Software
  2975.  
  2976.  
  2977. Epilogue Technology:
  2978. Includes source code.
  2979. info@epilogue.com, Fax: (505)271-9788
  2980.  
  2981. Spider Systems
  2982. Available for many architectures.
  2983. ian@spider.co.uk, Fax: 44-31-555-0664
  2984.  
  2985. Marben Produit TCP/IP
  2986. Source available, Fax: 33-1-47.72.55.00
  2987.  
  2988. Network Research FUSION
  2989. Source available, Fax: 1(805)485-8204
  2990.  
  2991. Downright speculation
  2992. Distinct Software Development Kit    $495
  2993.  
  2994. Distinct TCP/IP for Windows - Software Development Kit
  2995. This product is engineered as 100% DLL, and requires only 4 Kb DOS
  2996. memory for a driver. The product supports up to 64 concurrent sockets, 
  2997. and buffers are allocated and deallocated as they open and close. 
  2998.  
  2999. Includes three development kits:
  3000.  
  3001. Distinct TCP/IP for Windows - Berkeley-style Sockets
  3002. (TCP, UDP, ICMP, Telnet, FTP)
  3003.  
  3004. Distinct TCP/IP for Windows - Windows Sockets ver. 1.1
  3005.  
  3006. Distinct RPC - a complete ONC RPC/XDR toolkit for Windows
  3007. (Client and Server RPC over both TCP and UDP; includes RPCGEN)
  3008.  
  3009. Distinct Corporation, 14395 Saratoga Avenue, Suite 120, Saratoga, 
  3010. CA 95070, (408)741-0781, Fax: (408)741-0795, email: chris@distinct.com
  3011.  
  3012.  
  3013. APPLICATIONS
  3014.  
  3015. Downright speculation
  3016. Distinct Network Applications    $395
  3017. Network & Developer Combination    $695
  3018.  
  3019. Distinct TCP/IP for Windows - Network Applications v3 integrates
  3020. several Windows based TCP/IP utilities under a single interface. 
  3021.  
  3022. These include: Distinct Telnet which allows multiple concurrent 
  3023. Telnet sessions on different remote hosts, allowing you to cut 
  3024. and paste information between these systems as well as between 
  3025. the systems and your local host. Distinct FTP is a drag and drop 
  3026. FTP which allows you to drag a local or remote file to a local 
  3027. printer. Distinct FTP has both a client and a server; this means
  3028. that files can be also transferred by selected users from PC to PC
  3029. (password protection is included). TFTP provides file transfer 
  3030. services to  communications servers and routers that do not have 
  3031. FTP. Network Monitor monitors host-to-host communication and data 
  3032. transmission traffic and is able to capture network traffic to a file.
  3033.  
  3034. Distinct Corporation, 14395 Saratoga Avenue, Suite 120, Saratoga, 
  3035. CA 95070, (408)741-0781, Fax: (408)741-0795, email: chris@distinct.com
  3036.  
  3037.  
  3038. Downright Speculation
  3039. Piper/IP    $375
  3040. Developer's Kit    $375
  3041.  
  3042. Piper/IP runs under DOS protected mode, using less than 6K of lower
  3043. DOS memory. The company claims that FTP transfers take place at 
  3044. 100K/second over a LAN. They also claim the ability to run
  3045. concurrrently with NetWare, VINES, LAN Manager, LAN Server, and 
  3046. W4WG. The package includes a FTP, Telnet (client and server), and
  3047. SMTP. 
  3048.  
  3049. Ipswitch, 580 Main Street, Reading, MA 01867, (617)942-0621. 
  3050.  
  3051.  
  3052. Suggestion
  3053. Everywhere Access    
  3054.  
  3055. This is a remote access package for TCP/IP, including support for
  3056. telnet server, FTP and Kermit transfers, VT100, VT220, VT300
  3057. emulation, password security.
  3058.  
  3059. Erick Engelke (erick@development.uwaterloo.ca) says: "It does come
  3060. ready to work with several TCPs and also includes a version linked
  3061. with WATTCP so it doesn't require a commercial TCP if you don't own
  3062. one."
  3063.  
  3064. Supro Network Software Inc., P.O. Box 18, Warsaw, Ontario, Canada
  3065. K0L-3A0, (705) 652-1572, email: info@snsi.com
  3066.  
  3067.  
  3068.  
  3069. Recommendation
  3070. PC/TCP v2.2    $400
  3071. Kernel Only    $200
  3072.  
  3073. PC/TCP v2.2 offers a solid implementation of TCP/IP for DOS, with 
  3074. some Windows applications.  It includes NFS for UDP or TCP, remote 
  3075. login (telnet, rlogin, supdup) with a variety of terminal emulators, 
  3076. file transfer (FTP, TFTP, rcp), electronic mail and news (pop2, pop3,
  3077. pcmail, mail, SMTP, NNTP), printing (LPR and print redirection) and
  3078. informational utilities (whois, ping, finger, host). Some kerberos
  3079. support is available to domestic customers. If used alongside Concord
  3080. Communications Mapware controllers, this product is capable of
  3081. handling both OSI and TCP/IP concurrently. 3270 support is OK.
  3082.  
  3083. It is available for Ethernet (DIX or 802.3), Token Ring, SLIP, PPP,
  3084. LocalTalk and X.25 interfaces, over packet drivers, ODI drivers, NDIS
  3085. drivers, banyan drivers, and ASI drivers.
  3086.  
  3087. This package does not route; you are therefore restricted to
  3088. installing it with PPP, SLIP or Ethernet, but not some combination of
  3089. the above.
  3090.  
  3091. PC/TCP is incompatible with Stacker. As of version 2.2, the
  3092. Windows applications have been improved. New to Windows support is
  3093. the ability to mount and unmount NFS drives from within
  3094. Windows, and to use PCNFSD printer services from Windows.
  3095.  
  3096. The 2.2 manual includes a 6-page install guidelette, and now
  3097. offers a menu-driven installation and configuration program.
  3098.  
  3099. FTP Software, 2 High St., North Andover, MA 01845, 1-800-282-4ftp,
  3100. Support: 1-800-382-4ftp, Fax: (508)794-4477
  3101.  
  3102.  
  3103. Suggestion
  3104. Chameleon    v3.15    $125 (upgrade price)
  3105. ChameleonNFS v3.15    $400
  3106.  
  3107. Chameleon is a Windows 3.x TCP/IP implementation that can handle FTP,
  3108. Telnet (3270, ANSI, VT-52, VT100 and VT220 emulation), ping, SMTP,
  3109. POP2, and NFS (client and server) all in multiple windows,
  3110. simultaneously.  The package also supports DNS via an implementation
  3111. of BIND, as well as SNMP.  ChameleonNFS is compatible with the
  3112. IPX/Link product for Netware from NetManage.  Most of the code resides 
  3113. in a DLL. Chameleon supports multiple interfaces, and can route between 
  3114. them. The newest release supports CSLIP, PPP and NNTP. 
  3115.  
  3116. NetManage, Inc., 20823 Stevens Creek Blvd.,Cupertino, CA 95101,
  3117. (408)973-7171, Fax: (408)257-6405.
  3118.  
  3119.  
  3120. Downright Speculation
  3121. Super-TCP v2.0    $495
  3122.  
  3123. Super-NFS client v2.0
  3124.  
  3125. SuperTCP supports telnet (3270, VT100, VT102, and VT220 emulation),
  3126. talk, SMTP, ftp, ping, and with Super-NFS, NFS client.  SuperTCP
  3127. supports both TCP/IP and Novell IPX protocols, as well as SNMP.  
  3128.  
  3129. It is written as a DLL, although a TSR version of the protocol 
  3130. stack is also available for those who want to use DOS as well.  
  3131. Network statistics (arp, ICMP messages, etc.) are available.  
  3132. A shareware version (WinTCP v1.0) is also available for download 
  3133. from EXEC-PC and other BBSes.
  3134.  
  3135. Frontier Technologies, 10201 North Port Washington Road, Mequon, WI
  3136. 53092, (414)241-4555, Fax:(414)241-7084
  3137.  
  3138.  
  3139. Suggestion
  3140. BW-NFS v3.0    
  3141.  
  3142. The BW-NFS protocol stack is available as a TSR, rather than as a DLL, 
  3143. which means that it takes up DOS memory even if you are primarily using 
  3144. it with Windows.  The package supports SLIP, NFS client, Telnet (VT220 
  3145. and 3270 emulation), finger, talk, ftp, and SMTP mail.  It also can act 
  3146. as a server for telnet, FTP, finger, and lp.  The 3270 emulation is reportedly OK.
  3147.  
  3148.  
  3149. Beame & Whiteside Software, Ltd., P.O. Box 8130, Dundas, Ontario,
  3150. Canada L9H 5E7,(416)765-0822, Fax: (416)765-0815
  3151.  
  3152. PC-NFS 5.0 $395    
  3153.  
  3154. PC-NFS from SunSelect (a Sun Microsystems business) includes a TCP/IP
  3155. stack, TCP/IP utilities under DOS and Windows, an NFS client, remote
  3156. printing support, SNMP, and Windows Sockets. Add-on packages support
  3157. email and advanced telnet. A Programmer's Toolkit is available which
  3158. provides DOS and Windows support for TCP/IP over sockets and XTI,
  3159. as well as TIRPC, NIS and supporting APIs.
  3160.  
  3161. SunSelect, 2 Elizabeth Drive, Chelmsford, MA 01824-4195 USA
  3162. 1-800-24-SELECT or 508-442-0000; FAX 508-250-5068
  3163.  
  3164. Downright Speculation
  3165. Wollongong PathWay Access
  3166.  
  3167. Wollongong offers TCP/IP for DOS/Windows, Mac, OS/2, and Vax/Alpha;  
  3168. SNMP Management products, and Electronic Messaging based on OSI/TCP 
  3169. X.400/X.500 Standards. 
  3170.  
  3171. PathWay Access for DOS/Windows - $350  (Extensive discounts for multiple users
  3172.                    Client NFS  - $95                and Educational facilities)
  3173.  
  3174.         Access for Macintosh   - $295
  3175.                    Client NFS  - $295
  3176.  
  3177.         Access for OS/2        - $350
  3178.  
  3179. API Developer's Kit Mac, DOS/Windows - $200. Features:
  3180.  
  3181. * DOS AND true Windows applications
  3182. * VT100-220, VT320-330, VT340, IBM 3270 2-5, IBM 3179g, Tek 4105-4010
  3183. * High performance FTP
  3184. * Scripting, Remapping, Printing Services
  3185. * Ethernet, Token-Ring, Async, X.25 support
  3186. * 28K DOS/Windows (Most of which can be loaded high) Windows 
  3187. Sockets Compliant
  3188. * ODI, NDIS, PDS, ASI, ODI/NDIS, SLIP, PPP, IPX/NDIS, IP/IPX, 
  3189. IP/NetBIOS support
  3190. * Extensive 3rd Party Support
  3191.  
  3192. The Wollongong Group, 800-872-8649 (Outside Cal), 800-962-8649 (In Cal), 
  3193. (415)962-7134, contact: George Stump, gstump@twg.com
  3194.  
  3195.  
  3196. XWARE
  3197.  
  3198. Suggestion
  3199. PC-Xview    
  3200.  
  3201. PC-Xview is available for DOS or Windows, supporting use of X over 
  3202. the network.  It also supports NCD's Xremote protocol that allows
  3203. X to run over a modem much faster than could be achieved running a 
  3204. standard X package over SLIP or PPP.
  3205.  
  3206. Network Computing Devices, Inc., (800)793-7638
  3207.  
  3208.  
  3209. Downright speculation
  3210. XVISION    $449
  3211.  
  3212. XVision allows X applications to run under Windows.  You have a choice 
  3213. of running each X app in its own Window, or all X applications within 
  3214. one big Window.
  3215.  
  3216.  
  3217. VisionWare, Ltd., 57 Cardigan Lane, Leeds, England, 44-0-532-788858,
  3218. (800)222-0550, Fax:44-0-532-304676
  3219.  
  3220.  
  3221. Downright Speculation
  3222. DesQView X
  3223.  
  3224. DesQView X integrates networks of DOS and UNIX machines using the
  3225. X-Windows protocol, allowing DOS machines to act as X-Windows clients
  3226. and servers.
  3227.  
  3228. Quarterdeck Office Systems, 150 Pico Boulevard, Santa Monica, CA
  3229. 90405, (213)392-9851, Fax:(213)399-3802
  3230.  
  3231. ------------------------------ END OF FAQlet ------------------------
  3232.  
  3233.  
  3234. Please send comments to:
  3235.  
  3236. Bernard Aboba
  3237. Author "The Online User's Encyclopedia", Addison-Wesley, 1993
  3238. MailCom
  3239. 5337 College Ave., Suite 326
  3240. Oakland, CA 94618, 
  3241. Fax: (510)540-1057
  3242. email: aboba@world.std.com
  3243.