DIALER.TXT 14Nov94 TABLE of CONTENTS 1. The LAN WorkPlace Windows Dialer 1.1 - Operational Information 1.1.1 - Configuring Dialer 1.1.2 - Configuring Dialer and LAN Usage 1.2 - System File Changes 1.2.1 - SYSTEM.INI 1.2.2 - NET.CFG for SLIP/PPP only 1.2.3 - NET.CFG with IPX and SLIP/PPP Concurrent Connections 1.2.4 - AUTOEXEC.BAT for Dialer 1.2.5 - Unsupported LINK DRIVER SLIP_PPP Features 1.2.6 - LINK DRIVER SLIP_PPP and The Windows Dialer 1.3 - Scripting 1.3.1 - New Script Commands 1.3.1.1 - PASSWORD / PROMPT 1.3.1.2 - TIMEOUT 1.3.1.3 - WAITFOR 1.3.1.4 - READIP 1.4 - Trouble-Shooting 1.4.1 - SLPMON.EXE 1.4.1.1 - LWP.INI: Visible 1.4.1.2 - LWP.INI: AutoConnect 1.4.2 - Modem Control Files 1.4.3 - TIPS 1.5 - Unsupported Software 1.5.1 - NetWare Client 2. DOS Dialup and Third party Comm software 2.1 - DOS Configuration 2.1.1 - DOS NET.CFG for SLIP/PPP (only) or MLID and SLIP/PPP. 2.1.2 - DOS SLIP/PPP Trouble Shooting 1 --- The LAN WorkPlace Windows Dialer 1.1 --- Operational Information The SLIP/PPP ODI driver and MS Windows-based Dialer can operate in one of TWO MODES: MODE 1 -- WinComm Mode The default mode makes use of the MS Windows serial communications driver (COMM.DRV) 1 - Windows-based applications such as FAX drivers and standard communications packages can use your modem when it is not being used for a PPP or SLIP network connection. 2 - PCs with the less-capable 8250 or 16450 UARTs may actually perform better in this mode, than in COMMOwner mode. 3 - The Automatic Disconnect feature is only supported in COMM.DRV mode. 4 - The little LED-like "lights" on the Mobile Monitor Icon blink to indicate the modem's Carrier Detect, Transmit and Receive lights (see section 1.4.1 below). MODE 2 -- COMMOwner Mode "COMMOwner" mode, the ODI driver takes full control of the serial port that your modem is connected to and hides the port from the Windows COMM.DRV driver -- this mode enables DOS based TCP/IP applications to operate reliably in Windows' DOS boxes, and enables Windows applications that make heavy use of blocking network operations to work well over serial lines. 1 - In "COMMOwner" mode, it is possible to exit and re-enter MS Windows without affecting the state of a SLIP or PPP connection. 2 - To load the SLIP_PPP.COM driver in COMMowner mode use the /E switch: "slip_ppp /E " or add these lines to your NET.CFG: LINK DRIVER SLIP_PPP COMMOWNER YES ## Hide the serial ports from Windows. 1.1.1 --- Configuring Dialer 1.1.1.1 - Identify the COMM Port "INT" and "PORT" values to use when SLIP_PPP is loaded in the default "COMMOwner" mode as follows: LINK DRIVER SLIP_PPP PORT 3F8 ## COM1: INT 4 ## COM1: or LINK DRIVER SLIP_PPP PORT 2F8 ## COM2: INT 3 ## COM2: or LINK DRIVER SLIP_PPP PORT 3E8 ## COM3: INT 4 ## COM3: or LINK DRIVER SLIP_PPP PORT 2E8 ## COM4: INT 3 ## COM4: 1.1.1.2 - Specify an initial FRAME type of PPP in NET.CFG even if you will be running SLIP! (when using the Window's Dialer). Choose SLIP or PPP from the Dialer's Network Configuration option. 1.1.1.3 - Once LSL.COM, SLIP_PPP.COM and TCPIP.EXE have been loaded, you can start MS Windows and configure Dialer. The first step is to add a Dialer icon to the LAN WorkPlace program group. 1.1.1.4 - The first time Dialer is run on your system, the configuration program (\NET\BIN\CONFIG.EXE) is launched. The screens are fairly straight forward, instructions are provided, in addition to extensive online help. The Dialer Configuration program will create an initial entry in Dialer's "Connection Directory". The process where by the editing and/or creation of new entries is made easy by the standard MS Windows user interface. 1.1.2 --- Configuring Dialer and LAN Usage The IP Address for the LAN card and Dialer must be on different network segments (e.g must have different NETWORK IDs). Example: PROTOCOL TCPIP ip_address 7.7.7.1 # Ne2000 (Configured in the net.cfg) ip_address 8.8.8.1 # SLIP/PPP (Configured in the Dialer setup) NOTE: An existing LAN connection will be disconnected if the NETWORK ID of an LAN-based MLID matches the NETWORK ID within the Dialer Configuration. 1.2 --- System File Changes These instructions are for: SLIP/PPP configuration only; or with an MLID and SLIP/PPP concurrent connection. It is assumed that LAN WorkPlace is already installed and configured correctly. Please refer to your LAN WorkPlace for DOS Configuration Guide for more general configuration information. 1.2.1 --- SYSTEM.INI In "COMMOwner" mode, watch out for SYSTEM.INI entries under the [386Enh] section specifying the "Port" and "Interrupt" values of your modem's COMx port. Comment out lines such as the following by preceding the lines with semi-colons (";"). [386Enh] ;COM2Irq=3 ;COM2Base=02F8 Such entries are not placed in SYSTEM.INI by the default Windows installation. They may be created by other applications or users. 1.2.2 --- NET.CFG for SLIP/PPP only For SLIP or PPP usage, your NET.CFG file should resemble this example: LINK SUPPORT BUFFERS 8 1500 MEMPOOL 4096 LINK DRIVER SLIP_PPP FRAME PPP ACCM 00000000 INT 3 # Set for your modem interrupt PORT 2F8 # Set for your modem port TCPIPComp VJ COMMOWNER NO # NO is the default -- Window's only PROTOCOL TCPIP PATH LWP_CFG C:\NET\HSTACC PATH TCP_CFG C:\NET\TCP PATH SCRIPT C:\NET\SCRIPT PATH PROFILE C:\NET\PROFILE TCP_WINDOW 4096 NOTE: The Windows Dialer provides the TCP/IP driver with the information for IP_ADDRESS, IP_ROUTER and IP_NETMASK via profiles. Do not specify these entries in the PROTOCOL TCPIP section of your NET.CFG. 1.2.3 --- NET.CFG with IPX and SLIP/PPP Concurrent Connections For SLIP or PPP and IPX usage. Your NET.CFG file should resemble this example: LINK DRIVER NE2000 PROTOCOL IPX E0 ETHERNET_802.2 FRAME ETHERNET_802.2 FRAME ETHERNET_II PORT 340 INT 5 LINK DRIVER SLIP_PPP FRAME PPP ACCM 00000000 INT 3 # Set for your modem interrupt PORT 2F8 # Set for your modem port TCPIPComp VJ COMMOWNER NO # NO is the default -- Window's only PROTOCOL TCPIP PATH LWP_CFG C:\NET\HSTACC PATH TCP_CFG C:\NET\TCP PATH SCRIPT C:\NET\SCRIPT PATH PROFILE C:\NET\PROFILE IP_ADDRESS 7.7.7.1 LAN_NE2000 IP_NETMASK 255.0.0.0 LAN_NE2000 IP_ROUTER 7.7.7.254 LAN_NE2000 BIND NE2000 #0 ETHERNET_II LAN_NE2000 IP_ADDRESS 0.0.0.0 SLIP-PPP BIND SLIP_PPP #0 PPP SLIP-PPP TCP_WINDOW 4096 1.2.4 --- AUTOEXEC.BAT for Dialer The TCP/IP Transport and PPP drivers can be loaded into memory using the following batch-file-ready sequence: CD d:\ LSL SLIP_PPP TCPIP The TCP/IP Transport, SLIP/PPP, and ODI drivers can be loaded into memory using the following batch-file-ready sequence: CD d:\ LSL NE2000 SLIP_PPP TCPIP The LAN WorkPlace for DOS installation creates "LANWP.BAT", and edits AUTOEXEC.BAT to call this batch file. You may decide to edit LANWP.BAT or create another batch file to call from AUTOEXEC.BAT for working away from a remote location. You will need two NET.CFG files and can use the /C= option to LSL.COM and TCPIP to call the right one. LSL /C=C:\NET\NWCLIENT\NET.ASY SLIP_PPP TCPIP /C=C:\NET\NWCLIENT\NET.ASY or LSL /C=C:\NET\NWCLIENT\NET.ASY NE2000 SLIP_PPP TCPIP /C=C:\NET\NWCLIENT\NET.ASY 1.2.5 --- Unsupported LINK DRIVER SLIP_PPP Features The DIRECT option is no longer a supported under the LINK DRIVER SLIP_PPP section and will generate a complaint by SLIP_PPP.COM. 1.2.6 --- LINK DRIVER SLIP_PPP and The Windows Dialer Each Windows Dialer connection directory entry will take precedence over the existing values in the LINK DRIVER SLIP_PPP section. These values still have meaning with the DOS DIALUP.EXE utility. See p. 3-21 of the LAN WorkPlace for DOS Administration Guide for details on these options. 1.3 --- Scripting The Windows Dialer provides a very basic scripting language that can automate the ASCII login process required by many dial-up routers. To "Auto-Record" a script, Edit the Connection Directory entry and type the name of a new script in the "Script" field. Click on "OK" to save the entry, and then IMMEDIATELY dial the connection entry to record the script. NOTE: If you don't execute the dialing of the entry immediately after entering a new script name, the script name will be forgotten and the Auto-Record will not occur. Once you have connected to your dial-in Router, the title bar of the Login Window should indicate that your script is being recorded. If your newly recorded script contains a password, you may "password protect" the usage of your script through Dialer's Script menu. Scripts are NOT stored on disk in clear text format. 1.3.1 --- New Script Commands 1.3.1.1 --- PASSWORD / PROMPT There are two new script commands which are not documented in the online help. SYNTAX: PROMPT [ $TEXT=prompt_text $TITLE=dialog_title ] PASSWORD [ $TEXT=prompt_text $TITLE=dialog_title ] The PROMPT and PASSWORD commands display a modal dialog box that requests information from the user. The two commands are identical except that the PASSWORD command replaces characters in the user's response with asterisks and the dialog box title is different. The commands have two optional arguments. One sets the text describing what the user should respond with in the dialog. The other sets the title of the dialog. The defaults are: For PROMPT: $TEXT=Please enter the required information $TITLE=Information Required For PASSWORD: $TEXT=Please enter your password $TITLE=Password Required Since the characters '$' and '=' are used by the syntax as delimiters, these values must be escaped by a preceding backslash ('\') if they are to be used within the text strings. Example: $TEXT = An example string with an embedded \$. $TEXT = An example string with an embedded \\. Replies can embed "control" character by entering a string like "#nnn" where "nnn" can be any decimal value from 0 to 255. Values outside this range are ignored. Similarly, the pound character ('#') may be escaped with a preceding backslash ('\'). Example: WRITELINE #97#116#122 This will send an "atz" to the remote. For the PROMPT and PASSWORD commands, only the response typed into the dialog box is checked for control characters. The $TITLE and $TEXT arguments to the commands are not affected. Additionally, the commands WRITE and WRITELINE may also embed control characters using this mechanism. 1.3.1.2 --- TIMEOUT SYNTAX: TIMEOUT [] The TIMEOUT command sets the global timeout value used with the PAUSE and WAITFOR commands. The default value is 30 seconds. Both the PAUSE and WAITFOR commands allow an override of this timeout value. If the TIMEOUT command is given without an argument, it resets the internal timeout to the default value of 30 seconds. 1.3.1.3 --- WAITFOR SYNTAX: WAITFOR [] Flow of control will resume after the WAITFOR command under the following conditions: * The global timeout expires (see the TIMEOUT command description above). * The specified is received. * The local expires. NOTE: This is a timing (blocking) mechanism only. There is no guarantee that the specified string was received. 1.3.1.4 --- READIP SYNTAX: READIP [address_index] Reads an IP address, if one is present in the current response from the remote service, and sets the address to be the workstation's IP address. Use an to retrieve the Nth IP address from a list provided by the remote service. The default is 1. The maximum value allowed is 32767. 1.4 --- Trouble-Shooting 1.4.1 --- SLPMON.EXE SLPMON.EXE is a Windows application that monitors the state of the dialup network connection and ensures that SLPAPI.DLL is present for Dialer. It is automatically loaded in Windows 386 Enhanced Mode if SLIP_PPP.COM is loaded. 1.4.1.1 --- LWP.INI: Visible By default, SLPMON works without an icon or application window. This can be reversed by adding the following lines to your \NET\HSTACC\LWP.INI file: LWP.INI: [SLPMON] Visible=True When Visible=True, SLPMON.EXE is initially visible as an animated icon. While minimized (iconized), SLPMON.EXE will simulate the transmit, receive and carrier detect LEDs of an external modem. When the SLPMON application window is open, information about the current connection may be obtained that will aid in troubleshooting problems. Use this feature to a status indicator of your current dial-up connection. 1.4.1.2 --- LWP.INI: AutoConnect SLPMON can AutoConnect by adding the following: LWP.INI: [SLPMON] AutoConnect=Disabled # to disable autoconnect. or [SLPMON] AutoConnect=Enabled # to enable autoconnect. Disabling this feature prevents reconnecting to the remote service when you attempt to use the network service again (see p. 4-2, "Determining When to Close Idle Connections" in the online manual for more information). 1.4.2 --- Modem Control Files The latest collection of NetWare Connect Modem definitions in "AIOMDMS.MDC" are available via: CompuServe NetWire, NOVLIB 09 FTP ftp://ftp.novell.com/pub2/DIAL/NWCNCT10/NWCMOD.EXE. Gopher gopher://gopher.novell.com/pub2/DIAL/NWCNCT10/NWCMOD.EXE. World Wide Web http://www.novell.com/bintid/<> 1.4.3 --- TIPS 1. Users with high speed modems may wish to experiment with different baud rates to find the optimal performance. Do this by editing your Connection Directory entry, and selecting "Port Settings", then changing the baud rate setting. Remember, it may be possible that the through-put performance will increase at a lower baud rate. Consult your modem's documentation for recommendations about serial port baud rates given various connection baud rates. Most high-speed modems will auto-baud (handling different baud rates between the serial port and the modem connection). Reducing the requirement on the Windows Interrupt Handlers to handle extremely high speed serial data connections may be a factor in obtaining optimal through-put performance. 2. Experiment with both modes of operation. Some applications may access the network in such a way as to prevent the Windows System and COMM drivers from delivering data, lockups may occur in this mode (rarely). This is usually an indication of a flaw in a Windows application, but is a fact of life with certain DOS applications and network redirectors. If you experience difficulties running in the default mode, try the "COMMOwner" mode instead. 3. If you do not see a list of supported modems when performing the initial configuration of Dialer, it is likely that the "PATH LWP_CFG" setting in NET.CFG is pointing to the wrong place, or that you neglected to load TCPIP.EXE prior to starting Windows. 4. Your modem is not in the list? Try Hayes Compatible or find out from the manufacturer if their modem scripts are similar to any of those on the list. For example, we found that the Zoom FaxModem VFX V.32/V.42 script works for the IBM PCMCIA Fax/Modem card. 5. "Error opening the communications channel" 5a. check that the new Dialer files are all in the path. 5b. check that the Port and Interrupt in NET.CFG match 6. "Modem timed out waiting for a response" 6a. Dialer requested a modem operation and your modem did not respond. 6b. Is the modem properly installed, configured, connected and powered on? If all that is true, you might try the Hayes compatible modem script from the Configure->Select Modem window. 7. "Call to undefined dynalink" When SLPMON.EXE loads it looks for a particular SLPAPI.DLL, WLIBSOCK.DLL and LWPUTIL.DLL. One of these is "out of sync". Double check the versions, see LWP42D.TXT installation instructions. 8. You can connect successfully but can't ping anyone. 8.a. Check that no ip_addresses or ip_routers are in NET.CFG. Enter the ip-address in Dialer, or not at all if its going to be assigned with bootp or by the PPP server. When loading TCPIP you should see an IP Address of 0.0.0.0, Subnet Mask 255.0.0.0 and Default Router 0.0.0.0 and Frame PPP. 9. TCPIP.EXE returns "FATAL: Unable to determine this station's IP address". 9a. Verify the Frame is PPP and no ip_address is defined in the NET.CFG. Select PPP within Dialers's Connection Directory entries and try again. 9b. If SLIP is required, then only change the selection of PPP to SLIP within the Dialer's Connection Directory entries. 1.5 --- Unsupported Software 1.5.1 --- NetWare Client NetWare Client v1.11 access over SLIP or PPP, is not supported with this release of LAN WorkPlace SLIP/PPP. NetWare Client v1.11 access over existing LAN with a concurrent TCPIP access over SLIP or PPP, is supported with this release of LAN WorkPlace SLIP/PPP 2 --- DOS Dialup and Third party Comm software 2.1 --- DOS Configuration 2.1.1 --- DOS NET.CFG for SLIP/PPP (only) or MLID and SLIP/PPP. Refer to sections 1.2. for details on these configurations, in addition to the following requirements: 1. When using third party communication software. Always specify the "/E" switch with SLIP_PPP.COM to set the CommOwner Mode. 2. FRAME can be defined as PPP or SLIP 3. The ip_address field must contain a valid IP address, unless a BOOTP server or router is providing the IP address. 4. The DIRECT option for is not a valid option. 5. See LAN WorkPlace for DOS Administration Guide for other option support. 6. See section 1.5.1 for unsupported feature. 2.1.2 --- DOS SLIP/PPP Trouble Shooting 1. When using other third party communication software, certain load procedures may be required in order to operate correctly. Since SLIP_PPP.COM is using the COM Port assigned. The communication software may give an error "COM Port already in use" or "Can not initialize COM Port". There are examples listed below for some load orders to get around the problem. Example #1 -- SLIP/PPP only Communications Package Dial into SLIP/PPP server LSL.COM SLIP_PPP.COM TCPIP.EXE Example #2 -- SLIP/PPP only LSL.COM SLIP_PPP.COM TCPIP.EXE Communications Package Example #3 -- SLIP/PPP and IPXODI LSL.COM IPXODI.COM VLM.EXE Communications Package Dial into SLIP/PPP server SLIP_PPP.COM TCPIP.EXE Example #4 -- SLIP/PPP and IPXODI Communications Package Dial into SLIP/PPP server LSL.COM SLIP_PPP.COM IPXODI.COM VLM.EXE TCPIP.EXE Example #5 -- SLIP/PPP and IPXODI LSL.COM SLIP_PPP.COM IPXODI.COM VLM.EXE TCPIP.EXE Communications Package NOTE: Modify the load procedure to meet your requirements. 2. Loading SLIP_PPP.COM driver prior to the MLID driver may affect the execution of the NetWare shell VLM.EXE. The solution is to load the MLID prior to SLIP_PPP.COM.