FlexNet Licenses Explained
Let us suppose you have received a 2-user license for a module. Normally you will have obtained a floating license, meaning that you will be able to use the module from any machine, and two users can be busy with it at the same time.
Server side: The License Manager Daemon
To be able to enforce the license, there must be a piece of software somewhere that keeps track of who is using the module. That is the License Manager Daemon (LMD). The LMD can run on any machine, also on machines that you will never use the module itself on. Good candidates are stable UNIX servers.
When the LMD is started, it looks at a file containing the information about what should be supported. This file is called the License File. Actually, the LMD can only be started on the machine indicated in the license file. The license file could look like this:
SERVER licserv 000347e8b845
DAEMON dgbld /apps/opendtect/4.4.0/bin/lux64/lm.dgb/dgbld
FEATURE dTect dgbld 4.400 1-jan-2013 2 6592FDC619EA DUP_GROUP=D
FEATURE dTectDS dgbld 4.400 1-jan-2013 2 011D5153D870 DUP_GROUP=D
The first line tells us that the LMD must be started on the machine
licserv, with FlexNet ID
000347e8b845. The second line is interesting for the LMD only but then you see two actual license
FEATURE lines (
dTectDS). These licenses are valid for versions 4.4 and lower, until the 1st of January 2013, for two users (
4.400 1-jan-2013 2).
The Client side: Your program
Now let's look at the machine that you run your software on. The program will at some point in time need to check whether there is a license for what you are trying to do. For this, the program looks at the same license file. It sees that it has to contact the machine 'licserv' to ask for permission. The LMD keeps track of the number of users already using the license feature. If a license is granted, your program will go on, otherwise you'll get an error message.
In some cases the software will never be used other than on a certain machine. In that case a node-locked license can be issued. For such a license you do not need to start a license manager daemon - an unlimited number of users can use the module at the same time provided they work on that particular machine. A special case is the unlimited demo license, which grants unlimited access for any number of users on any machine. It goes without saying that this kind of license is always for short periods.
For the above schemes to work, the license server or the running machine must be uniquely identified. Therefore, you will be asked to provide a unique host ID and a hostname when you want to obtain a license. Different operating systems require different ways to obtain this information:
- Windows: On windows, there is a FlexNet utility that delivers both in a simple file that can be sent by e-mail. It is delivered together with commercial plugins so you need to install one of those first. From the Start menu, select Programs-OpendTect-License Manager Tools. Select the tab 'System Settings'. Then push the 'Save HOSTID Info to a File' button
- UNIX: The hostname is obtained with the unix command hostname. The host ID differs per UNIX flavor, but can always be obtained by the 'lmhostid' tool. This tool is delivered with OpendTect, and can be run from the Utitlities-Batch Programs dialog.
If you need to obtain the host ID before OpendTect is installed:
- Windows: Open a 'command prompt' (For example, by running 'cmd') and issue a command like:
ipconfig /all > c:\Temp\ipcfg.txtYou can send ipcfg.txt or look for the 'Physical address'
- Linux and Mac OS X: Run
/sbin/ifconfigin a terminal. On Linux look for
HWAddr, on Mac
ether. You want the MAC address, looking like
xx:xx:xx:xx:xx:xx- that's 6 groups of 2 hex numbers. Example:
00:1C:C0:38:22:F1. Usually the first one reported is the main card, in doubt you can provide all
- Solaris: Run
If for some reason one of these commands does not work: we need the MAC address of the main network card. Sending the IP address of a machine is never helpful.
Conclusion (Manager's summary)
The FlexNet license system is based upon internet technology. Therefore you can run your software on any machine, using any operating system, to get licenses from any other machine regardless of operating system or physical location. Thus, a Linux license server in Houston can manage the licenses for Windows, Linux and Mac OS X machines in Houston, Caracas and Paris. The only restriction is the number of users actually using the 'feature' at a certain time, but that is what you pay for.
For more information, see FlexNet Licensing End User Guide.
Licensing and Host ID's
OpendTect uses FlexNet to manage its licensing. There are two main types of license:
- Node-locked: The license file is tied directly to a specific client machine (or selection of machines) through its ‘HostID’. This option is popular for laptops and for single-user desktop setups. Installation is very simple.
- Floating License: The license file is generated for, and tied to a dedicated server via its ‘HostID’. The license manager on the server then issues licenses to client machines. This option is more suited for multiple users. Installation can be more involved.
In order to generate a license, we need the HostID of the machine or server, depending on license type:
- If Server-based (floating) license
- Server (Host) Name
- Server (Host) ID
- If node-locked license
- Host ID
To discover the HostID:
- OpendTect Pro (all platforms): Utilities > Installation > Licenses > Show HostID…
Note: Licenses > Show HostID… does not appear under the Utilities > Installation… options in the GPL version. You will have to install OpendTect Pro to access this utility.
For additional information (including alternate methods of accessing the HostID), please refer to the FlexNet Licensing End User Guide.
We stimulate research and education by allowing Universities to use OpendTect Pro and the commercial plugins completely free-of-charge for education and R&D purposes. Currently more than 4000 academic licenses are used by over 400 universities worldwide to teach the next generation.
To obtain an Academic License
- The Hostname & Host ID of the computer that will be used
- The Number of simultaneous users.
An Academic license can be used for academic purposes but not for commercial exploitation. In return dGB and the software should be acknowledged where appropriate and relevant research results should be shared when possible.