From FreeBSDwiki
Revision as of 09:04, 23 January 2007 by Dave (Talk | contribs)
Jump to: navigation, search



Dynamic Host Configuration Protocol. DHCP allows you to place machines on a network and configure many of their settings (network-wise) via a server that your host machine queries. Usually this is limited to what IP and DNS client information a host uses on the network, and this greatly increases an administrator's ability to configure a large number of hosts to use a network with minimal effort (as opposed to configuring each host individually.)

The service daemon on most *nix platforms is called dhcpd, the client application (if your *nix box is set up to use DHCP,) is usually dhclient.


The most common unix implementation of the DHCP service is the ISC's DHCP; Microsoft has their own implementation, as does Sun Microsystems.


(placeholder...needs info on hosts, networks, shared-networks and the different options)

Problems starting dhcpd

Errors when trying to start

NOTE: This problem was found on this architecture, but may apply to others.

dhcp-1# uname -a
FreeBSD 6.0-RELEASE FreeBSD 6.0-RELEASE #0: Thu Nov  3 09:36:13 UTC 2005   
root@x64.samsco.home:/usr/obj/usr/src/sys/GENERIC  i386
dhcp-1# /usr/local/etc/rc.d/ start
chown: dhcpd: Invalid argument
/usr/local/etc/rc.d/ WARNING: unable to change permissions of /var/run/dhcpd
/usr/local/etc/rc.d/ WARNING: safe_run: chown dhcpd:dhcpd /var/db/dhcpd
/usr/local/etc/rc.d/ WARNING: unable to change permissions of /var/db/dhcpd
chown: dhcpd: Invalid argument
/usr/local/etc/rc.d/ WARNING: unable to change permissions of /var/db/dhcpd/dhcpd.leases
Starting dhcpd.

Find out if dhcpd is running

dhcp-1# ps -auwx | grep dhcp
root     94818  0.0  0.6  2188  1536  ??  Is   15Jan07   0:00.05 /usr/local/sbin/dhcpd
root     24289  0.0  1.1  3892  2612  p0  RV    6:22AM   0:00.00 grep dhcp (csh)

Stop dhcpd (if running)

dhcp-1# kill -9 94818

Verify that dhcpd has been stopped

dhcp-1# ps -auwx | grep dhcp
root     24293  0.0  0.1   348   208  p0  R+    6:22AM   0:00.00 grep dhcp

Fix the problem

dhcp-1# /usr/local/etc/rc.d/ install
Added group "dhcpd".
Added user "dhcpd".

Start dhcpd normally

dhcp-1# /usr/local/etc/rc.d/ start
Starting dhcpd.
Personal tools