How to Get NetWare and TCP/IP to Coexist

David J. Birnbaum
9 March 1995

Background

In February 1995 I posted a cry for help to Usenet about how to get Novell NetWare to coexist with IBM TCP/IP for OS/2. Thanks to the generous advice of several readers, everything is now working as advertised. I am appending a description of what I did, where I went wrong, and how I ultimately succeeded. Feel free to archive this, put it into a FAQ file, or take any other steps to make it generally available to others who may find themselves in my position.

Configuration

I am running OS/2 2.11 with IBM TCP/IP 2.0 with the most recent CSDs. I had already installed TCP/IP, and needed to add Netware support. I am connected by ethernet to my university network, which runs both TCP/IP and Netware servers on the same wires. The procedure described below works on my machine, which has a single ISA ethernet board and no token ring connection. Other types of boards, or multiple boards in a single machine, may require a more complicated configuration.

Summary

The installation routine misorders the lines in config.sys, does not set the NetAddress value in the protocol.ini file, and may not set the frame types (for ethernet and token-ring settings) correctly in protocol.ini. You need to fix these by hand.

Procedure

  1. Obtain IBM LAPS WR7045, available as disk images us7045b1.dsk and us7045b2.dsk. Use loaddskf.exe (part of loaddf.zip) to create the proper disks.
  2. Obtain NetWare. When you create the installation floppies, you need to label each one (WSOS2_1, etc.), using the names provided. The installation script checks for the diskette labels and will not continue if it does not find the label it wants.
  3. Install NetWare, following instructions. When you are asked to select a driver for your network board, pick one at random. The installation routine wants to install a driver in your config.sys, but this line will be REM'd out by the time you finish, so it doesn't matter which driver you select. (Other descriptions about how to install NetWare talk about choosing between odinup.sys and lansup.sys at some stage of your configuration. Ignore this discussion; you will not install either one.) Do not reboot.
  4. Install the latest version of LAPS and add NetWare Requester support. Do not reboot.
  5. The installation routine modifies your c:\config.sys and c:\ibmcom\protocol.ini files (your drive letter may vary). But it modifies them incorrectly, and you should make the following changes before rebooting.
  6. Find the line in config.sys that loads your ethernet card driver for TCP/IP. Mine reads
      device=c:\ibmcom\macs\macwd.os2
    
    
    Move this before the line that reads
      REM --- NetWare Requester statements BEGIN ---
    
    
    The installation routine put these in the wrong order in my system, rendering it unbootable.
  7. Your protocol.ini file should contain a section headed "[odi2ndi_nif]." You need to modify this section by inserting the network address of your ethernet card. The address itself is a twelve-digit hex number, and the first catch is that it needs to be preceded by an "i" in the protocol.ini file. The documentation tells you that this number is printed on your card. The relevant line of my protocol.ini file reads:
     
    
    	NetAddress = "i000003179F98"
    
    
    Here's the second catch: this is not the number printed on my card. When I used the number printed on my card, a message scrolled by during bootup telling me to use 000003179F98 for ethernet, and that the address on my card was the token ring address. The system would boot with the wrong address, but it generated the dreaded REQ0815 and SYS0059 error messages because it could not connect to any servers. The correct number is logged during bootup in c:\ibmcom\lantran.log, so that you can check there if it flies by too quickly on the screen during bootup. The relevant line of my lantran.log reads
    	Adapter 0 is using node address 000003179F98.
    	The Token-Ring format is 0000C0E8F919.
    
    
    The Token-Ring number is the one printed on my card.
  8. Here's the next catch: your protocol.ini file lets you set four ethernet values and two token-ring ones. Set all the ethernet ones to "yes" and all the token-ring ones to "no". Put the frame type used by your server first; I am told that ethernet_ii is the most common type in universities, while ethernet_802.2 and ethernet_802.3 may be more common elsewhere. According to the documentation, you will be able to connect to all types of servers to which you answer "yes", but when an initial connection is made during bootup, only the first frame type is searched. The relevant section of my protocol.ini file reads:
     
    [odi2ndi_nif]
    
       DriverName = odi2ndi$
       Bindings = MACWDAT_nif
       NetAddress = "i000003179F98"
       TOKEN-RING = "no"
       TOKEN-RING_SNAP = "no"
       ETHERNET_II = "yes"
       ETHERNET_802.3 = "yes"
       ETHERNET_802.2 = "yes"
       ETHERNET_SNAP = "yes"
       TRACE = 0x0
    
    
    Your bindings setting will probably be different, since that is dictated by your board type. This value is supplied by the installation routine, so you should not need to set it manually.
  9. You do not need to use a net.cfg file.
  10. Now you can reboot.