Dynamic Host Configuration Protocol (DHCP) enables host systems in a TCP/IP network to be configured automatically for the network as they boot. DHCP uses a client/server mechanism: servers store configuration information for clients, and provide that information upon a client's request. The information can include the client's IP address and information about network services available to the client.
This manual page provides a brief summary of the Solaris DHCP implementation.
The Solaris DHCP client is implemented as background daemon, dhcpagent(1M).
For IPv4, this daemon is started automatically during bootup if there exists at least one dhcp.interface file in /etc. Only interfaces with a corresponding /etc/dhcp.interface file are automatically configured during boot.
For IPv6, this daemon is started automatically when commanded by in.ndpd (based on IPv6 Routing Advertisement messages). No /etc/dhcp.interface file is necessary, but such a file can be used to specify an interface as "primary," provided that IPv4 DHCP is also in use.
Network parameters needed for system configuration during bootup are extracted from the information received by the daemon through the use of the dhcpinfo(1) command. The daemon's default behavior can be altered by changing the tunables in the /etc/default/dhcpagent file. The daemon is controlled by the ifconfig(1M) utility. Check the status of the daemon using the netstat(1M) and ifconfig(1M) commands.
The Solaris DHCP server is implemented as a background daemon, in.dhcpd(1M). This daemon can deliver network configuration information to either BOOTP or DHCP clients. The Solaris DHCP service can be managed using the dhcpmgr(1M) GUI or the command line utilities dhcpconfig(1M), dhtadm(1M), and pntadm(1M).
The Solaris DHCP server stores client configuration information in the following two types of tables:
DHCP network tables
dhcpinfo(1), dhcpagent(1M), dhcpconfig(1M), dhcpmgr(1M), dhtadm(1M), ifconfig(1M), in.dhcpd(1M), in.ndpd(1M), netstat(1M), pntadm(1M), syslog(3C), dhcp_network(4), dhcptab(4), dhcpsvc.conf(4), dhcp_inittab(4), ndpd.conf(4), dhcp_modules(5)
Alexander, S., and R. Droms. RFC 2132, DHCP Options and BOOTP Vendor Extensions. Silicon Graphics, Inc. Bucknell University. March 1997.
Droms, R. RFC 1534, Interoperation Between DHCP and BOOTP. Bucknell University. October 1993.
Droms, R. RFC 2131, Dynamic Host Configuration Protocol. Bucknell University. March 1997.
Wimer, W. RFC 1542, Clarifications and Extensions for the Bootstrap Protocol. Carnegie Mellon University. October 1993.
Lemon, T. and B. Sommerfeld. RFC 4361, Node-specific Client Identifiers for Dynamic Host Configuration Protocol Version Four (DHCPv4). Nominum and Sun Microsystems. February 2006.
Droms, R. RFC 3315, Dynamic Host Configuration Protocol for IPv6 (DHCPv6). Cisco Systems. July 2003.