Applies To | |||
Product(s): | All | ||
Version(s): | 08.05.XX.XX and prior | ||
Environment: | N/A | ||
Area: | N/A | ||
Subarea: | N/A | ||
Original Author: | Bentley Technical Support Group | ||
This document provides troubleshooting information for pre-XM client applications that are licensed with a SELECTserver V8 or SELECTserver Gateway.
These messages represent the various errors that appear on client machines when a licensing problem occurs. The messages are specific and are a good tool in diagnosing the problem. When calling support for licensing help, please note the exact error message received by the client.
For other troubleshooting assistance see Troubleshooting Product Activation for Pre-XM Nodelock or Troubleshooting Product Activation for XM and Higher
No response from license server....unable to query for license
No license usages were found to match your request
The clocks on your machine and the license server are too far apart
A license for this product could not be found
No response from license server...unable to send heartbeat Attempting to free already freed memory...
No response from license server...unable to return license
Your client IP is not known on the license server
Errors when starting the Bentley LMServer Service
--------------------------------------------------------------------------------
SELECTserver licensing uses the TCP/IP protocol to communicate with the server. This message means the IP connection was not successful.
1. If this message appears on only one client machine, start on that machine:
Make sure the local license file is pointing to a valid license server.
For MicroStation/J, it's C:\Bentley\Program\Licensing\msj.lic
For MicroStation V8, it's C:\Program Files\Bentley\Program\Licensing\msv8.lic
SERVER="servername" IPADDRESS="xxx.xxx.xxx.xxx"
Where "servername" is the name of the computer running SELECTserver, and "xxx.xxx.xxx.xxx" is the actual TCP/IP address of the server.
For example: SERVER="XPserver" IPADDRESS="10.0.0.1"
2. If this message appears on all client machines, check the server:
Make sure the Bentley LMServer service is started.
For Windows 2000 or XP:
1. Choose Start > Control Panel > Administrative Tools > Services
2. Double-click Bentley LMServer to display it's properties box.
3. Under Startup type choose Automatic
4. Click the Start button to start the service
5. Click Ok
For Windows NT:
1. Choose Control Panel > Services and highlight Bentley LMServer
2. Click the Startup button
3. Choose Automatic, click Ok
4. Click the Start button - the LMServer service should start
For a Windows 95/98 computer acting as the server:
1. From a DOS command prompt go to the SELECTserver directory
2. Type the following command: lmserver -console
3. You must leave the DOS command prompt running, but the window can be minimized.
3. If the service will not start, check the C:\Program Files\SELECTserver directory for the lmdebug.log.
Open it in Notepad and go to the last entries. These entries will be the most recent. A portion of the entry should be in plain English and should give a clue as to why the service won't start. For instance, if the license file has expired (a common reason why the service won't start), the log will say that "Your Select Subscription expired ......" and will give a date when it expired.
4. If all three items above are functioning properly, there likely is a network or proxy/firewall issue at fault. Some common issues of this type include:
A. Windows XP Service Pack 2:
Service Pack 2 for Windows XP closes down numerous TCP/IP ports including 3998 and 3999, which are needed to make SELECTserver run. If SP2 is installed on the server, these ports need to be reopened. This is done by editing the registry
Copy the text below (beginning with "REGEDIT4") and paste it into Notepad. Then save the file with any file name and a ".reg" extension to the machine that runs SELECTserver. Double click the file and choose "Yes" when asked to confirm the changes to the registry. This will open up the ports SELECTserver needs.
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\ Parameters\FirewallPolicy\DomainProfile]
"DoNotAllowExceptions"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\ Parameters\FirewallPolicy\DomainProfile\GloballyOpenPorts\List]
"3998:TCP"="3998:TCP:*:Enabled:Bentley SELECTserver Licensing"
"3999:TCP"="3999:TCP:*:Enabled:Bentley SELECTserver Administration"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\ Parameters\FirewallPolicy\StandardProfile]
"DisableNotifications"=dword:00000000
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\ Parameters\FirewallPolicy\StandardProfile\GloballyOpenPorts\List]
"3998:TCP"="3998:TCP:*:Enabled:Bentley SELECTserver Licensing"
"3999:TCP"="3999:TCP:*:Enabled:Bentley SELECTserver Administration"
B. McAfee or some other personal firewall software:
When a program attempts to make a TCP/IP connection, these firewall programs assume it's trying to contact the "Internet", and will put up a box asking if you want to allow access. If MicroStation has been put on the firewall's "Blocked" list, the licensing won't work. Find the list of programs in the firewall utility and make sure MicroStation is on the "allowed" list.
C. Basic network TCP/IP issues:
1. Try to "ping" the server name.
Go to Start > Run, type CMD and press Enter. This should open a command prompt.
Once in the command prompt, type this command:
Ping
where is the actual name of the server. If the request times out or is otherwise unsuccessful, this issue will need to be addressed by a network administrator.
2. Test the 3998 port by using Telnet.
Go to Start > Run and type this command
Telnet 3998
where is the actual name of the server.
A blank text screen will appear. If the text screen appears and stays, pressing the Enter key should make an "OK" appear. This means the test is successful. If the text screen immediately disappears, the test failed and the port is blocked. In this case, see the XP SP2 fix above to reopen the port.
D. Proxy client software:
As background information; when using the Winsock Proxy Service within the Microsoft Proxy Server product, TCP/IP sockets communication between clients and servers go through the Proxy Server if the Proxy Client is enabled and the Local Address Table (LAT) does not include the IP address of the server. Communication between Bentley products and SELECTserver should not go through the Proxy Server. To achieve direct communication between Bentley products and SELECTserver, one of the following two solutions may be used. For more information on these solutions, see the Microsoft Proxy Server documentation.
1. Add the IP address of the SELECTserver machine to the LAT table. A file named Msplat.txt file is installed into the Mspclnt directory when installing the Proxy client. The Msplat.txt file contains the Local Address Table (LAT), which defines the IP addresses of your internal network. A central copy of the Msplat.txt file is maintained on the proxy server and is periodically downloaded to each client. Each time a Windows Sockets application on that client attempts to establish a connection to an IP address, the LAT is used to determine whether the IP address is on the internal network, or is external. If the address is internal, the connection is made directly. If the address is external, the connection is made through the Microsoft Proxy Server. For more information on creating and editing the LAT, see the Microsoft Proxy Server documentation.
2. Disable Proxy Server communication between Bentley client software and SELECTserver by using application configuration settings on the client machine. Application configuration settings can be stored in one of two places:
a. In the global client configuration file Mspclnt.ini, located in the WinSock Proxy client installation directory. Mspclnt.ini is periodically updated from the proxy server computer, overwriting the client's old version. Consequently, you can make configuration settings at the proxy server computer and have the settings downloaded automatically to client computers. You should not make configuration settings at specific client computers because the file will be overwritten during the next update.
b. In the Wspcfg.ini file located in a specific client application directory. This file is not overwritten by the proxy server computer. Consequently, you can make configuration settings in this file that apply only to a specific client computer.
For the MicroStation product, a section called ustation (e.g. [ustation]) may be added to either the Mspclnt.ini or the Wspcfg.ini in the MicroStation program directory. The disable=1 entry may be used, which results in direct sockets communications between MicroStation and all Winsock servers, including SELECTserver. The LocalBindTcpPorts=xxx entry may be used to limit bypassing of the proxy server to only those port numbers listed. Note that the default port number used by SELECTserver and associated clients for licensing purposes is 3998. This port number may be overridden using the PORT_SERVER=xxx statement in the SELECTserver configuration file and the PORT=xxx statement in the client license files. For more information on the application configuration settings, see the Microsoft Proxy Server documentation.
This message means that a successful connection was made with the server, but that no licenses were found to be either present or available.
1. Check the user's local license file to make sure the first word, SERVER, is in all capital letters. If it's not, this is the message that appears.
2. If this is a new installation of SELECTserver:
Check to make sure the license.lic file is installed being read properly.
This file should be received in an email from the Bentley Admiinistration Center and should be copied to the SELECTserver directory. By default, that path is C:\Program Files\SELECTserver.
At the server machine, open the SELECTserver Administrative Interface by going to Start > Programs > SELECTserver > Administrative Interface. There are a list of links down the left side of the page. Click on the second one called "License List" and check the Feature column.
If the only Feature is "No Products Licensed Commercial", then License Manager is still reading the test license file delivered with SELECTserver.
If the list of Features is completely blank, this indicates a problem with the contents of the license.lic file.
3. If this is an existing install of SELECTserver that has been working:
Check the Lifetime column (2nd from the left) on the License List page of the Administrative Interface. Confirm the expiration date of the feature you are trying to use. If it's expired, contact the Bentley Administration Center for a new license file.
Also check the client's system clock:
SELECTserver requires that the system clock of the client and server machines be no more than 90 minutes apart.
Check the client's system clock:
1. Make sure it matches that of the server.
2. It's VERY important to check for 4 separate items including the correct time, date, A.M - P.M. setting and time zone. If any of these are wrong, the licensing won't work.
This message indicates a problem on the CLIENT machine. It means that NO local license file was found.
The default location for the local license files are as follows:
For J, it's C:\Bentley\Program\Licensing\msj.lic
For V8, it's C:\Program Files\Bentley\Program\Licensing\msv8.lic
1. If no local license file is present, create one using Notepad and make sure it is pointing to the appropriate server.
There should be only one line in the file.
SERVER="servername" IPADDRESS="xxx.xxx.xxx.xxx"
Where "servername" is the name of the computer running SELECTserver, and "xxx.xxx.xxx.xxx" is the actual TCP/IP address of the server.
For example: SERVER="XPserver" IPADDRESS="10.0.0.1"
2. It may be that the local license file is either in the wrong place or is named incorrectly.
A common problem happens on machines that have both MicroStation J and MicroStation V8 installed. The local license file is sometimes placed in the wrong Bentley\Program\Licensing directory. Remember that the two versions have different default locations. It's very important that these two versions NOT be installed to the same Bentley directory and that the appropriate license file goes into the appropriate licensing directory.
3. If the file is present and appears to have the correct name, confirm that Windows extensions are not hidden and that MicroStation is looking in the right place for the license file.
A. In Windows Explorer, choose Tools > Folder Options > View Tab. See whether "Hide file extensions for known file types" is checked or not. If it is, uncheck it and click OK. Then look at the file listing again. If it has a ".txt" extension or some other error, rename the file so that it matches the name MicroStation is looking for (see #1 above).
B. To see the location and file name MicroStation is looking for, Start MicroStation and take the 15 minute tryout if necessary. Open any file and go to Workspace > Configuration. Check the MS_USERLICENSE variable. Make sure it is pointing to the proper licensing directory on the client computer.
This message is seen while in a MicroStation session and it means that connection to the server has been lost.
1. The Bentley LMServer service may have been stopped or the server may have gone off-line.
Make sure the Bentley LMServer service is started.
For Windows 2000 or XP:
6. Choose Start > Control Panel > Administrative Tools > Services
7. Double-click Bentley LMServer to display it's properties box.
8. Under Startup type choose Automatic
9. Click the Start button to start the service
10. Click Ok
For Windows NT:
5. Choose Control Panel > Services and highlight Bentley LMServer
6. Click the Startup button
7. Choose Automatic, click Ok
8. Click the Start button - the LMServer service should start
For a Windows 95/98 computer acting as the server:
4. From a DOS command prompt go to the selectserver directory
5. Type the following command: lmserver -console
6. You must leave the DOS command prompt running, but the window can be minimized.
2. The SELECTserver license file may have expired. Check the lmdebug log in the SELECTserver directory. If it indicates the license has expired, obtain a new license from the Bentley Administration Center.
3. There could be a network issue with routing, DNS, or WINS or the server has two network adapters. A workaround for this issue is to add the server's IP address in the lmserver.inf file found in the SELECTserver directory.
Example from the lmserver.inf file
#
# LMServer IP Address
# - If the computer you're running LMServer
# has more than one network card in it, the
# application may send the clients the "wrong"
# IP address.
# If this is the case, you can tell the application
# exactly which IP address to use by uncommenting
# and filling out the following line:
#
#SERVER_IP = 255.255.255.255
Remove the pound sign and replace the 255.255.255.255 with your server's IP address. For example: SERVER_IP = 10.0.0.1. Then stop and restart the Bentley LMServer service.
This message is sometimes seen when exiting MicroStation and indicates that the IP connection needed to return the license was not made successfully.
1. The Bentley LMServer service may have been stopped or the server may have gone off-line.
Make sure the Bentley LMServer service is started.
For Windows 2000 or XP:
11. Choose Start > Control Panel > Administrative Tools > Services
12. Double-click Bentley LMServer to display it's properties box.
13. Under Startup type choose Automatic
14. Click the Start button to start the service
15. Click Ok
For Windows NT:
9. Choose Control Panel > Services and highlight Bentley LMServer
10. Click the Startup button
11. Choose Automatic, click Ok
12. Click the Start button - the LMServer service should start
For a Windows 95/98 computer acting as the server:
7. From a DOS command prompt go to the selectserver directory
8. Type the following command: lmserver -console
9. You must leave the DOS command prompt running, but the window can be minimized.
2. There could be a network issue with routing, DNS, or WINS or the server has two network adapters.
A workaround for this issue is to add the server's IP address in the lmserver.inf file found in the SELECTserver directory.
Example from the lmserver.inf file
#
# LMServer IP Address
# - If the computer you're running LMServer
# has more than one network card in it, the
# application may send the clients the "wrong"
# IP address.
# If this is the case, you can tell the application
# exactly which IP address to use by uncommenting
# and filling out the following line:
#
#SERVER_IP = 255.255.255.255
Remove the pound sign and replace the 255.255.255.255 with your server's IP address. For example: SERVER_IP = 10.0.0.1. Then stop and restart the Bentley LMServer service.
This message indicates that restrictions have been made in the client.inf file found in the SELECTserver directory.
Example of the delivered client.inf file:
# LMServer will only communicate with clients enumerated here.
#
# Clients can be added here by DNS name or by IP range,
# but IP ranges are recommended as names take longer to resolve.
#
# Formats:
# NAME = "client_pc" -or-
# NAME = "client_pc.company.com" (wildcards ('*' and '?') are supported in the NAME=)
# COMPUTERCODE = "xxx\xxx"
# IPRANGE = "255.255.255.255" (octet wildcard '*' is supported).
#
#
# On Windows Servers, clients can be added by Windows User Id or
# by the Windows Group Name the clients are a member of.
#
# Formats:
# WINUSER = "DOMAIN\Windows User Id"
# WINGROUP = "Windows Global Group Name"
# WINLOCALGROUP = "Windows Local Group Name"
#
IPRANGE = *.*.*.*
By default there are no restrictions in place. The client.inf file allows the administrator to restrict which clients can communicate with the Bentley License Manager service. This can be done by DNS name, IP range or Windows user/group. If restrictions are implemented in this file and your client computer is not included, you will not be able to obtain a license. Wild cards are supported in the IP range.
Example: The following example will let all computers that have an IP address that starts with 10.0.0 and has any number from 1 to 255 for the last number obtain a license. Any computer that does not have an IP address with in this range will be denied access.
IPRANGE = 10.0.0.*
Errors when starting the Bentley LMServer Service
There are only two main reasons why the service wouldn't start.
1. Because there is no license.lic file in place
2. Because the license.lic file has expired
Both can be confirmed by checking the lmdebug.log file in the SELECTserver directory. If the file isn't there, it needs to be copied into the SELECTserver directory. If the license has expired, contact the Bentley Administration Center.
See Also
Bentley Technical Support KnowledgeBase
Bentley's Technical Support Group requests that you please confine any comments you have on this Wiki entry to this "Comments or Corrections?" section. THANK YOU!