Let's first take a look at examples FortLM node-locked and network-floating license file. The license files are human readable text files.

Node-Locked license

A Node-Locked license is tied to a computer hardware ID (the Media Access Control (MAC) address of a Network Interface Card (NIC)). Your customers are permitted to use the software only on the licensed computers. An example node-locked license is given below:

FEATURE=Feature1,Feature2;
VERSION=1; HOSTID=02004C4F4F50;
START=2011-04-11; EXPIRE=2012-05-10;
UUID=07cb4840-9f4f-4a7e-9d22-27070d51b78d;

If the hostID is set to '000000000000' (twelve 0s), the hostID checking is not enforced and the license file can be used on any computer,

Shared Network-Floating License

A network-floating license offers the following features:

1) It lets your customers check out licenses from a license server administered centrally.
Checking out licenses from a central location, instead of locking licenses to specific computers, greatly simplifies system administration and licenses tracking, especially for your customers who own multiple licenses of your applications.

2) It enables license sharing via concurrent-use model
Network-Floating licenses are counted in terms of concurrent users. For example several infrequent users of your software can share a single license.

3) It enables license sharing remotely
It lets your customers share licenses across facilities remotely. If there is firewall you can configure a SSH tunnel.

An example network-floating license that can serve 100 concurrent users (SEATS=100) is given below:

SERVER=192.168.2.2;PORT=12345;IP=v4;ANYIF=yes;
FEATURE=DEMO,FULL;
VERSION=1; HOSTID=001EE5E3020D;
START=2010-02-01; EXPIRE=2011-12-30;
SEATS=100;UUID=885ef8ed-8e08-4e2f-9932-1ed82a6c81db;


FortLM Redundant Network-floating License

You can set up a three-redundant license server configuration.

At any time if there are at least two license servers up and running, the client application can check out license successfully. This provides some level of fault tolerance but involves more complicated setup.

SERVER1=192.168.110.143 23456 000C297FC52F IPv4;
SERVER2=192.168.110.129 23456 000C29932AAD IPv4;
SERVER3=192.168.2.16 23456 9CB70D1F305B IPv4;
RESERVED= 02004c4f4f50,101E6884EFF6;
FEATURE=SilverCreek;
VERSION=1;
START=2010-02-01; EXPIRE=2019-12-30;
SEATS=4;UUID=101201120030AAA;
HOSTID=000C29932AAD,9CB70D1F305B,000C297FC52F;

Note the HOSTID= field must contain all three hostIDs (separated by comma) of the servers that will serve licenses.

The first three lines must be:
SERVER1=hostname portno hostID IPv4 | IPv6;
SERVER2=hostname portno hostID IPv4 | IPv6;
SERVER3=hostname portno hostID IPv4 | IPv6;

FortLM License Format and Syntax:

FortLM license file is a simple text file that contains a set of of keyword=value pairs that control licensing rules. Each keyword=value pair must end with a semicolon ';'. Each  keyword=value pair must not span over multiple lines. Additionally, there can't be any space characters in front of the "=", that is, you must use "HOSTID=X;" (OK), not "HOSTID = X;'( Wrong)"

The allowed keywords are listed in the table below.

Key-Word

Type

Used-By

Notes

HOSTID=

Required

All

A MAC address or a user defined ID

SERVER=

Required

Network

License server host name or IP address

SERVER1=

Only
Required
for

Redundant
Server
Confg

Hostname/IP portno hostID IPv4(or IPv6)

 

SERVER2=

 

Only
Required
for

 

Redundant
Server
Confg

 

Hostname/IP portno hostID IPv4(or IPv6)

 

SERVER3=

 

Only
Required
for

 

Redundant
Server
Confg

 

Hostname/IP portno hostID IPv4(or IPv6)

PORT=

Required

Network

License server listening port

SEATS=

Required

Network

The number of licenses (licensed seats)

IP=

Optional

Network

IP version(v4 or v6), default v4

ANYIF=

Optional

Network

Listening on all interfaces flag.
(yes or no), default 'yes'

START= Required All License start date. Format: YYYY-MM-DD. For example: 2011-02-01
EXPIRE= Required All License expiration date. Format: YYYY-MM-DD. For example: 2011-02-01

Using "0-0-0" makes it a permanent license file.

UUID=

Required

All

Used as Serial Numbers for license tracking purpose. On Windows and Linux, use command 'uuidgen' to generate those universal unique resource IDs.

FEATURE=

Optional

All

A list of feature names separated by comma. This is needed only if you want to restrict access based on features.

VERSION=

Optional

All

A list of version numbers separated by comma.

This is needed only if you want to restrict access based on version numbers. A version number is a string in the form of "major.minor.patch". For example, "1", "1.2", "1.0.0", "2.0.1", etc. If "1" is specified in the license file, then all 1.x.x releases are allowed. If "1.0" is specified in the license file, then all 1.0.x releases are allowed. If "1.0.1" is specified in the license file, then only 1.0.1 release is allowed.

RESERVED=

Optional

Network

A list of hostIDs that will have licenses reserved for checking out. Use  the FortLM command 'champid -r'  to retrieve it.

SIGNATURE=

Required

All

Generated using FortLM utility 'champsign'