DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Configuring an Address Allocation Server (AAS)

Configuring an Address Allocation Server (AAS)

The Address Allocation Server provides an IP address allocation service to other network services. ``Example uses of the Address Allocation Server'' shows how DHCP servers and PPP remote access servers can use an AAS server to obtain IP addresses that they can assign to their clients.

Example uses of the Address Allocation Server

The AAS allocates and reserves addresses for a specific period of time. It offers the following advantages to you as a network administrator:

SCO AAS provides the Address Allocation Manager for administering the AAS service.

How the SCO Address Allocation Server works

The Address Allocation Server maintains pools of IP addresses and responds to requests from other services, such as DHCP, for an address from a specific pool. A request can specify a single address, a range of addresses or a preferred address. Requesters can also specify that a client receive its previous address. If the request does not specify any address, the AAS allocates the least recently used address from the address pool.

Before responding to the address request, the AAS reserves the address for the duration specified by the requesting service. The AAS will not reallocate the address until the requesting service informs it that it has released or expired the address. The AAS will renew the lease if the same service requests the same address before the original lease expires.


NOTE: It is the responsibility of the requesting service (such as DHCP or PPP) to release or expire addresses. You should only force the AAS to release an address if a service has released or expired it without the knowledge of the AAS.

The AAS can be used by services on the same host or by services running on other hosts. Local requests are made over a UNIX domain socket which is secured by permissions. The address server provides password authentication for services requesting address allocation service over a TCP connection.

You configure the address server with the Address Allocation Manager. This graphical utility allows you to set server parameters and define address pools. For more information, see ``The Address Allocation Manager interface''.

The Address Allocation Manager also allows you to query the current allocation of an address pool or a range of addresses. You can also immediately release an address from its lease or disable an address, which prevents the address from being allocated or renewed if it is presently allocated. ``Address state transitions in the Address Allocation Server'' shows the state transition diagram for addresses that are maintained by the Address Allocation Server.

Address state transitions in the Address Allocation Server

Transitions shown by solid lines are performed automatically by the Address Allocation Server: making addresses expire at the end of their leases, and allocating unused, expired and released addresses for use.

Transitions shown by dashed lines are changes that you can make using the Address Allocation Manager: disabling and re-enabling addresses, and releasing addresses for use before their leases have expired. See ``Administering the Address Allocation Server'' for more information on how to perform these tasks.

Address database

The address database contains information about the addresses currently allocated by the AAS. The address server maintains this database in memory and records changes to it in a transaction log, which it stores on disk. At startup, the address server rebuilds the address database from the transaction log. When the transaction log reaches the ``database compression size'' (see ``AAS configuration database'') the address server compresses the transaction log by writing a new file containing the current allocation information.

The address database contains the following information about each allocated address:

At the ``checkpoint interval'', the address server constructs a transaction log which represents the current allocation information and stores this log as a checkpoint file. The address server rebuilds the address database with the most recent checkpoint file if the current transaction log is lost or corrupted. The checkpoint interval along with the number and location of the checkpoint files are configurable parameters. See ``The Address Allocation Manager interface''.

AAS configuration database

The AAS configuration database contains server parameters and the definitions of address pools. An address pool entry consists of a pool name and either a list or range of IP addresses. Although this file format supports other types of addresses besides IP addresses, AAS only supports IP version 4 address types at this time.

For instructions on configuring address pools and server parameters, see ``Configuring address pools'' and ``Configuring the address server''.

The Address Allocation Manager interface

You can start the Address Allocation Manager in the following ways:

For more information on using SCOadmin managers, see ``Administering your system with SCOadmin''.

Depending upon the selection that you make from the View menu, the main screen of the Address Allocation Manager shows the addresses that are currently configured in each pool, the allocation status of addresses in each pool, or the allocation status of addresses in each pool according to the services that are using the AAS server.

Use View -> Expand to examine the complete details for a selected list entry, or use View -> Collapse to display just its name and description. You can also expand and collapse individual entries by double-clicking on them. You can expand and collapse all entries using View -> Expand All and View -> Collapse All.

