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