|
Version 3.81 NetModem
User's Guide
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. 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.
Features:
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. Requirements: Operating System Software (for both Server and
Client PC's):
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.
Client Software Installation and Configuration Overview:
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 7, Vista, XP, 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:
Run a NetModem Server installer to begin the Installation Wizard. It will take you through the following steps:
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.
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 XenApp. NetModem Server is configured from the Configuration tab of
the NetModem Server manager. This can be opened either from the Start
> All Programs > NetModem Server menu, or by by right-clicking
on the NetModem Server system tray icon and selecting Configure.
The Tray icon is usually located in the lower right corner of the screen
near the clock.
If the NetModem Server manager is already open, simply click the
Configuration tab at the top.
Once you have defined the pools, properties and ports to share, click
on the Save Changes button. When changing the TCP/IP Port number:
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 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. The Support RAS Sharing option allows the NetModem Server to share the COM ports with the Windows "Routing and Remote Access Service". Turning off this option will allow the COM ports to be opened slightly faster. For more information, See Using NetModem with RAS. The Reset modem when opening port option causes NetModem Server
to send an "ATZ" initialization command to the next available
modem in the pool when a client requests to open a COM port, and it
then waits for the modem to respond with an "OK" before passing
that COM port to the client. If an "OK" response is not received,
it will try the next available shared COM port. Leave this option disabled
for faster opening. 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).
Before installing the NetModem Client Software:
Run a NetModem Client installer to begin the Installation Wizard. It will take you though the following steps:
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.
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.
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 and Pool should redirected to.
If the Pool Name is left blank, the first pool defined on the 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. The Security options are: The Encryption options are: The command buttons on the NetModem Client Configuration window are
as follows:
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.
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. The "Cancel" button exits the test without saving. If your virtual COM ports tested with similar results as shown above, then you have successfully configured the NetModem Client. Click "Use Settings" to close the test 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 port(s) and you click Save or Close, you will be provided with a reminder to install modem drivers which will guide you through the process outlined below.
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: 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.
You may need to 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.
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. 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).
|
|
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. 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. |
![]() |
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:
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.
Client users can display the NetModem Client Monitor Status screen by
right clicking the NetModem Client system tray icon
and selecting Status. This can also be accessed from the Start >
All Programs > NetModem Client > Monitor NetModem Client menu.

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:
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 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. 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.
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:
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:
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:
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.
By default database logging is disabled. You can enable database logging by taking the following steps:
Open the NetModem Server manager's
Configuration
tab, and click the Log Options
button.
From the Log Options window,
enable the logging to database
checkbox.
Click the ODBC button,
to open the ODBC Data Source Administrator tool.
Click the System DSN tab.
*** THIS IS A VERY
IMPORTANT STEP! ***
(NetModem Server runs as a service, and therefore it requires System
DSN.)
Click the Add button, which
opens the Create New Data Source window.
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.
Type in any Data Source Name such as "NetModem". The description field is optional so it can be left blank.
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.
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.
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.
From the NetModem Server Log Options window, select the ODBC Data Source name you created from the pulldown menu.
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.
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.
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 manager's
Configure Tab. You can bring up
the Configure Tab by right clicking the NetModem Server system
tray icon
and selecting Configure,
or from the Start > All Programs > NetModem Server > Manage
menu.
Select one of the pools, and click the Properties button to bring up the Pool Properties window:
|
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. 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. (or go to Start > All Programs >
NetModem Client > 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 |
![]() |
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. The Windows Credentials option is not available under Windows NT 4.0.
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.
The SSL/TLS Encryption feature allows the data passed between the client
and server PC's to remain secure, preventing other users on the network
from capturing the data using a packet sniffer.
NetModem Server requires a license key in order to enable encryption,
because encryption is not available in all countries. If you are evaluating
NetModem you can request a special evaluation key to enable encryption.
NetModem encryption uses the OpenSSL toolkit version 0.9.8o. OpenSSL
is the toolkit used on most SSL/TLS enabled servers today, including
the Apache Web server.
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 algorithems (which
are known as Ciphers), and each cipher supports several key lengths
(which are known as Encryption Strengths).
NetSerial supports the following common ciphers: RC2, RC4*,
DES, 3DES, Camellia, and AES.
AES (Advanced Encryption Standard) is the
recommended cipher.
Multiple encryption strengths are available for each cipher, which ranges from 64bits 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), 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.
For encryption to be used, both NetModem Server and NetModem Client
must both be configured to enable encryption and to negotiate a common
protocol, cipher, and cipher strength.
On NetModem Server:
Note: The Certificate password is stored in the Windows Registry
in encrypted form.
On NetModem Client:

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:
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".
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.
|
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. |
![]() |
|
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. ID1,Real_Phone_Number1 |
![]() |
|
When choosing to use an ODBC database, the following fields
appear: Help: Opens a step by step tutorial on creating an ODBC
database using the ODBC Database Administrator tool. |
![]() |
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
separate 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.
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
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 requested is not available on the NetModem Server. Check if the NetModem Client's virtual 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 none 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 client. 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 these 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. 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 none of the COM ports are currently in use. If any COM ports are in use, this Exit option will be gray and unselectable.
16.5. Preventing accidental client configuration changes
If the Administrator is concerned about the possibility of a client
user misconfiguring the virtual com port settings, then the configure.exe
file can be removed from the NetModem Client folder. This is usually
located in c:\program files\netmodem\client\
16.6. Configuring a Firewall to work with NetModem Server
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 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 Firewall on the NetModem Server
PC:
(This Firewall is included with Windows XP Service Pack 2 and later
versions of Windows)
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.7. NetModem under Terminal Services, Remote Desktop or Citrix XenApp
Windows Terminal Services, Remote Desktop and Citrix XenApp are multi-user environments which can be used with NetModem.
Terminal Services is part of Windows server (2008,2003,2000,NT4)
which enable users to access Windows-based programs are installed on
a terminal server, or to access the full Windows desktop. With Terminal
Services, users can access a terminal server from within a corporate
network or from the Internet.
Remote Desktop is a light single-user version of a terminal server included
in Windows Professional, Business, and Ultimate Versions. Citrix XenApp
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:
These environments can also be used to allow you to monitor and configure the NetModem Server from a remote computer.
To configure Windows 7, Vista, or XP (non-home editions) to become a Remote Desktop, you should use the following procedure:
You can connect to a Remote Desktop or a Terminal Services Server from
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 and later, 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 Services
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 Services Server (or Remote
Desktop or Citrix XenApp) 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 2008 or Server 2003
Windows Server 2003 and Server 2008 (all versions except the Web Edition)
include acommand line utility called change.exe which can map
any COM port to a different port number under the current users Terminal
Services 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:
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.
Name Type Data FAKE REG_SZ COM4
Limitations under Terminal Services, Remote Desktop, and Citrix XenApp
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
Windows Server 2008 Terminal Services:
http://technet.microsoft.com/en-us/library/cc268349.aspx
16.8. Using NetModem
with RAS (Remote Access Service)
RAS is a feature most commonly used in the Windows Server family (2008,
2003, 2000, NT4) but it is also available in Windows 7, Vista, and XP
(non-home editions). RAS allows remote users to connect to your network using
one of the following methods:
When modem connections are used for RAS, the selected modems are normally not able to be used by any other programs, even when they are idle and waiting for an incoming call. NetModem Server has a pool-properties option to share modems with RAS, allowing the same pool of modems to be used for both inbound (dialin) connections controlled by RAS (RRAS), and outbound (dialout) connections controlled by NetModem Server. When a client requests a modem which is currently controlled by RAS and this pool option is enabled,, NetModem Server asks RAS if the modem is currently in use, and if RAS says its available then NetModem Server borrows the modem from RAS. Once the client closes the modem, NetModem Server returns it to RAS.
In Windows 2000 and later versions of Windows RAS is part of the
Routing and Remote Access Service (RRAS). In addition to supporting
other features such as VPN and NAT, The Windows Server RRAS service
allows modems to be used by either RAS, Demand Dial Routing, or both.
NetModem can share modems with RAS, but it can not share modems with
Demand Dial Routing.
To disable Demand Dial Routing in RRAS on a Windows Server, use the
following procedure:
Installing RAS on Windows 7, Vista, or XP:
Windows 7, Vista, and XP (non-home editions) are limited to
one inbound RAS connection at a time per connection type (Dial-Up, VPN,
Direct Parallel or Infrared) and it has less security features then
RAS under a Windows Server. To install RAS on Windows 7, Vista or XP
(non-home edition) use the following procedure:
[ ] Connect to the Internet
[ ] Connect to the Network at my workplace
[X] Setup an advanced connection
Select the last option, Setup an advanced connection and
click Next. This takes you to the Advanced Connection
Options page, which offers the following options:
[X] Accept incoming connections
[ ] Connect directly to another computer
Deploying RAS on a Windows Server is considerably more involved due
to advanced security features, which are beyond the scope of this users
guide. Detailed information on Microsoft RAS policies and security features
under Windows Server can be found on the Microsoft TechNet Windows Server
Deployment guide, under the following sections:
Setting up Dial-up Remote Access
http://technet.microsoft.com/en-us/library/cc779310.aspx
Deploying Dial-up and VPN Remote Access Servers
http://technet.microsoft.com/en-us/library/cc759171.aspx
Dial-up Remote Access Technical Reference
http://technet.microsoft.com/en-us/library/cc780183.aspx
If NetModem Server enconters an error when while reading or querying
a database, it will automatically issue a request to the ODBC driver
to repair the error. If this repair attempt fails, NetModem Server will
switch further logging to the text based log files (until NetModem Server
is restarted), and a database failure warning is recorded in the Windows
event log.
If an automatic repair fails, we suggest you perform a manual repair by following the steps below. A manual repair is managed by the ODBC database driver tool, which can display detailed information on errors found and suggested solutions.
If the manual repair does not succeed, then the database source should
be replaced by using the Remove button from the ODBC Data
Source Administrator in the System DSN tab, and then recreating
the database as shown in the Server
Logging Options chapter.
16.10. NetModem Client advanced configuration options
To access the NetModem Client advanced configuration options, click
on the Advanced button from the NetModem Client Configuration
screen.
The following options are found under the Options tab:
Some applications may require that the COM port open function will synchronize with the server by waiting until the server provides the modem before returning a success status, or returning a fail status otherwise.
By default this option is Disabled, allowing the virtual COM port to be opened immediately.
16.11. NetModem Client virtual COM port driver
NetModem Client uses a highly optimized kernel-mode driver to create
its virtual COM ports.
The virtual COM port driver can be found in the device manager under
"Non-Plug and Play" drivers (you will need to enable
"View > Hidden devices" to see it).
The driver is controlled by a service in Windows. NetModem client virtual
COM ports can be reconfigured by third party applications, by writing
to the VCOMM registry folder located here: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VCOMM
16.12. Support for DOS applications
NetModem is compatible with both Windows applications and DOS applications
running under Windows.
Generally a DOS application which uses a COM port will do so by accessing
the serial port hardware directly. This hardware is called a UART,
which stands for Universal Asynchronous Receiver-Transmitter.
32-bit versions of Windows 7, Vista, XP, 2000, and NT include a subsystem
to run DOS applications known as the NTVDM, an acronym for NT Virtual
DOS Machine. The NTVDM monitors the standard UART I/O
ports for activity by DOS applications on COM1, COM2, COM3, and COM4.
The NTVDM redirects any activity on these ports to the Windows COM port
of the same name. For this reason, DOS applications can only be used
with NetModem client on COM1-COM4. However, these virtual COM ports
can still be redirected to any value COM port on the NetModem Server,
all the way up to COM256.
Some DOS applications allow you to configure the UART settings for the
COM ports. The NTVDM only works with the standard UART settings shown
below:
| Serial Port | Base Address | Interrupt |
| COM1 | 3F8 | IRQ4 |
| COM2 | 2F8 | IRQ3 |
| COM3 | 3E8 | IRQ4 |
| COM4 | 2E8 | IRQ3 |
While most DOS applications communicate with a COM port directly through the UART, there are a few DOS applications that can communicate by using the PC's BIOS Interrupt 14h or an enhanced version of the Interrupt 14h interface called a FOSSIL driver. If your DOS application says that it is compatible with Interrupt 14h or a FOSSIL, then you can install a third-party FOSSIL driver such as ADF or NetFoss, which can enhance performance of your DOS communication software. ADF is a free program which can be downloaded from http://www.digsys.se/adf.html
An example command line to load ADF on COM4 would be:
ADF.exe COM4 2E8 3 57600 4096 1024
This should be loaded in the same DOS window that your DOS application
is started from afterwards, which can be easily done in a batch file.
For more information on ADF, please refer to the ADF documentation.
ADF is a DOS driver, so it will only work on COM1-COM4.
NetFoss is a free FOSSIL driver designed to use Windows COM ports, so
it will allow FOSSIL compatible DOS applications to work on any COM
port value. You can download NetFoss from http://pcmicro.com/netfoss
![]()
17. Request Technical Support
Our technical staff has many years of experience in solving communication
related issues, and provides real guidance even on tough problems that
take trace log analysis or network packet analysis to figure out.
You can request support online at http://pcmicro.com/netmodem/support.html
or contact your PC Micro account manager for assistance. You can also
email support@pcmicro.com. Initial response time is usually under
an hour or two between 7:00AM - 7:00PM PST (Pacific Standard Time
GMT-7 ) Weekdays, and limited hours during weekends and US Holidays.
PC Micro maintains a list of Frequently Asked Questions at http://pcmicro.com/netmodem/support.html
If you purchased or are evaluating NetModem through a local reseller
or a consultant, they may provide an additional level of technical support.
NetModem allows a fully functional 30 day evaluation if no license
key is entered into the NetModem Server.
If you decide to purchase a permanent license, you are provided with
an electronic license certificate (PDF) which contains a license key
that can be entered into the NetModem Server to unlock the 30 day limitation.
The license key determines the number of COM ports that can be shared
on the server. Additional shared ports can be added to an existing license
as your needs increase.
To update your NetModem License Key, do the following:
The NetModem Clients never require a license key. The client software is included at no additional charge and can be installed on an unlimited number of PC's.
![]()
19. Uninstalling the NetModem Software
To Uninstall either the NetModem Client or Server software do the following:
A restart of Windows is not required after installing or uninstalling
the NetModem Server or Client software.
NetModem configuration settings and Server activity logs are preserved
in case of a later NetModem reinstall.
Copyright © 1997-2010 PC Micro Systems, Inc. and Odin Software. Portions Copyright © 1997-2010 Microsoft Corporation. Portions Copyright © 1998-2010 The OpenSSL Project. This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.openssl.org). This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). This product includes software written by Tim Hudson (tjh@cryptsoft.com). All Rights Reserved. Windows and Microsoft are Trademarks or Registered Trademarks of Microsoft Corporation. WinFax and pcAnywhere are Trademarks or Registered Trademarks of Symantec. Citrix, Metaframe and XenApp are Trademarks or Registered Trademarks of Citrix Systems, Inc. RC2 and RC4 are Trademarks of RSA Security, Inc. VMware is a Trademark or Registered Trademark of VMware, Inc. NetModem and PC Micro are Trademarks or Registered Trademarks of PC Micro Systems, Inc.