With the Address Allocation Manager, you can:

Configuring address pools

You can use the Address Allocation Manager to define pools of addresses for individual subnets or your entire network.


WARNING: Do not define addresses as existing in more than one pool.

You can also modify the addresses defined for existing pools, and change the name of the pools. For example, if you set up an initial address pool for the purpose of testing the address server, you could put this pool into use by renaming the pool. You can also delete address pools, if necessary.

Defining an address pool

To define a new address pool using the Address Allocation Manager:

  1. Select View -> Pool Definition.

  2. Select Pools -> Add.

  3. Enter the name of the address pool.

  4. Define the addresses in the pool by clicking on Add. Select whether you are entering a single address or a range of addresses. Enter the address or range of addresses in dot notation, and click on OK. Repeat this step for all the addresses in the pool.

  5. If you need to correct or delete an entry, select it from the list of addresses and click on Modify or Delete.

  6. Click on OK when you have completed defining the address pool.

Modifying an address pool

To modify an address pool using the Address Allocation Manager:

  1. Select View -> Pool Definition.

  2. Select the address pool from those listed, and select Pools -> Modify.

  3. To add an address or an address range, click on Add.

    To change an address or an address range, select it from those listed, and click on Modify.

    To delete an address or an address range, select it from those listed, and click on Delete.


    WARNING: If you delete addresses that are currently allocated, this may lead to inconsistencies in the AAS database.

  4. Click on OK when you have completed your changes to the address pool.

Renaming an address pool

To change the name of an address pool using the Address Allocation Manager:

  1. Select View -> Pool Definition.

  2. Select the address pool from those listed, and select Pools -> Rename.

  3. Enter the new pool name and click on OK.

Deleting an address pool

To delete an address pool using the Address Allocation Manager:

  1. Select View -> Pool Definition.

  2. Select the address pool you wish to delete, and select Pools -> Delete.

  3. Click on OK when asked to confirm the deletion.


WARNING: If you delete pools containing addresses that are currently allocated, this may lead to inconsistencies in the AAS database.

Administering the Address Allocation Server

The address server requires minimal administration. Once you have set up the address pools and established the server parameters, the server automatically allocates addresses when requested to do so by other network services such as DHCP. You may, however, wish to find out which addresses in a certain pool are in use or for how long a particular address is leased or what address was allocated to a particular client. This type of information is available using the AAS query feature.

The administrative tasks which you may need to perform involve releasing addresses from leases, disabling addresses from being subsequently re-allocated, re-enabling addresses which were previously disabled, and reconfiguring the server. See ``Releasing, disabling, and re-enabling addresses'' and ``Configuring the address server'' for more information.

Querying pool definitions and address allocation

To query the addresses defined for address pools using the Address Allocation Manager, select View -> Pool Definition. When the entry for a pool is expanded, it shows the addresses that are defined for it.

To query the status of address allocation in the address pools using the Address Allocation Manager, select View -> Address Allocation. When the entry for a pool is expanded, each address pool is listed along with status information about the addresses in the pool.

To query the status of service allocation in the address pools using the Address Allocation Manager, select View -> Service Allocation. When the entry for a pool and service is expanded, each address pool is listed along with the addresses currently allocated according to service. No details are shown for a pool if it currently does not have any addresses allocated to services.


NOTE: Addresses which have been disabled are shown by a cross placed next to the status.

The display of an address pool's current allocation is refreshed periodically. You can control the refresh interval by selecting Options -> Set Auto Refresh. To see the current allocation information, select Options -> Refresh Now.

Releasing, disabling, and re-enabling addresses

You can immediately release an allocated address from its lease if a service has released or expired the address but did not inform the AAS. This will free up the address for use by other services.


WARNING: Do not release an address that is currently in use. This could lead to two or more hosts being configured with the same address at the same time.

