Version 3.51

Published and Distributed by PC Micro
Copyright © 1997-2008 Odin Software
Portions Copyright © Microsoft Corporation
Portions Copyright © The OpenSSL project
All Rights Reserved


NetModem User's Guide
Table of Contents

1..... Overview of NetModem & Modem Pooling
2..... Software Installation Quick Guide
3..... Installing the NetModem Server Software
4..... Configuring the NetModem Server Software
5..... Installing the NetModem Client Software
6..... Configuring the NetModem Client Software
7..... Installing the Client Modem Driver
8..... Monitoring activity on the Server and Clients
9..... Server Logging Options
10... Security Settings
11... SSL/TLS Encryption
12... Blocking Dialin and Dialout
13... Virtual Phone Books
14... Limiting Usage Hours
15... Using Multiple Servers for Failover
16... Troubleshooting and Technical Notes
17... Request Technical Support
18... Update the License Key
19... Uninstalling the NetModem Software



 



1.  Overview of NetModem & Modem Pooling

NetModem is a client-server based software solution for Windows which allows users to access shared modems (and other serial devices) located on another PC over a TCP/IP network.

By creating one or more virtual COM ports on each client PC which redirect to the shared COM ports on the NetModem Server PC, your client applications can access these devices simply by pointing them to a virtual COM port.

Modem Pooling is a feature which allows each client to automatically connect to the next available modem or device in a pool of defined COM ports, rather then each client connecting to a specific device. When all the modems or devices in the pool are in use, the client PC is optionally informed. Multiple modem pools can be defined on the NetModem Server, each pool having a unique name and can contain one or several COM ports. All the COM ports in a pool share the same properties and security settings.

Here is how it works:

  1. You configure the NetModem Server Software to share one or more modems or other serial devices.
  2. You configure the NetModem Client Software to create virtual COM ports, each pointed to a server PC.
  3. When a client application opens a COM port, it gets redirected to the next available modem or serial device on the NetModem Server PC (or to a specific device).

Features:

  • Easy to Install and use.
  • Supports all popular versions of Windows, including Vista and Server 2008.
  • Shares up to 256 COM ports, Modems, and other serial devices.
  • Supports multiple pools (groups) of Modems and other serial devices.
  • Co-exists with MS RAS (Remote Access Server) using the same modem(s).
  • Co-exists with Fax Services using the same modem(s).
  • Compatible with Terminal Server, Remote Desktop and, Citrix Metaframe.
  • Can automatically provide next available Server COM port to user.
  • Automated Server Failover, if primary server is full or unavailable.
  • Automated session termination, allows Server to terminate idle sessions.
  • Definable access hours, limit usage to specific hours per day/week.
  • Security by using pool passwords or Windows user authentication.
  • User authentication supports Active Directory or non-domain networks.
  • ODBC database or textfile logging of all calls and activity.
  • Virtual Phone Books simplify administration of current phone numbers.
  • Powerful client diagnostics allows application debugging.
  • Optional SSL/TLS encryption between the client and the server.
  • Compatible with DialUp Networking, Fax applications (Class 2 & 2.0),
    pcAnywhere, and most communication applications for Windows or DOS.
  • COM Port Control allows clients to sense and control Baud Rate, flow control
    and serial line settings, via an enhanced Telnet protocol.
  • NetModem virtual COM ports run as a kernel-mode driver.
  • Unlimited user client redirection software is included at no extra charge.
  • Includes upgrade protection and technical support.

 



2.  Software Installation Quick Guide

This Quick Guide is intended for users familiar with installing Windows based software. The information below will enable you to get your NetModem Server and Clients up and running, as quickly as possible.
We still recommend you read the entire guide to become familiar with the software.

Requirements:

