NetworkCoreAddress assignment

ISC DHCP server lease database

dhcpd.leases keeps every lease change as an appended declaration, so one address can map to different clients at different times; the last entry is current.

01Location

  • DBDIR/dhcpd.leases (the directory is set when the server is built or configured)
  • DBDIR/dhcpd.leases~ , the previous copy left when the file is rewritten
  • A separate file for a second server instance started with the -lf option

02Questions it answers

  • Which client held a given IP address at a given moment?
  • Which MAC address, client identifier and host name did that client present?
  • In what binding state was the lease, and when did the current state end?

03Format and versions

FormatFree-form text of declarations: lease <ip-address> { starts ...; ends ...; cltt ...; binding state ...; hardware ethernet ...; uid ...; client-hostname "..."; }. The file is log-structured; when several declarations exist for one lease, the last one is in effect.
Applies toAs documented in the dhcpd.leases(5) manual page of the ISC DHCP server. The project's DHCPv4 and DHCPv6 lease formats differ, and other DHCP servers use other stores.

04Key fields

FieldWhat it tells you
lease <ip-address>The single IP address the declaration describes.
starts / endsStart and end of the lease; ends is when the current binding state expires.
clttThe client's last transaction time.
binding state / next binding stateWithout failover: active, free or abandoned. The next state is the one the lease moves to when the current state expires.
hardwareHardware type and MAC address of the interface on which the lease will be used.
uidThe client identifier, if the client sent one. Normally an ARP type followed by the MAC address, but not required to be.
client-hostnameThe host name sent by the client in the host-name option. Most clients send it; many specialised devices do not.
tstp, tsfp, atsfpFailover timestamps; present only when the failover protocol is used.

05Timestamps

FieldEncodingNote
starts, ends, clttweekday YYYY/MM/DD HH:MM:SS in UTC (default db-time-format)The manual states that lease times are in UTC, not local time. The weekday is a number from 0 (Sunday) to 6 and is ignored on input.
starts, ends, cltt with db-time-format localepoch <seconds>; # human-readable commentThe epoch value follows the server's clock. The comment shows the time in the configured zone as written and is meant for people only.
neverkeywordA lease that will not expire carries never instead of a date.

Decode raw values with the Timestamp decoder and convert local wall-clock times with the Local time to UTC.

06Examination workflow

  1. Preserve dhcpd.leases and dhcpd.leases~ together with dhcpd.conf, and note the file times. The rewrite process replaces the file from time to time.
  2. Read the file in order. For a given address, a later declaration supersedes an earlier one, but the earlier ones show the history only until the next rewrite.
  3. Convert the UTC lease times to the time base of the log you are matching, and select the declaration whose starts and ends contain the moment of interest. Check its binding state: free and abandoned declarations also carry times.
  4. Record the MAC address, client identifier and host name together, and compare them with the switch, wireless controller or asset inventory.
  5. State the result as 'at this time the address was leased to this client', not as a statement about who used the device.

07Interpretation pitfalls

  • An address maps to a host only for the span of a lease. The same address in a log from the morning and one from the afternoon can belong to different clients.
  • The file is rewritten from time to time, so old, expired declarations may be gone. An address missing from the file does not prove it was never leased.
  • client-hostname and uid are supplied by the client. A host name can be changed, and a MAC address can be set by software.
  • Devices with static addresses and servers other than ISC dhcpd leave no record here. A different DHCP service may keep its own log.

09Sources

  1. ISC DHCP — dhcpd.leases(5) manual page Internet Systems Consortium (GitHub) · checked 2026-10-22

Contact and service requests

Contact us about examination services related to this page, support for expert witnesses, or collaboration. Please do not attach evidence files or personal data to your email.