If you disable an address, this makes it unavailable for allocation. If the address is currently allocated, it will become unavailable for re-allocation at the conclusion of its current lease. For example, if you remove an address from a pool while the address is currently allocated, disable the address to prevent renewal of the address's lease and avoid disrupting the client currently using the address.

An address that you disable will remain in that state until you subsequently re-enable it.

To release, disable, or enable an address using the Address Allocation Manager:

  1. Select Pools -> Control.

  2. Select the name of the pool that defines the address whose state you want to change.

  3. Select the address from those listed for the pool. If an address is to be released, its status should be shown as ``ALLOCATED''. If it is to be enabled, its status should be shown as ``DISABLED''.

  4. Select the appropriate action Release, Disable, or Enable.

  5. Click on OK to change the state of the address.

Configuring the address server

To change the configuration of the AAS server, select Server -> Edit Server Parameters. Enter the following information for the server:


Database directory
The directory where the address server stores the transaction log.

Database compression size (bytes)
The size of the transaction log at which the address server will compress it so that it contains only current allocation information.

Checkpoint directory
The directory where AAS stores checkpoint files.

Checkpoint interval (seconds)
The time interval in seconds between checkpoints at which the address server creates a new checkpoint file from the transaction log.

Number of checkpoints
The maximum number of recent checkpoint files retained by the address server.

Password
Passwords are used for authentication of network services running on other hosts requesting address allocation service. There can be any number of passwords.

To add a password, enter it in the field, and click on Add.

To delete a password, enter it in the field, and click on Delete.

To verify the existence of a password in the database, enter it in the field, and click on Verify.


Click on OK to store the changed configuration.

To restart the address server and implement any changes you made to its configuration parameters, select Server -> Reconfigure.
If you want to stop or start the address server at any time, select Server -> Stop Server or Server -> Start Server.

Resetting the state of the AAS database

To display information about the transaction log, select Database -> View Transaction Log. This shows the pathname of the log file, its size in bytes, and the times when it was last modified or accessed.

To display the names and times of the checkpoint files, select Database -> View Checkpoint Files.

If the transaction log has become corrupted, and the server will not start, select Database -> Delete Transaction Log, and click on OK when asked to confirm. Select Server -> Start Server to restart the server. See the warning below.

If the server will not start from the most recent checkpoint file, select Database -> Delete Checkpoint File, select the most recent entry, and then click on OK. Click on OK when asked to confirm. Select Server -> Start Server to restart the server. See the warning below.


WARNING: These procedures reset the state of the AAS database to that stored in a checkpoint file. This may result in inconsistencies in the state of addresses in the AAS database. If an address is shown as allocated, but you know that it has expired or was released, release it as described in ``Releasing, disabling, and re-enabling addresses''.

If an address is shown as unused, expired, or released, but you know that it is currently allocated, disable it and then release and re-enable it when the client has finished with the address.


If necessary, you can delete the transaction log and all checkpoint files by selecting Database -> Delete All.


WARNING: This will completely destroy all information about allocated addresses held in the AAS database.

Troubleshooting the Address Allocation Server

If the AAS is not giving out addresses, a diagnostic message will be written to the syslog file. The most likely problem is running out of space in the filesystem where the transaction log is stored. Solutions to this are:

A potential configuration problem may occur if the maximum size is made smaller than the minimum amount of space required to store the information for the addresses. If this is the case, a compression will be attempted every time a request is processed (since the database will always be too large).

It is possible for the checkpoint area to fill up if it is on the same filesystem as the database transaction log. If a checkpoint file cannot be written due to space problems, the server will issue a warning message but continue to run. You can adjust the frequency of checkpointing and the number of checkpoint files to help overcome this problem.

For more about AAS

To obtain more information about AAS, see the following manual pages:

Manual page Information provided
aasd(1Mtcp) Address Allocation Server daemon
aasd.conf(4tcp) Address Allocation Server database
dhcpd(1Mtcp) Dynamic Host Configuration Protocol daemon


© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 22 April 2004