Operating System Software (for both Server and Client PC's):

  • Windows Vista, XP, 2008, 2003, 2000, and NT 4.0-SP6 - both 32-bit and 64-bit (x64) versions.
    All versions are supported: Professional, Home, Workstation, Server, Premium, and Ultimate.
  • Netmodem also supports Windows Small Business Server, Terminal Server, Remote Desktop,
    Citrix Metaframe, VMWare, and Virtual PC environments.
    If you plan to use the user authentication feature with Active Directory Domain Server(s), the NetModem Server PC should not be running under a Home Edition of Windows.

  • If installing NetModem Server under NT 4.0-SP6 (Server or Workstation), you should first have the following Microsoft components installed:
    1. - IE 4.01       (Required for Active Desktop Shell in NT 4.0-SP6)
    2. - IE 6.0-SP1 (Optional but recommended)
    3. - Active Directory Extention for NT 4.0 (Required)
    For full details of the NT 4.0-SP6 requirements, see http://pcmicro.com/netmodem/support_nt4.html
Hardware: (for both Server and Client PC's):
  • PC equipped with an Intel Pentium compatible processor, single or multi core.
  • Network Card (configured to use the TCP/IP Protocol).
  • At least the minimum RAM recommended by Microsoft to run your version of Windows.
  • At least 10 megabytes of free hard drive space.

The NetModem Server PC also requires at least one serial communications port, which could be either a physical connector that attaches to an external serial device such as an external analog modem, or it could an internal modem, Serial ISDN card, or other device which creates one or more COM ports in Windows.


Server Software Installation and Configuration Overview:
Here is a list of the steps needed to install the Server Software, which are explained in chapters 3 and 4:

  1. Log onto Windows with an account that has Administrator rights.
  2. Install the NetModem Server Software, using the default choices.
  3. Optionally define additional pools and pool security settings.
  4. Select one or more local COM port that you wish to be shared.
  5. Save the changes.
  6. Configure any firewall software effecting incoming connections on tcp port 6000.

Client Software Installation and Configuration Overview:
Here is a list of the steps needed to install the Client Software, which are explained in chapters 5, 6 and 7:

  1. Log onto Windows with an account that has Administrator rights.
  2. Install the NetModem Client Software, using the default choices. No license key is required.
  3. In the “Select Ports” window, choose which virtual COM ports you wish to create and click OK.
    Usually only one Virtual COM port is needed.
  4. In the “Client Configuration” Window, enter the IP address of the NetModem Server PC. (The HOSTNAME can be entered instead).
  5. Leave the TCP/IP port set to 6000, unless you changed it on the Server.
  6. Leave the “Remote COM port to Redirect to” setting on “Automatic Pooling” to allow the client to access the next available shared COM port on the server. A pool name is only required if you have defined multiple pools on the server.
  7. If the NetModem Server is set to require security, set the client for a matching security setting.
  8. Click the “Test Server Connection” to confirm that the COM port you created can access the server.
  9. Repeat steps 4,5,6 and 7 for each additional COM port you created.
  10. Click the "Save" button, and the "Install Modem Driver" window will automatically appear.
  11. If you not sharing Modems then skip this step. Otherwise click “Add Modem Driver” to run the “Add Hardware Wizard” to install the proper modem driver on the virtual COM port(s).
  12. Configure your application software to use one of the NetModem Client virtual COM ports, or the name of a modem driver device attached to one of the NetModem Client virtual COM ports.

 



3. Installing the NetModem Server Software

The NetModem Server software should be installed on a PC where the modems (or other serial devices) are physically located. The PC can be running any version of Windows XP, Vista, 2008, 2003, 2000 or NT 4.0-SP6. The PC can be running any Intel Pentium compatible processor, and should have at least the minimum amount of RAM suggested by Microsoft to run.

Before installing NetModem Server:

  • Configure the server hardware, such as installing internal or external modems and connecting the modems to telephone lines.

  • Make sure you are logged in as a user with Administrator access, in order to install NetModem Server.

Run the NetModem Server installer to begin the Installation Wizard. It will take you though the following steps:

  • Review the License Agreement and indicate whether you accept the terms or not. If you do not accept the terms, the software will not be installed.

  • Select the Destination Folder to install to. The default is c:\program files\netmodem\server\

  • Review or change any settings, and Begin Installation. It should only take a moment to install.

  • Enter the Customer Information (your name and company). You can optionally enter your License Key . If you do not enter a key, the software operate for a 30 day evaluation period supporting up to 256 shared COM ports. The SSL/TLS encryption feature is not available in all countries, and requires a special license key to evaluate.

Once the installation is finished, you will automatically be taken to the NetModem Server window so you can define which TCP port to use for incoming connections, and which COM ports will be shared in the pool(s).

If a software firewall is installed on the NetModem Server PC, configure it to allow incoming connections on TCP port 6000. See the Configuring a Firewall chapter for details.



4. Configuring the NetModem Server Software

The Administrator can configure NetModem Sever either locally, or remotely from a Remote Desktop or Terminal Services connection. Information on Configuring Remote Desktop or Terminal Services can be found in Technical Notes section titled: NetModem under Terminal Services, Remote Desktop or Citrix Metaframe.

NetModem Server is configured from the Configuration tab. This can be opened by right-clicking on the NetModem Server system tray icon and selecting Configure. The Tray icon is located in the lower right corner of the screen near the clock.


If the NetModem Server window is already open, simply click the Configuration tab at the top.
The Configuration screen allows selecting the TCP/IP port to use, the names and property settings of the modem pools, and define which local COM ports are assigned to each pool.

 

NetModem Server Configuration:

The default TCP/IP port is 6000.
Be sure to define the same TCP/IP port on the clients and on the server.

You must have at least 1 modem pool defined. Each modem pool can contain one or more local COM ports. Every COM port assigned to a pool is given the security settings defined in the Properties window for that pool.
You can Add or Remove pools, and view or edit each pools Properties.

You can add COM ports to a pool by selecting the modem pool, clicking a COM port in the "Available Ports" list, and then clicking on the Right Arrow button to move it into the "Ports in this Pool" list on the right.

You can remove COM ports from a pool by selecting the modem pool name, clicking a COM port in the "Ports in this Pool" list, and then clicking on the Left Arrow button to move it into the "Available Ports" list on the left.

Once you have defined the pools, properties and ports to share, click on the Save Changes button.

The command buttons near the bottom are:
Save Changes - Saves any changes made to the Pool Properties, COM Port lists or the TCP/IP port.
Log Options - Allows defining a path to the ASCII log files, or to define an ODBC log database.

Close - Closes the Window (Also asks if any unsaved changes should be saved).
License - To Enter a license key, allowing the software to operate beyond the evaluation period.
                  also displays license key, or number of days remaining until an evaluation period ends.
Help - Displays the user guide you are reading now.
About - Display copyright information, and support links.


When configuring the NetModem Server for the first time, you will need to move at least one COM port from the "Available Ports" list on the right over to the "Ports in this Pool" list on the right, so you have at least one pool containing at least one COM port. You can optionally configure the security and other settings for that Modem pool by clicking on the Properties button. This will bring up the Pool's Properties Window, shown below.

The Pool Properties window allows you to define the name of the Pool, an optional description, login security, and configure several other options and rules as shown below.

The Security options can require clients to provide login credentials or a pool password, as described in the Security Settings chapter.

A Default Flow Control Method is useful if non-NetModem clients connect via a standard telnet client.

Use Round Robin distributes ports evenly rather then always using the lowest numbered available port.

Reset modem when opening port
sends an ATZ to the modem, and confirms the modem response.

The Disconnect if Client Inactive option will disconnect clients which hold a COM port open without any activity for the specified time.

The Block Dialin and Block Dialout options prevent clients from receiving or making unauthorized calls. See Block Dialout and Dialin

The Configure Virtual Phone Book allows the administrator to centrally manage phone numbers, allowing clients to use virtual numbers which are replaced with the actual numbers by the server.

The Allowed Time can restrict use of devices in this pool to specific hours per day and week.

The Use TAPI to open port option should normally be left disabled, unless you are using a USB modem which is having trouble opening COM ports directly or opens slowly. Not all modems allow both TAPI and COM access to an open session, but enabling this option can allow some USB modems to perform better. When using Internal PCI or external serial modems, this option should be disabled.


Once you have set your pool properties as desired, click OK to close the properties window, and click Save.

The next step is to install the NetModem Client software on each PC which needs to access the shared modems, and verify the connection using the NetModem Client Configurations "Test Server connection" button. (It's even possible to install NetModem Client on the same PC as the server for local testing or for terminal services use, but this is not required).

 



5. Installing the NetModem Client Software

The NetModem Client software should be installed on each PC in which you want to access the modems (or other serial devices) whose COM ports are defined in the NetModem Server shared ports list. The Client PC's can be running any version of Windows Vista, XP, 2008, 2003, 2000, or NT 4.0-SP6. The client can also be installed under Windows Terminal Services, Remote Desktop, Citrix Metaframe, VMWare, or Virtual PC. A Client PC can be running any Intel Pentium compatible processor, and should have at least the minimum amount of RAM suggested by Microsoft to run the version of Windows installed.

Before installing the NetModem Client Software:

  • Make sure you are logged into Windows as a user with Administrator rights.

  • If you are performing an upgrade, exit any programs that are using virtual COM ports.

Run the NetModem Client installer to begin the Installation Wizard. It will take you though the following steps:

  • Review the License Agreement and indicate whether you accept the terms or not. If you do not accept the terms, the software will not be installed.

  • Select the Destination Folder to install to. The default is c:\program files\netmodem\client\

  • Review or change any settings, and Begin Installation. It should only take a moment to install.

The NetModem Client does not require a license key, and it is fully functional but limited to operating with the NetModem Server software.

The installation should only take a moment to finish. Once the installation completes, you will automatically be taken to the NetModem Client "Select Ports" window shown below if this is a first time installation.

 



6. Configuring the NetModem Client Software

The NetModem Client can create from 1 to as many as 256 virtual COM ports, which are each redirected by NetModem Client to access shared COM ports on any NetModem Server PC on the network. The first Step is to select which virtual COM ports you wish to create.


COM ports can be numbered from COM1 up to COM256. Most desktop PC's come with one or two physical COM ports, usually named COM1 and COM2.

You will only be able to select COM ports that don't already exist on the client PC. In the image to the right COM1 and COM2 are not show in the list because they already exist on this PC.

Most applications only require one COM port, in which case you only need to select one virtual COM port, even if you have several modems installed on the NetModem Server. The virtual COM port number on the client does not need to match the COM port values on the server.

Some older communication applications only allow selecting a COM port between COM1 and COM4, inclusive. Therefore its usually best to select a virtual COM port numbered below COM5.

You can always change to a different virtual COM port, or add/remove virtual COM ports at a later time. This can be done by right clicking the NetModem Client tray icon, and selecting "Configure" to get to the NetModem client Configuration window, and choose "Select Ports".

Under special applications including Terminal Services you may want to create several virtual COM ports. You can select or unselect a range of ports by clicking the first COM port, then hold down the Shift key as you click on the last COM port in the range, then click on either the Select Highlighted or Unselect Highlighted button.

Once you have selected at least one virtual COM port and clicked OK, the NetModem Client Configuration Window will appear. You can manually get to this by right-clicking on the NetModem Client system tray icon in the lower right on your taskbar (by your clock), and selecting "Configure". The NetModem Client system tray icon looks like this:

The NetModem Client Configuration window allows you define the Server IP address and TCP Port for each virtual COM port, and optionally which remote COM port it should redirected to.

The Server IP Address should be set to either the IP address or the Computer Name of the PC where NetModem Server is installed.

The TCP Port should be the same value used on the NetModem Server (The default setting is 6000).

The Remote COM port to redirect to is normally left at "Automatic Pooling" which redirects the virtual COM port to the next available COM port in the selected pool on the NetModem Server PC. If you always want to redirect to a specific COM port on the server, select it here.

The Pool Name field is only visible if "Automatic Pooling" is selected. If the Pool Name is left blank, the first pool defined on the NetModem Server will be used.

The Use Multiple Server Failover checkbox allows a list of Failover servers to be configured. NetModem Client can automatically go to other servers if the primary server is either full or unreachable.
See the Using Multiple Servers for Failover chapter for details.

The Security options are:
None , Use Login/Password , Use Windows Credentials , Use Pool Password , Prompt at Logon

The default Security is None, which does not attempt to send a login or password to the NetModem Server.
If the NetModem Server's Pool Properties requires the client to provide authentication, then NetModem Client should be configured appropriately. See the Security Settings chapter for details.

The Encryption options are:
None , TLSv1 or SSLv3 , TLSv1 only , SSLv3 only

The default Encryption is None, which uses no encryption between the client and server. See the SSL/TLS Encryption chapter for details.

The command buttons on the NetModem Client Configuration window are as follows:
Select Ports - Choose which Virtual COM ports should be created for NetModem Client.
Advanced - Select the close port delay, and choose to see a pop-up message if a port is not available.
Test Server Connection - Tests the connection to the NetModem Server.
Close - Closes the NetModem Client Configuration window, and saves changes.

Once you have assigned the correct Server IP address, TCP Port, and redirect method to each of the virtual COM ports, you should verify that each virtual COM port can communicate with the NetModem Server by selecting the COM port, and then clicking the Test Server Connection Button.

The Server Connection Test:

This test allows you to verify that the client can communicate with the server, and can fix any detected setting errors.

The top settings are filled out for you with the current COM port settings.

If you are connecting to non-modem devices on the NetModem Server, then disable the checkbox to check for the presence of a modem.

Click the "Start" button to begin the test. If everything is successful the results will look like the image on the right.

After the client connects to the server, it makes sure that the server is using both the Telnet Protocol and the RFC-2217 Telnet Protocol extension. If both of these are not detected, you probably connected to something other then a NetModem Server.

If you have enabled the checkbox to check for the presence of a Modem then the test will finish by sending an "AT" command to the modem, and makes sure that the modem responds with an "OK.

When the test stops, you can click on "Start" to test the port again, or click "Use Settings" to accept any changes that were made to your settings. The "Copy Log" button allows you to copy the test results to the clipboard, allowing it to be pasted into a document or email.

If your virtual COM ports tested with similar results as above, then you have successfully configured the NetModem Client. Click "Use Settings" to close the window.

If the result says "Connection Failed" then either the NetModem Server is not accepting connections for some reason, or there is a network or firewall issue preventing access to the Server. See the Troubleshooting Chapter.

Once you have successfully configured the virtual COM ports which were created, and you Save or Close the NetModem Client Configuration window, you will be provided with a reminder to install modem drivers which will guide you through the process outlined below.

 



7. Installing the Client Modem Driver

If the devices you are connecting to the shared ports are not Modems, you can skip this section.

Most Windows DialOut Applications require a modem driver to be present in order to dial out, but some applications do not require a modem driver as they communicate directly with the Windows COM port. We suggest installing a modem driver for compatibility with the widest range of applications.

PLEASE NOTE:
If you install a modem driver on the client's virtual COM port(s), it is often important that it matches the modem driver on the NetModem Server. For example, If the Server uses a manufactures modem driver, then usually you should not be using the Windows "Standard 56k modem" driver on the client, as this could result in a modem driver mismatch. When using NetModem for pooling multiple modems, it is important that every modem within the pool uses the identical modem driver so they will always match the client end.

Some of the low end PCI "Software Modems" (also known as "WinModems") have modem drivers that can not detect a modem on a virtual COM port. This can also occur on hardware based modems using plug-and-play modem drivers. Often these modems can still be used on a client by selecting a "Standard 56k modem" driver, but using the manufactures modem driver is always the best choice for guaranteed driver compatibility. Request Technical Support if you need assistance in modifying a modem driver to install on a Virtual COM.


To select a "Standard 56K modem" driver instead of a manufactures driver, do not click the "Have Disk" checkbox as instructed below, instead select the driver by scrolling down the list of "Standard Modems".

Some modem drivers can be installed using their own setup program, but if the setup program is looking for the modem to be physically present on the computer it may not complete, so we suggest manually installing the modem driver using the Modem Driver .INF file as shown below.

To open the "Phone and Modems" control panel manually, Go to the Windows Control Panel (click Start > Control Panel) and locate the "Phone and Modems" icon. Under Windows XP, 2003, or Vista you might need to click "Switch to Classic View" to locate this. Double click on the icon to enter the "Phone and Modem Options" Window. Then click on the "Modems" tab at the top, and it will show you which modems are currently installed. Click the "Add" button at the bottom to add a modem driver.




Enable the "Don't detect my modems, I will select it from a list" checkbox, and then click "Next".


Click the "Have Disk" button. DO NOT Click "Next".


Enter the path to your modem drivers .INF file, either by typing it and click OK, or Browse for it.


A list of one or more modem models will be displayed. If there is more then one choice, be sure to select exactly the same one being used on the NetModem Server computer. Click "Next".


A list of available COM ports is displayed. Click the "Selected ports" option, and click the virtual COM port which you selected in the NetModem Client Configuration window (In this case it is COM4). Click "Next".


Your modem driver should now be installed. Click "Finish".


You should now see the modem driver is "Attached To" the Client Virtual COM port. If no COM port is listed here, then something went wrong with the modem driver installation.
In some rare cases, it could be necessary to reboot Windows XP before a modem driver can be used.
If your modem driver can not be installed on the virtual COM port for any reason, please contact a technical support engineer for assistance.

Assuming the modem driver installed successfully, your installation is now complete. All that is left is to configure your application software to use the new COM port (or to use the Modem Driver attached to that COM port).



8. Monitoring Activity on the Server and Clients


8.1 Monitoring Activity on the Server:

From the NetModem Server PC the Administrator can view the active connections and real-time log files from the Status screen in the NetModem Server window. Get there by right clicking the NetModem Server tray icon, and selecting Status. This can also be done remotely using Remote Desktop.

 

By default all pools will be displayed in the Status screen, but you can view just a particular pool by selecting it from the pulldown list.

Active Connections shows the clients that are currently connected. By right-clicking one of the active connections, the Administrator can disconnect any user.

The activity log shows client logins, COM ports being opened and closed, phone numbers that are dialed, etc. separate logs for each pool plus a master log are all written to log files in the folder where NetModem Server is installed.

The last 500 lines of a log are viewable from the status screen.

Tip: The Status tab window can be widened as needed to view additional notes in the Log entries, and the new width will be used each time it's opened in the future.

If more then one pool is defined, a separate log is maintained for each modem pool, as well as a master log for all pools. The logs are located in the folder that the NetModem Server was installed in, usually in c:\program files\NetModem\Server\

The filename of the master log is allpools.log, and the filename of each pool is {poolname}.log,

The "Clear Log" button allows clearing just the current log being viewed, or all the logs. It also asks if the log files should be also be deleted.

The "View Dialed Log" Displays a list of all phone numbers that have been dialed, in addition to any phone numbers which were blocked by NetModem Server due to dialin block filter defined in the pool properties.
Each entry contains the following data:

  • Time/Date of Call
  • Duration of call
  • Phone Number
  • User Name
  • System Name
  • IP Address
  • COM Port
  • Pool Name
  • Bytes Sent
  • Bytes Received

Logging can also be directed to any ODBC compatible database. See the Logging Options chapter for details.

The "Close" "License" "Help" and "About" buttons are described in the Configuring NetModem Server chapter.


8.2 Monitoring Activity on the Clients:


Client users can display the NetModem Client Monitor Status screen by right clicking the NetModem Client system tray icon and selecting Status.

Each Virtual COM port created by NetModem Client is Listed under "Ports" in the Status screen.
When a COM port is open, its Baud, State, and IP Address fields will appear.
After a COM port is closed, these fields are removed a few seconds later.

Baud: The number of times per second that an RS-232 serial signal can change on this port.
            Common values are 300, 1200, 2400, 9600, 19200,38400 ,56700 and 115200.

State: The number of Data Bits, the Parity Type, and the number of Stop Bits the port is configured for.
            (I.E.: the above "8,N,1" means 8 Data Bits, No Parity, and 1 Stop Bit.)

IP Address: The IP Address (or Hostname) of the NetModem Server PC which this COM port is redirecting to.

Encryption: The Encryption Cipher being used, if any.


The following buttons are usually available are on the right:

Configure: Opens the NetModem Client Configuration Window. (This button may be removed by the Administrator to prevent users from making changes to the configuration).

Help: Opens the Users Guide.

About: Displays the version, copyright and contact information.

Client users can monitor the Data Flow occurring on all of the Virtual COM ports by selecting the Trace tab in the NetModem Client Monitor.

The trace Window normally only displays messages when virtual COM ports are created or removed, or the virtual serial port driver is restarted.

When you select the Enable Trace checkbox, you are shown the serial data moving to and from the client and server along with the timestamp and name of the COM port. You can also enabled the Hex Display checkbox to show the data in hexadecimal numeric format instead of the default ASCII code format, and you can enable Auto Scroll checkbox to have the window scroll as more data is logged.

Enabling the Trace can be a valuable tool for troubleshooting misconfigured application software.
Trace should normally be left disabled, as enabling it will cause a slight decrease in the performance and will increase the amount of RAM used.

There are three color codes used in the trace data:

  • Control Information
    Black text preceded with a "|" is Control Information, such as a changing Status Line, Baud Rate, or State setting, or when a COM port is opened or closed.
     
  • Transmit Data
    Blue text preceded with a "»"is data transmitted over the COM port by the application software. This can be viewed in either ASCII code format, or Hexadecimal numeric format.

  • Receive Data
    Red text preceded with a "«" is data received over the COM port by the application software. This can be viewed in either ASCII code format, or Hexadecimal numeric format.

There are four buttons used to control the trace log:

Clear: Erases the entire log from the window.

Save Log: Saves the log file in either ASCII format (.log) or binary format (.trc)

Open Log: Opens a binary format (.trc) trace file that was previously saved.

Trace Options: The following Trace Options are available:


Select Ports to Trace: Allows limiting the number of COM ports that will be traced. For applications using a large number of COM ports, this option can lower the system overhead required for tracing.

Select Ports to Display: Allows limiting the number of COM ports whos data is displayed in the trace window, to specific ports that are being traced. For applications using a large number of COM ports, this allows focusing on specific ports among all the COM ports being traced.

Select trace buffer memory size: Allows choosing the amount of RAM used for tracing. Options are Normal and Large. Normal uses 512KB of RAM, and Large uses 10MB of RAM.

Send trace data to system debug channel: By enabling this option, all trace data is also sent to the system debug channel. This data can be collected using third party applications such as DebugView. An optional prefix can be defined, which is added to the beginning of each event line.

DebugView is an application that lets you monitor debug output on your local system, or any computer on the network that you can reach via TCP/IP. DebugView is a free product from Sysinterrnals, which can be downloaded here: http://www.microsoft.com/technet/sysinternals/miscellaneous/debugview.mspx

DebugView can be used to send the Trace Log data directly to a file by using the File > Log to File command. Otherwise, DebugView defaults to filling its buffer with the Trace data which can be saved to a file manually by using the File >Save as command.

DebugView can include the Timestamp of each event that is logged by enabling the Options > Show Time option.




9. Server Logging Options

9.1 Server Logging Overview

NetModem Server allows logging of phone calls and other activity to be stored in ASCII text files, or an ODBC database. Both logging methods can also be enabled simultaneously, or logging can be disabled entirely.

ASCII text files are convenient for use with simple scripts, and can be viewed using Notepad or WordPad.

The following ASCII text file logs can be created:
 

ALLPOOLS.LOG

A master activity log of all the pools. (Only used if more then 1 pool is defined).

{POOLNAME}.LOG

A separate activity log for each pool defined, where {POOLNAME} = name of pool.

DIALED.LOG

A log of all phone numbers dialed.

ASCII text files are stored in the Log Files Path defined under Log Options in the Configuration tab.
The default is c:\program files\netmodem\server\logs

ODBC Databases offer many advantages over ASCII text file logs. Any ODBC Database can be used, including:

  • Microsoft Access
  • Microsoft Excel
  • Microsoft SQL
  • MySQL

Third party applications such as Crystal Reports and custom scripts written for MS-SQL or MySQL can create complex reports by accessing the database data in real-time.

The same database table names can be created as the ASCII text files above, but without the .log extension. The database filename and location is defined by the ODBC database driver.

When either ASCII text files or ODBC database logging is enabled, NetModem Server can display up to the last 500 lines of the activity logs in real-time from the Status tab. The maximum size of the logs is limited only by the size of the hard disk.
 

The Status tab allows the Activity logs to be cleared either from the real-time viewer, or also deleted from the hard disk.

The following Activity data can be logged:

  • Date/Time
  • System Hostname
  • IP Address
  • COM port
  • Pool name
  • Event Description
  • User name
  • Phone Number dialed
  • Comments

Event Descriptions list user logins, when COM ports open or close, When dialing is detected, when calls are blocked, and idle timeouts. Comments describe event conditions, such as security settings, encryption, and connection duration.

The following Dialed data can be logged:

  • Date/Time
  • System Hostname
  • IP Address
  • COM port
  • Pool name
  • Duration of the connection (or if the phone number was blocked)
  • Phone number dialed
  • Number of bytes sent and received

The log options Window can be accessed by opening the NetModem Server Configuration tab, and clicking the Log Options button.

The default settings are shown below, which have ASCII logging enabled, and database logging disabled.

If you have something other then modems attached to the COM ports, then it is recommended to check the first option, "Disable Dial Logging and Dial blocking". This will cause AT commands sent to the COM ports to be ignored.

9.2 Enabling Server Database Logging

By default database logging is disabled. You can enable database logging by taking the following steps:

  1. Open the NetModem Server Configuration tab, and click the Log Options button.


  2. From the Log Options window, enable the logging to database checkbox.

  3. Click the ODBC button, to open the ODBC Data Source Administrator tool.


  4. Click the System DSN tab. *** THIS IS A VERY IMPORTANT STEP! ***
    (NetModem Server runs as a service, and therefore it requires System DSN.) 

  5. Click the Add button, which opens the Create New Data Source window. 

  6. Select the proper ODBC driver for the desired database, and click Finish. In our example we will selected the Microsoft Access Driver. This will bring up an ODBC Driver Setup window for the driver you selected.

     

  7. Type in any Data Source Name such as "NetModem". The description field is optional so it can be left blank. 

  8. Some ODBC Driver setups (such as MS Access) include a Create button. If your driver setup has a Create button, click this to bring up the New Database tool, allowing you to select the location and filename of your database. Any location and filename can be used, for example c:\Program Files\NetModem\Server\ with a name of NetModem. If your ODBC Driver Setup does not have a Create button just skip this step.

  9. Some database types support Login name and Password enforcement.   If these are to be used, these fields should be filled out in the ODBC Driver Setup. Some ODBC Driver Setups (such as MS Access) have the Login name and Password fields located under the Advanced button, while other drivers (such as Excel) do not support these.

  10. When you are finished configuring, click OK to close the ODBC Driver Setup window and click OK to close the ODBC Data Source Administrator window. 

  11. From the NetModem Server Log Options window, select the ODBC Data Source name you created from the pulldown menu. 

  12. If you provided the ODBC Driver Setup with a Login name and Password, then you must also enter the same values in the Log Options window. Otherwise leave those fields blank. 

  13. Finally, click the Test button to open the Database Test, which checks if NetModem Server can connect to the database. If the test is successful, click on OK to close Log Options and click the Save button. If the test fails, please review this overview for any mistakes.





10. Security Settings

Each pool of COM ports on the NetModem Server can optionally be configured to limit access to specific authenticated Windows users, or to clients that can provide a pool password.

Pool security can be configured from the NetModem Server Configure Tab. You can bring up the Configure Tab by right clicking the NetModem Server system tray icon and selecting Configure.

Select one of the pools, and click the Properties button to bring up the Pool Properties window:




The security options for each pool are:

  None
Require Authenticated User
Require Pool Password

By default None is selected, allowing any client to connect to the COM ports in this pool without providing a login or password.

Require Authenticated User - Limits access to COM ports in this pool to a list of Authenticated users and/or groups. When this security option is selected, the "Edit Access List" button appears. Clicking on this button brings up the window below:

The Edit Access List allows defining users and/or groups that are allowed to access ports in this pool.

This is done by selecting the name of an available user or group from the list on the left, and clicking the Right Arrow button to move them to the list on the right.

Removing A user or group is done by selecting their name from the list on the right, and clicking the Left Arrow button to move them back to the list on the left.

If Windows domain server(s) are not used, user or group accounts are authenticated locally from the NetModem Server PC.

 

Require Pool Password - Limits access to COM ports in this pool to only clients that can provide the pool password for this pool. When you select this security option the "Change Pool Password" button appears.

When a pool password is defined in NetModem Server, the same password must be defined in each NetModem client that needs to access this pool of COM ports or modems.

The Password prompt requires you enter a password twice, to confirm that you typed it correctly.

After clicking OK to accept the new password, please be sure to also click "Save" to begin using this password for the pool.


Once you have enabled Security options on the server, you will also need to enable it in the client PC's.
Right click the NetModem Client Tray icon and select Configure.

The NetModem Client Configuration Window allows you setting different security settings for each Virtual COM port you have defined.

The following Security options are available
None
Use Login/Password
Use Windows Credentials
Use Pool Password

Prompt at Login

The default is None, which does not try to send any security information when it connects to the server.

Use Login/Password will provide the server with a login and password each time a virtual COM port is opened. When you select this security option, a button will appear that says "Change Login/Password". which
allows you to define the Login name of the user, and their password.

The Login Name and password the client provides must match the Windows Credentials information found on either the domain controller used by the NetModem Server, or if a domain controller is not used then it must match a user that is defined on the NetModem Server computer.

The Password prompt requires you enter a password twice, to confirm that you typed it correctly.

Use Windows Credentials will provide the server with the current user's Windows login information each time a virtual COM port is opened. NetModem client obtains this information from Windows during the login process. After the NetModem Client is installed, the user will need to logoff and then login again before this option will be functional.

Use Pool Password will provide the server with a password for the selected pool each time a virtual COM port is opened. The server allows a unique pool password to be defined for each pool of COM ports or modems.
When you select this security option, a button will appear that says "Change Pool Password".

Prompt at Login will prompt the user for their password each time they login to Windows.

Once you have enabled one of the security options in the NetModem Client Configuration, you should run the "Test Server Connection" to make sure that the security handshaking between the client and server are successful.

 



11. SSL/TLS Encryption

11. 1 Encryption overview

The SSL/TLS Encryption feature allows the data passed between the client and server PC's to remain secure, even when used an insecure network such as the internet. NetModem Server requires a special license key in order to enable encryption, and both the client and the server must be configured with compatible encryption settings.

Either the SSL version 3, or TLS version 1 cryptography protocols can be used. TLS is more advanced then SSL, and is therefore recommended.

Both protocols support several different encryption algorithms (which are known as Ciphers), and each cipher supports several key lengths (which are known as Encryption Strengths).

NetModem supports the following ciphers: RC2, RC4*, DES, 3DES, and AES.

Multiple encryption strengths are available for each cipher, which ranges from 56 bits to 256 bits depending on the cipher.

When Encryption is enabled, Each NetModem Client can request an SSL Certificate from the Server, and can use this to validate the servers identity by confirming that the certificate was issued and signed by a Certificate Authority (known as a CA). A built-in list of CA's (exported from Internet Explorer 6), is included with NetModem Client, or a custom list of CA's can be used instead. NetModem Client also allows unsigned/self-signed certificates to be used.

A Sample unsigned certificate is included with NetModem Server, named Sample.pem. This is useful in the testing phase, but it should not be used in a production environment since it uses a known password.



11.2 Enabling Encryption

For encryption to be used, both NetModem Server and NetModem Client must both be configured to enable configuration and to negotiate a common protocol, cipher, and cipher strength.

On NetModem Server:

  1. Ensure that NetModem Server has a license key which supports the SSL/TLS Encryption option.
    If you are evaluating NetModem you can request a key from your account manager. Once an SSL/TLS encryption enabled key is entered, the "SSL Encryption" Tab will appear at the top of the NetModem Server GUI.

  2. Click the "SSL Encryption" tab on the NetModem Server Graphic User Interface.



  3. Enable the Require SSL/TLS Encryption checkbox.

  4. Optionally select to use TLSv1, SSLv3, or both, and select the Minimum / Maximum Encryption Strengths and Encryption Ciphers that NetModem Server will allow.

  5. Select at least one Cipher: RC2, RC4*, DES, 3DES or AES. Several or all can be selected, and the actual Cipher used will be negotiated each time a client connects.

  6. If you are supplying your own certificate file, click the Choose File button to select your Certificate .PEM file and then click the Change Certificate Password to enter the password that was used to create the certificate. The password for the sample.pem certificate is "password". Note: The sample.pem certificate provided with NetModem Server should only be used for testing. Any publicly distributed certificate can not be considered secure.

  7. Click the Apply button to save the changes.

Note: The Certificate password is stored in the Windows Registry in encrypted form (256bit AES).


On NetModem Client:

  1. Open the NetModem Client Configuration window, and on the Encryption pull-down menu select one of the following::
      TLSv1 or SSLv3
      TLSv1 only
      SSLv3 only




    It is best to select the "TSLv1 or SSLv3" option, as this allows the Server to choose which will be used.


  2. Click the Advanced button, and from the Advanced window click on the SSL Encryption tab.



  3. Select the Minimum / Maximum Encryption Strengths and the Encryption Ciphers that NetModem Client will offer to negotiate with the Server. You will need to have at least one Cipher selected which NetModem Server has also been configured to allow.

  4. To assure that the Certificate supplied by NetModem Server has the correct credentials, you should enable the Require Validated Common Name checkbox. By default there will be a %C in the Common Name Field, which is a meta-tag used in place of the Servers Hostname or IP Address, as defined in each COM port configuration screen. This should always be used when you have more then one Server the client will connect to.

    Optionally, you could enable the Require Validated Organization checkbox, which will allow you to specify the name of the organization the Certificate was issued to.
    When either of these checkboxes are enabled, the Client will require the servers demand that the Servers certificate

    When either of these checkboxes are enabled, the client will demand that the field(s) defined them are an exact match for the same fields defined in the Servers certificate. You can leave these fields blank to be filled in automatically when you test the server connection in step 7 below.

  5. If NetModem Server is using the Sample.Pem certificate, or if NetModem Server is using some other unsigned certificate then you should select the Do not require a certificate to be signed option.
    If you are using a certificate signed by a known CA (Certificate Authority) then you should select the
    Use built-in Certificate authority file option.
    If NetModem Server is using a certificate signed by a CA not listed in the included CA.PEM textfile, then you can either select Do not require a certificate to be signed or Provide a custom certificate authority file. Review the CA.pem file to for information on creating a custom CA file.

  6. Click the OK button to close the Advanced window.

  7. In the NetModem Client Configuration window, click the Test Server Connection button to verify that the Encryption options you specified are compatible with the settings defined on the NetModem Server.

  8. If there are any encryption issues found by the test, it will ask you if you wish to fix the problems. Answering yes will change the encryption options on the client to match what the server requires. If this is done, be sure to review the Advanced SSL Encryption settings afterwards to see what settings have been changed.

  9. Once the test is successful, be sure to click the "Use Settings" button at the bottom of the test window.

You can see which Encryption Cipher is being used by each active COM port in the NetModem Client Monitor Status Window.

Note: Changes made to the NetModem Client Configuration change effects subsequent sessions. Current sessions are not effected.

 




12. Blocking Dialin and Dialout

In addition to the Security settings, each pool defined on the NetModem Server can be set to block incoming calls and/or limit outgoing calls to a defined list of phone numbers.

The Pool Properties for any defined pool can be selected from the NetModem Server configuration screen, by selecting the pool and clicking the Properties button.

 



The Block Dialin and Block DialOut options are disabled by default.

When you enable the "Block Dialout" option, it causes the button labeled "Allowed Numbers to Dialout" button to appear.

How the "Block Dialin from Clients" feature works:
When enabled, this function prevents the clients from sending certain AT command to the modems in the selected pool, as these commands are used to allow a modem to accept an incoming call. In particular, the following two AT command are blocked:

ATA - Answer an incoming call

Client applications send an ATA command to a modem to tell it to manually answer an incoming RING.

ATS0=x - Set Auto Answer mode on (where x = a numeric value from 1 to 9)

Client applications can send an ATS0=1 command to a modem to tell it to automatically answer an incoming call on the first ring. Any non-zero value after the equal sign enables it to automatically answer an incoming call on that ring number. Setting S0=0 disables the auto answer mode, and this command is not blocked.

Note that AT commands can contain other modem commands between the AT and the actual command.For example: ATM0E0A
This is actually several modem commands: M0 turns the modem speaker off, E0 turns echo mode off, and A answers an incoming call.


How the "Block Dialout from Clients" feature works:
When enabled, this function limits the phone numbers that the clients can tell the modem to dial, to a predefined list of phone numbers including wildcards. Clicking the "Allowed numbers to Dialout" button brings up notepad with the current pools allowed-list loaded. Each entry on the list should be on its own line.

The format of the allowed numbers list file is as follows:

  • Each phone number must be on a separate line.
  • A phone number may only contain numeric values, or Wildcard characters.
  • Any hyphens or spaces must be removed.
  • A phone number must include any prefix numbers dialed, such as 1 or an area code.
  • A Wildcard * Character can be used to represent any series of numbers.

The default list contains only one entry, a line with only a wildcard character. This allows any phone number to be dialed. Lets imagine this is replaced with the following list:

18005551212
9508888
1713*

The above list would allow the modems in this pool to dial either of the first two numbers, or any number beginning with "1713".




13. Virtual Phone Books

Virtual Phone books allows the administrator to assign pseudo phone numbers to clients, which are translated to the actual phone number when dialing out. This allows phone numbers for specific services to be changed without needing to globally reconfigure every dialout user's terminal with the new phone number(s).

Once a Virtual Phone book has been assigned to a Pool, the administrator can view and edit it directly, or allow a third party database tool or script to maintain it.

Viewing or Editing a Virtual Phone Book:

From the NetModem Server Configuration tab, select a Modem Pool and click the Phone Book button.




Virtual Phone Books are lists containing pairs of Virtual Phone ID's and the real phone number they will be translated to.

A separate Virtual Phone Book can be assigned to each Pool, or Multiple Pools can share a common Virtual Phone Book.

Each Virtual Phone book is stored in either a flat text file, or an ODBC database.


Configuring Virtual Phone Books:

From the NetModem Server Configuration tab, select a Modem Pool and click the Properties Button.

From the Pool Properties window, enable the "Use Virtual Phone Checkbox", and click the Configure Virtual Phone Book button.


Choose if you want the Virtual Phone Book to use a Text file, or an ODBC Database to store the phone numbers.

By default a Text file named phonebook.txt is selected, located in the default NetModem Server installation directory. You can choose to use a different Text file as the phone book for this Pool by clicking on either the Select Phonebook or Create New Phonebook button.

A Text file stores the data in the following format:

ID1,Real_Phone_Number1
ID2,Real_Phone_Number2

Each ID and Real Phone Number pair are on the same line, separated by a comma.




When choosing to use an ODBC database, the following fields appear:

ODBC Data Source: This pulldown allows you to select a pre-existing database source

Login and Password: These are optional

Help: Opens a step by step tutorial on creating an ODBC database using the ODBC Database Administrator tool.

ODBC: Opens the Microsoft ODBC Database Administrator tool

Test: Verifies that NetModem Server can access the selected ODBC data source successfully.

The table name "phonebook" is always used.

It is fine to use the same ODBC data source both as general phonebook, and for database logging.


If NetModem Server is configured to log to an ODBC Database, the same Data Source can be used for both logging and a virtual phone book, or seperate Data Sources can be used for each.

To create a new ODBC Data source, click the ODBC button to open the ODBC Database Administrator tool.

Step by step instructions on using the ODBCD database Administrator tool can be found in the Enable Server Database Logging chapter.



14. Limiting Usage Hours

Each pool can have separate Usage Hours defined. Usage hours are the hours of the day that COM ports in this pool are allowed to be accessed.

View or change the usage hours from the NetModem Server Configuration tab, by selecting a Modem Pool and clicking on the Properties button, to bring up the Pool Properties window. The bottom of the window has a graph representing each hour of the week with a block that can be selected (colored) or unselected (white).



This graph shows that clients are allowed to access the COM ports in this pool Monday through Friday from 7:00AM until 6:00 PM.

You can toggle hours on or off by clicking the mouse on an hour block, or select a block by holding down the mouse and dragging. You can also toggle days or hours on/off by clicking on the desired Day or Hour button.

Click the OK button when you are done to close the Pool Properties window, and click the Save button in the main window to save and activate your changes.




15. Using Multiple Servers for Failover

If you have multiple NetModem Servers installed, you can allow clients to maintain a list of servers to attempt to connect to each time a Virtual COM port is opened. If the first server on the list is either full or unreachable for any reason, the client tries the next Server on the list. Note: Each NetModem Server requires a separate license.

The Client Configuration Screen looks different when Use Multiple Server failover enabled. The usual input fields for IP Address, Port, and Pool are replaced with the Server List options. These allow you to choose from several different lists of servers, and will allow you to edit any one of those lists.

Up to 20 Server Lists can be defined, and each server list allows up to 5 Servers to be specified.




In the Edit Server List you can defined up to 5 servers to be specified, in the order you want the client to connect to.

A Server list needs at least two servers defined. Each Server entry must have the IP Address (or hostname) of the Server, and the TCP Port. A Pool Name is optional, if no Pool Name is defined, the default pool will be accessed.

When an application opens a COM port that is configured to use multiple servers, NetModem Client first attempts to connect to the first server on the list. If that server is either full or unreachable, the client attempts to connect to the next server on the list. This continues until a server with an available modem is reached, or until all the servers have failed.

Each Server List is stored in an ASCII text file in the NetModem Client folder, allowing lists to be pre-installed by the System Administrator. The list files are named as serverX.txt, where X= the list number.

When using multiple servers, you can fine tune how long NetModem Client waits for each server to respond when the Client requests a COM port from a server. By default it waits up to 3 seconds for the server to respond, and if there is no response then it switches to the next server in the list. The settings can be found under the "Advanced" button in the NetModem Client Configuration window. The value is in milliseconds (1/1000th of a second), so the default value of 3000 = 3 seconds maximum. On a slow Network you might need to increase this value, and on a Network in which Several Failover Servers are defined, you might need to decrease the value in order to speed up the search.

 



16. Troubleshooting and Technical Notes

16.1..... If the NetModem Client "Test Server Connection" Fails.
16.2..... If the client says "NetModem Server reports COM port not available"
16.3..... Solving Network Faxing Issues
16.4..... How to stop the NetModem Server or Client Service
16.5..... Running the NetModem Server as a non-Service Program
16.6..... Preventing accidental client configuration changes
16.7..... Configuring a firewall to work with NetModem
16.8..... NetModem under Terminal Services, Remote Desktop or Citrix Metaframe
16.9..... Using NetModem with RAS (Remote Access Server)

16.10... Database error recovery
16.11... NetModem Client virtual COM port driver
16.12... Support for DOS applications


16.1. If the NetModem Client "Test Server Connection" Fails

First check that the client COM port has the correct IP address of the NetModem Server defined, and that the TCP port being used on that COM port matches the TCP port being used on the NetModem Server.

If that does not solve it.


Find out if the NetModem Server is accepting connections by going to the NetModem Server PC, and running TELNET.EXE from a command prompt by typing in the following and press [Enter] :
telnet localhost 6000

(If you defined a TCP port other then 6000 on the NetModem Server, use that value instead)

A black empty screen indicates a successful connection. A "Could not open connection to the host" response indicates that NetModem Server is not accepting incoming connections on that TCP port.

If the telnet connection is successful locally on the NetModem Server PC, next try the same command from the NetModem client PC but change the word localhost to the IP address of the NetModem Server. For example "Telnet 192.168.0.1 6000". If it works from the server, but not from the client then this indicates that there is a firewall blocking traffic to the TCP port on the server. See the Configuring a Firewall section to solve this issue.

If the telnet connection works from the Client PC, then it should also work successfully from the NetModem Client "Test Server Connection". Check again that the IP address and the TCP port defined on the clients COM port are correct.

 

16.2. If the Client says "NetModem Server reports COM port not available"

This indicates that the COM port the client to requested is not available on the NetModem Server. Check if the NetModem Client's COM port is configured for Automatic Pooling as this tells the server to provide the next available COM port in a pool of Shared Ports defined on the NetModem Server.

If the client is set for Automatic Pooling then the next step is to find out why non of the shared COM ports on the server are available. It could be due to other clients holding all the shared COM ports open. Look at the Active Connections listed in the NetModem Server's Status screen on the Server PC. If some of the Shared Ports are in use by a client, then they will each be listed as an Active Connection, showing the IP address of the client PC that is using each port. If all the Shared Ports in a pool are listed under the Active Connections list, this explains why non are available.

If all the COM ports in a pool are not listed as Active Connections, then there is some other reason that these COM ports are not available to the clients. Either an application or service on the NetModem Server PC is currently using those COM ports, or there is a problem with the COM ports or their attached modems. If no other application on the NetModem Server PC is using those COM ports, then try accessing the COM ports directly from the NetModem Server PC using a terminal program such as HyperTerminal. If HyperTerminal is unable to access the modems or COM ports directly, then the NetModem Server will not be able to access them either.

The pop-up Window that displays "NetModem Server reports COM port not available" to the client user can be disabled by going to the Advanced section of the NetModem Client configuration program and disabling the checkbox.

 

16.3. Solving Network Faxing Issues

Only Class 2 or Class 2.0 fax modems can be used over a network, due to Class 1 fax being very timing sensitive. Many low-end internal "Software Modems" (also known as WinModems) only support Class 1 fax. This is also true for most of the USB modems. However, most external modems, multi-modem cards, and several name-brand internal modems support either Class 2 or Class 2.0 faxing. It's a good idea to check which fax class is supported with the modem manufacturer before purchasing a modem to be used for faxing over a network.

The Faxing software you use also needs to be configured for Class 2 or Class 2.0. Keep in mind that Class 2 and Class 2.0 are not the same, so it's important that the software is configured for a class that the fax modem supports.

Consult your faxing software documentation for information on setting Class 2 or 2.0 in your faxing software.
There is additional information on this subject found on PC Micro's NetModem Support Site.

 

16.4. How to stop the NetModem Server or Client Service

Both the Server and Client run as Windows Services, and by default automatically load when Windows starts, even before a user logs on.
Usually their is no reason to ever stop the services, but this can be done either from the Windows control panel's Services panel (found under Administrative Tools), or by going to a Command Prompt on the PC it's running on and type in:

NET STOP "NETMODEM CLIENT"
Or:
NET STOP "NETMODEM SERVER"

To restart the service, type in:

NET START "NETMODEM CLIENT"
Or:
NET START "NETMODEM SERVER"

These commands can also be executed from a Windows batch file or from the windows task scheduler.

To disable either service from starting automatically, navigate to the Windows Control Panel, and under "Administrative Tools > Services" double-click the Service named "NetModem Client" or "NetModem Server". and change its "Startup Type" from Automatic to Manual. Both the Services can also be stopped or started from here as well.

The NetModem client service should never be stopped while an application currently has one of its virtual COM ports open. Stopping the client service will disable its virtual COM ports, which can result in the application currently using those ports becoming unstable.
Stopping the NetModem Client or Server service will not stop it's system tray icon, which is a separate exe named NetModemMonitor.exe or NMServerMon.exe. This can be stopped manually from the Windows Task Manager under the Processes tab.

 

16.5. Running the NetModem Server as a Non-Service program

The NetModemServer.exe can run as a normal program (Rather then running as a Windows Service). Doing this will add an additional menu option to the system tray icon called Exit which allows the program to exit only if non of the COM ports are currently in use. If any COM ports are in use, this Exit option will be gray and unselectable.

 

16.6. Preventing accidental client configuration changes

If an Administrator is concerned about the possibility of a client user misconfiguring the virtual com port settings, there are two ways they can prevent the user from making changes to the Client configuration:

  1. The user can be given a limited account type in Windows. This is done from the "User Accounts" option in the Windows control panel.

  2. If the user requires an Administrator account, then the configure.exe file can simply be removed from the NetModem Client folder. This is usually located in c:\program files\netmodem\client\
    This will also prevent the configure option from appearing in the system tray menu or on the main window.



16.7. Configuring a Firewall to work with NetModem

If a firewall is being used on your network, it must allow the NetModem Server to receive TCP connections from the Client PC's.

This is usually done by permitting network traffic on the specific TCP port which NetModem Server receives connections on (TCP port 6000 by default).

Some software firewalls (for example the Windows XP Firewall) can be configured to allow incoming connections to a specific executable. This method will not work with NetModem Server and Client, as by default they run as a Windows Service.

If your firewall also permits a restriction of the protocols used, be sure to allow the Telnet protocol to be used.

How to configure the Windows XP Firewall on the NetModem Server PC:
(This Firewall is included with Windows XP Service Pack 2 and later versions of Windows)

  1. From the Windows Control Panel, select the Security Center icon.

  2. Select the Windows Firewall link under "Manage security settings".

  3. Select the Exceptions Tab.

  4. To allow incoming connections only on the TCP port used by NetModem Server:

    • Select Add Port
    • Type in the application Name (i.e. NetModem Server)
    • Type in the Port number NetModem Server uses (usually 6000).
    • Leave the TCP option selected (not UDP).
    • Optionally you can select Change Scope to limit where the clients can connect from.
    • Select OK

NetModem Server never accepts connections on any TCP port other then the one defined (by default TCP port 6000). Only a single TCP connection is used to carry both data and control information between the clients virtual COM port and the Server.

Windows Firewall only blocks incoming connections, so it does not need to be configured to work with the NetModem client. If there is other firewall software installed on the NetModem client PC's which block outgoing connections, it should be configured to allow the NetModem Client to connect to the NetModem Server on the same defined TCP port.

 

16.8. NetModem under Terminal Services, Remote Desktop or Citrix Metaframe

Windows Terminal Services, Remote Desktop and Citrix Metaframe are multi-user environments which can be used with NetModem. Terminal Services are part of Windows Server (2003,2000,NT4) while Remote Desktop is a light single-user version of a terminal server included in Windows Professional, Business, and Ultimate Version. Citrix Metaframe is an advanced remote access infrastructure server for enterprise applications.

When using any of these environments to allow "Thin-Clients" to access the shared COM ports, you should use the following procedure:

  1. Install the NetModem Client on the Terminal Server, Remote Desktop, or Metaframe PC. This can be the same PC where NetModem Server and the shared ports are located, or it could be a separate PC.

  2. Select one virtual COM port in the NetModem Client configuration, and assign the IP address of the NetModem Server PC.

  3. Next Select as many additional Virtual COM ports as needed. (Usually you will want to select one virtual COM port for each thin-client user). Up to 256 Virtual COM port can be selected. All the additional virtual COM ports will default to using the same Server IP address as you assigned in step 2.

  4. When you close the client configuration window, you will be guided to install a modem driver. When you are instructed to select the ports to assign the modem driver to, select all the Virtual COM ports.

  5. Assign one of the Virtual COM ports to each thin-client user. This will allow each user to access the next Shared COM port on the server though their virtual COM port. This allows up to 256 thin-clients to access the modem pool.

  6. Under the Advanced options in the NetModem client configuration, disable the "show message if COM port not available" checkbox. If no COM port is available on the NetModem Server, the thin client will be informed by an error message in their application software attempting to use a COM port.

  7. If NetModem Servers Pool Settings is configured to require User Authentication, the NetModem Client Security setting may not be set for "Use Windows Credentials". Instead the "Use Login/Password" security setting must be used. This is because Terminal Server and Citrix Metaframe will not allow NetModem Client to access the current users Windows Credentials.

These environments can also be used to allow you to monitor and configure the NetModem Server from a remote computer.

To configure Windows XP Professional to become a Remote Desktop, you should use the following procedure:

  1. Right-click My Computer, click Properties, and then click Remote tab.

  2. Turn on Remote Desktop by selecting the check box Allow users to remotely connect to this computer.

  3. Designate users by clicking the Select Remote Users button.


You can connect to a Remote Desktop or a Terminal Server from a another computer by using a tool called Remote Desktop Connection (RDC). RDC comes with Windows XP SP1 or later, and it is also available for older versions of Windows at no charge from Microsoft's web site here:
http://www.microsoft.com/windowsxp/downloads/tools/rdclientdl.mspx

In Windows XP, you can run Remote Desktop Connection. by clicking the following:
Start > Program Files > Accessories > Communications > Remote Desktop Connection
Enter the IP address or hostname of the Remote Desktop or Terminal Server PC and click on Connect.

RDC has an option to allow the local serial ports of the computer that RDC is running on to be accessed by applications running on the Terminal Server (or Remote Desktop) computer. This can be enabled by clicking on the Local Resources tab, and under the Local Devices section enable the checkbox for Serial ports.
We do not recommend doing this under normal conditions, as these remapped RDC COM ports can cause great confusion for other users connected to the terminal server, since the COM ports will be visible (in applications such as HyperTerminal) to any user that is logged into that terminal server, but they can only be accessed by the RDC connection which owns these local ports.

If NetModem Server is installed on a Terminal Server (or Remote Desktop or Citrix Metaframe) any remapped RDC COM ports will be listed with an asterisk * to the left of the name, for example: COM1*. The remapped RDC COM ports can only be shared by NetModem Server if NetModemServer.exe is running as a non-service from that terminal session. This is due to a limitation of RDC, in which the remapped ports are only allowed to be accessed by an application running in the local terminal session, and can not be accessed by a service. To make matters even more confusing, it is possible for a remapped RDC COM port to have the identical name as a COM port which physically exists on the terminal server! If this occurs, NetModem will display both COM ports, and both will be treated as the identical port since only one of them is actually functional.

 

Remapping COM ports in Windows Server 2003 or 2008

Windows Server 2003 and Server 2008 (all versions except the Web Edition) includes a command line utility called change.exe which can map any COM port to a different port number under the current users Terminal Server session.
For example, a Terminal Services user could enter this command:

change port COM12=COM1

This allows the current user to access COM1 in their application software, which is redirected to COM12 by Windows Server. COM12 could be either a physical COM port, or a virtual COM port created by NetModem Client.

A second Terminal Services user could enter this command:

change port COM13=COM1

Now both users can access COM1 at the same time in their application software, and they will really be using COM12 and COM13 respectively.

This allows all users to use application software configured for a particular COM port, and allows legacy applications that only supported COM1-COM4 (or in some cases COM1-COM9) to be used by more then 4 or 9 Terminal Services users at the same time. However, this will not work with TAPI, so applications that need to communicate with a Modem Driver name rather then a COM port value can not take advantage of this feature.

The change port command can be used as part of each users login script to map COM1 to a specific NetModem Client virtual COM port which is reserved for that user. For example if COM99 is reserved for a particular user, the following would be added to that users login script: change port COM99=COM1

You can run change port without any parameters to display the available COM ports and the current COM port mappings.

A limitation of the change port command is that the new COM port exists only in memory, and is not written to the registry HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM which is where many application programs look to see which COM ports exist. One solution would be to create a dummy registry entry in this registry folder like this:

Name Type Data
FAKE REG_SZ COM4
In which FAKE could be any unique name, and COM4 could be any unique COMx value. Making changes to the registry should only be done by an IT professional familiar with the precautions involved in registry editing such as backing up the registry first.

 

Limitations under Terminal Server, Remote Desktop, and Citrix Metaframe

  1. Only one outbound PPP (Point to Point Protocol) connection can be made at a time from any Windows PC, even under a multi-user operating system such as Terminal Server, Remote Desktop, and Citrix Metaframe. This is not a limitation of NetModem, but rather a limitation within Windows.
    For example, A Dial-Up Networking connection to an ISP uses the PPP protocol. This causes the Windows routing table to be changed so that all TCP packets that are sent outside of the local subnet are directed to this PPP connection. If another PPP connection is created, Windows again changes the routing table which causes the first PPP connection to fail. If you need to allow multiple users to be able to make simultaneous PPP connections, you will need to install the NetModem Client on each users PC instead.

  2. Citrix Metaframe prevents more then one outbound VPN (Virtual Private Networking) Connection to be made using a modem.

  3. If a VPN connection is used to connect to the network containing NetModem Client, then it is not possible to make a secondary PPP connection through the NetModem Client. This is due to a limitation in the VPN protocol.


Additional Information on Terminal Services and Remote Desktop can be found at Microsoft's web site using the following links:

Remote Desktop Frequently Asked Questions:
      http://www.microsoft.com/windowsxp/using/mobility/rdfaq.mspx
How to deploy Terminal Server under Windows Server 2003:
      http://www.microsoft.com/windowsserver2003/techinfo/overview/quickstart.mspx
How to deploy Terminal Services under Windows 2000 Server:
      http://www.microsoft.com/technet/prodtechnol/win2kts/deploy/default.mspx
Windows Server