The dhcpd Command
The syntax of the dhcpd command is:
dhcpd [-p port] [-f] [-d] [-cf config-file] [-lf lease-file] [if0 [ifn]]
dhcpd usually is run without any command-line arguments. Most of the arguments are used only when testing and debugging. Two of the command-line arguments handle special configuration requirements:
-f- Runs
dhcpdin foreground mode. By default,dhcpdruns as a background daemon process. Use-fwhendhcpdis started from inittab on a System V Unix system. - if0
[...ifn] - Lists the interfaces on which
dhcpdshould listen for BOOTREQUEST packets. This is a whitespace-separated list of interface names. For example,dhcpd ec0ec1 wd0tellsdhcpdto listen to interfaces ec0, ec1, and wd0. Normally this argument is not required. In most casesdhcpdlocates all installed interfaces and eliminates the no-broadcast interfaces automatically. Use this argument only if it appears thatdhcpdis failing to locate the correct interfaces.
All of the remaining command-line arguments are used for debugging or testing:
-pport- Causes
dhcpdto listen to a nonstandard port. The well-known port for DHCP is 67. Changing it means that clients cannot talk to the server. On rare occasions this is done during testing. -d- Routes error messages to stderr. Normally error messages are written via syslog with facility set to DAEMON.
-cfconfig-file- Causes
dhcpdto read the configuration from the file identified by config-file instead of from dhcpd.conf. Use this only to test a new configuration before it is installed in dhcpd.conf. Use the standard file for production. -lflease-file- Causes
dhcpdto write the address lease information to the file identified by lease-file instead of to dhcpd.leases. Use this only for testing. Changing the name of the lease file could cause dynamic addresses to be misallocated. Use this argument with caution.
Kill the dhcpd daemon with the SIGTERM signal. The process ID (PID) of the dhcpd daemon is found in the /var/run/dhcpd.pid file. For example:
# kill -TERM 'cat /var/run/dhcpd.pid'
dhcpd uses three files. It writes its PID to /var/run/dhcpd.pid, maintains a record of dynamic address leases in /var/db/dhcpd.leases, and reads its configuration from /etc/dhcpd.conf. These last two files are created by you. Create an empty lease file before you run dhcpd the first time, e.g., touch /var/db/dhcpd.leases. Create a configuration and store it in dhcpd.conf.