dhcpd
Assign IP addresses to network devices
SYNOPSIS
dhcpd [-4 | -6] [-a interval] [-c directory] [-cf config-file] [-d] [-df pid-file] [-f] [-lf lease-file] [-lfdb lease-fdb-file] [-m no-failover] [-n] [-pf pid-file] [-q] [-t] [-T] [-user user -group group] [-om] [-port ports] [-rv] [interface] [config-file]
PARAMETERS
-4
Operate in IPv4 mode only
-6
Operate in IPv6 mode only
-a interval
Alert interval time in seconds for hardware address changes
-c directory
Directory for configuration files
-cf config-file
Path to configuration file
-d
Foreground mode with verbose logging
-df pid-file
Path to pid file (foreground mode)
-f
Foreground mode
-lf lease-file
Path to DHCP lease database file
-lfdb lease-fdb-file
Path to DHCPv6 fixed address lease database
-m no-failover
Disable failover protocol
-n
Do not daemonize; run in foreground
-pf pid-file
Path to process ID file
-q
Quiet mode; suppress startup messages
-t
Test configuration file syntax
-T
Test configuration with trace output
-user user -group group
Change user/group after startup
-om
One-shot mode; handle one request and exit
-port ports
Specify server/client UDP ports
-rv
Run with vendor option space
DESCRIPTION
The dhcpd command launches the Internet Systems Consortium (ISC) DHCP server daemon, which provides dynamic IP address assignment to clients on a network via the Dynamic Host Configuration Protocol (DHCP). It listens for DHCP requests on specified interfaces and responds with IP addresses, subnet masks, gateways, DNS servers, and other network parameters defined in its configuration file, typically /etc/dhcp/dhcpd.conf.
Upon startup, dhcpd reads the configuration file to define subnets, host reservations, and lease policies. It maintains a lease database, usually in /var/lib/dhcp/dhcpd.leases, to track assigned addresses and expiration times, preventing conflicts. The daemon supports both IPv4 and IPv6 (limited) and can operate in failover mode with another server for redundancy.
Common use cases include setting up DHCP services on LANs, enterprise networks, or routers. It runs as a background process (daemon) and logs activity via syslog. Proper firewall rules (UDP ports 67/68) and root privileges are required. Note that ISC DHCP is deprecated; modern distributions recommend migrating to Kea DHCP. Security features include DDNS updates and MAC-based reservations.
CAVEATS
Requires root privileges; deprecated in favor of Kea DHCP. Needs /etc/dhcp/dhcpd.conf and proper permissions on lease files. IPv6 support is experimental. Firewall must allow UDP 67/68. Not compatible with some systemd setups without tweaks.
CONFIGURATION FILE
Defines subnets, pools, hosts via /etc/dhcp/dhcpd.conf. Syntax checked with dhcpd -t.
LEASE MANAGEMENT
Leases stored in /var/lib/dhcp/dhcpd.leases. Use omshell for runtime updates.
FAILOVER SUPPORT
Primary/secondary mode for high availability; requires matching configs and network connectivity.
HISTORY
Developed by ISC starting in 1995 as reference DHCP implementation. Major versions up to 4.4.3 (2022). Widely used in Linux distros but deprecated since 2022; ISC recommends Kea for new deployments due to maintenance issues.


