dhcpdb(1M) dhcpdb(1M) NAME dhcpdb - DHCP database manager SYNOPSIS /usr/sbin/dhcpdb [ -a [ -r] ] | [ -d ] | [ -u ] | [ -p ] [ -X ] [ -C Client_id ] [ -M Mac_address ] [ -I IP_address ] [ -H hostname ] [ -T lease_in_seconds ] [ -f dhcp_database ] /usr/sbin/dhcpdb [ -D ] | [ -L ] [ -X ] [ -f dhcp_database ] DESCRIPTION dhcpdb is a database manager for the NDBM database used by the DHCP server to store address leases. It provides a command line interface to add, delete, update database entries or print the DHCP database. In general, it is not necessary to modify or print this database, but it may be a useful tool to analyse lease offerings and to specify a STATIC/INFINITE lease time. The dhcp_bootp server consults the database each time it services a client request. If the server finds a matching client entry in the database it will try to provide the same IP address lease to client as found in the database. The DHCP configuration files, located by default in the /f3/var/dhcp/config/f1 directory, determine the parameters that are returned to the client. In addition, the dhcpdb command can be used to override with a STATIC or an INFINITE lease time for a particular client. The tool can be used either in entry mode to manipulate individual entries or in file mode. In file mode the entire contents of the database can be dumped to a file or loaded from a file. COMMAND LINE OPTIONS In the entry mode options can be used to add (replace), delete, update a leased address entry, or print an entry using a key. The key can be either a client identifier, MAC (interface) address, leased IP address, or a hostname. The Client Identifier is an opaque string that is specified by the client and is not interpreted by the server. A dump of the "dhcpdb" database may help in finding out what a particular client uses as its client identifier. SGI systems typically use the value 1 followed by the MAC address, for example a client identifier may be expressesed as a colon separated string of bytes in hexadecimal as "1:a:b:c:d:e:f". -a Add an entry. (The -r option allows an existing entry to be replaced or a new entry is added if the specified entry does not exist.) The client identifier, Mac address, IP address, and hostname must be specified. If a record is being replaced these values must be specified to be the same as existing values in the database. The lease time should also be specified. Specifying a lease time value does not change the lease time already provided to a client, nor does it specify the lease time that will be provided to the client, the next time the client makes a request. The /var/dhcp/config/config.* files determine the lease time that will be provided (except for the special cases of a STATIC lease and an INFINITE lease time). -d Delete an entry. A single key in the form of client identifier, Mac address, IP address, or hostname should be specified. -u Update lease time. Specify a key and the lease time using the -T option to find leases expiring within a specified time constraint. Lease times can be changed to the two special values of STATIC and INFINITE if specified, and this change will take effect the next time the client makes a DHCP request. -p Print an entry for the given key. This can also be used to print leases expiring in more or less than a specified number of seconds. -X Specifies that the client identifier is a colon separated string of bytes in hexadecimal in the specified input or in the output. If this option is not specified the client identifier is assumed to be a string. -C Cid Specifies the client identifier key. The client identifier is an opaque string specified by the client in a DHCP request. -M Mac_address Specifies the Mac (physical interface) address as a string of bytes in hexadecimal, separated by colons. -H Hostname This is the hostname (usually fully qualified) as it appears in the database. -I IP address Specifies the IP address as a dotted decimal address string. -T lease_seconds|absolute time Specifies the lease time in seconds. With the -p option the lease time can be specified to print the leases that expire in less than or greater than a given number of seconds from the current time. For example -p -T <100, and -p -T >100 prints leases expiring in less than 100 seconds and more than or equal to 100 seconds respectively. The format -T "sec[0-61] min[0-59] hour[0-23] mday[1-31] mon[0-11] years_since_1900" can also be used to specify the time when adding or updating an entry. For example -T "10 12 20 18 4 98" means the lease should expire on May 18 21:12:10 1998. The format is the same as is used with the mktime(3C) call. Alternately -T seconds can be used to specify the time in seconds from 00:00:00 UTC, January 1, 1970 (see time(2)). For example in the particular case discussed above the option would be specified as -T 895551130. With the -a and -u options the lease can be specified as INF for an infinite lease or as STATIC for a static (infinite) lease. For example, to make an existing lease for address 10.0.10.1 static the command is dhcpdb -I 10.0.10.1 -u -T STATIC. -f Specifies an alternate database to use. The default is /var/dhcp/etherToIP. File mode usage In the file mode the command can be used to dump the entire database to a file that can be subsequently loaded into the database. -D Dumps the database to the standard output. The file consists of fields separated by tabs and includes the client identifier, Mac address, IP address, hostname, and the lease time. It is usually necessary to use the -X option with the -D option to specify that the client identifier should be dumped as a colon separated string of hexadecimal values. -L Loads the database from the standard input. It is usually necessary to use the -X option with the -L option to specify that the client identifier is specified as a colon separated string of hexadecimal values. NOTES The /etc/ethers and /etc/hosts are not updated when the DHCP /var/dhcp/etherToIP database is updated. FILES /var/dhcp/etherToIP.lock /var/dhcp/etherToIP.pag /var/dhcp/etherToIP.dir SEE ALSO dhcp_bootp(1M) ProclaimServerMgr(1M), Page 3