License Management

The JOIN DHCP server uses Globetrotter's FLEXlm(TM) license manager to control the number of clients it is allowed to service. This appendix describes how JOIN works with FLEXlm.


How does JOIN use FLEXlm?

When you purchase the JOIN server a license key is sent to you. The license key specifies the number of IP addresses the server can give out. Once started, the DHCP server will automatically contact the license manager and check out a single license for all the active IP addresses in its database. The server does not check the license for expired addresses. During normal operations, the JOIN server contacts the license manager only once an hour to insure the license has not been exceeded.

If the JOIN server discovers the license address limit has been exceeded (i.e., more addresses than allowed), no NEW addresses are assigned. Addresses that are already assigned are renewed to avoid disrupting service to clients. When the license number has been exceeded, instead of checking license manager every hour, the JOIN server checks with the license manager for each DHCP client request. When the number of active leases falls below the license limit, new addresses can be granted again and the server reverts back to checking the license manager once an hour.

The server does not strictly enforce the license limit. Instead, you are given an `overdraft' limit of 10% of your licensed nodes. For example, if you have a license for 1000 nodes then the overdraft limit is 100. This allows you to purchase a new license without having the users denied addresses immediately once the quota is reached. This is also a good time to send a USR2 signal to the server to free up addresses that have expired within the last hour. When the server starts using overdrafts, it'll start displaying messages on the console about the overdraft condition.

When the server is stopped, either through a `kill' signal or a system shutdown, all licenses are released. When the server restarts, it will re-acquire the license for all currently leased, non-expired addresses.


FLEXlm Questions and Answers

Where is the license file?

The license file used by the license manager is, by default, /usr/local/flexlm/licenses/license.dat. Typically, you do not need to touch this file unless you are upgrading to a new license.

If you need to move the license file, define the environment variable LM_LICENSE_FILE to point to the directory where license.dat is located.

What if I am using FLEXlm already for some other software?

If FLEXlm is already running, you may be able to add JOIN's license entry to your existing license.dat file. A complete license.dat file with a valid license key is located in the JOIN directory (/opt/join). Take the `dhcp_lease' entry from this file and put it in your existing license.dat.

How do I start the FLEXlm license manager?

To start the FLEXlm license manager, enter

# /opt/join/dhcp_startup
This script checks to see if the license manager is running. If it is not, the script will start the license manager before starting the DHCP server.

What if I plan to run multiple DHCP servers?

If you plan to run multiple DHCP servers at your site, you have two alternatives for setting up your license management:

  1. Run a single license manager for all your DHCP servers
  2. Run a license manager on each DHCP server

    Single License Manager

    Using this option, you can have multiple DHCP servers talking to a single license manager, sharing the same license database. For example, suppose you bought a license for 2500 nodes and you want to use four DHCP servers at your site. Using this option, a single license manager is set up to handle 2500 licenses. Each of the four DHCP servers will communicate with the license manager. There is no limit as to how many addresses each server can hand out as long as the combined total of all four servers is less than or equal to 2500.

    If you received a license for a single license manager, simply follow these instructions to setup the correct licensing environment:

    1. Use the standard procedure to install JOIN on all machines you want to run DHCP.
    2. On the primary machine (the one with the hostid submitted by you), follow the instructions described in "FLEXlm License Key'' to install the new license.
    3. Start the license manager and the JOIN daemon by executing dhcp_startup.
    4. On all your secondary machines, replace the demo license.dat with the license.dat of the primary machine created in Step 2. Do not make any changes to license.dat for your secondary machines.
    5. Start the JOIN daemon on your secondary machines by executing joind instead of dhcp_startup.
      Note: There is no need to start the license manager. The JOIN daemon will query the license manager on the primary machine for licenses.

    Multiple License Managers

    You can also run a license manager on each DHCP server machine. Again, suppose you purchased a 2500 node license for four DHCP servers. Since each server has its own license manager, each server operates in standalone mode. Each license manager works independently of each other and the license database is not shared. Consequently, you have to decide ahead of time approximately how many nodes each of the four servers is supposed to handle. In our example, we could divide licenses among the four servers as follow: 600, 600, 600 and 700 nodes (total = 2500 nodes).

    If you received multiple license keys, follow these instructions to setup the correct licensing environment:

    1. Use the standard procedure to install JOIN on all machines you want to run DHCP.
    2. Follow the steps described in "FLEXlm License Key'' to install a new license on each machine.
    3. On all your DHCP server machines, start the license manager and the JOIN daemon by executing dhcp_startup.

    What is lmutil?

    The lmutil program shipped with JOIN allows the user to interact with the FLEXlm license manager directly. The program provides a number of different functions depending the option specified.

    Two useful operations are:

    lmutil lmstat -a display all the checked out licenses
    lmutil lmdown shutdown the license manager

    For more information on lmutil, run lmutil without any parameters. A brief help message is displayed.


    For more information about FLEXlm

    For more information about FLEXlm, refer to the website http://www.globetrotter.com, where the FLEXlm End User Manual is available on-line.


    Last Modified: 11:33am , November 11, 1996