This discussion focuses on a general overview of DHCP and its
time-saving feature for managing large IP networks. DHCP allows manageability
and effective use of Internet Protocol (IP) address distribution across Local
Area Networks (LANs) and Wide Area Networks (WANs). The reader is expected to
have beginner's understanding of personal computers (PCs) and networking administration
tasks. We will look at the DHCP protocol and the benefits from implementing this
service into your present IP network management strategy.
Introduction
With the rapid growth of TCP/IP (Transmission Control Protocol/Internet
Protocol, the common transmission protocol for communicating over the Internet)
networks, tools are needed to automate administrative functions in managing large
TCP/IP networks. The Dynamic Host Configuration Protocol (DHCP) is a set of rules
for dynamically allocating IP addresses and configuration options to workstations
on a network. An IP (Internet Protocol) address is a 32-bit binary number written
as four decimal numbers separated by periods that is used to uniquely identify
a workstation on the Internet. An Internet address (like 207.160.153.254 or 198.209.5.1)
is analogous to a telephone number. While the telephone network directs calls
to you by using your telephone number, the Internet network directs data to you
by using your IP number. This number can be statically (or manually) assigned
by the administrator for a network workstation or assigned to it dynamically by
a central server.
Figure 1. DHCP Server and Client
How Does DHCP Work?
DHCP service runs on a central server that dynamically assigns
an IP address to individual PCs or workstations (Figure 1). This protocol delivers
IP information on a local area network (LAN) or across several LANs. DHCP reduces
the work spent administering statically assigned IP addresses on a large network.
For example, the administrator does not have to visit each workstation on the
network to configure it or manually make changes to its IP address if there is
a network topology change. Other network configuration parameters (such as gateway
and DNS, Domain Name Services) can be passed along to a workstation with the IP.
We will discuss a few of these important options.
The DHCP protocol provides a means of passing configuration
parameters to requesting DHCP client workstation or hosts on a TCP/IP network.
The term host refers to any IP device on a network such as a router, server
or workstation. The term client refers to a host requesting information
from another host or server that provides this information. A server is
a host that is running an application or service that provides information to
requesting clients.
A DHCP server is a host on a network that runs a DHCP service.
The DHCP service listens to network traffic waiting for DHCP broadcast requests.
Once a request is heard, the server responds to the request with an IP address
and additional (optional) configuration parameters. When you set up the DHCP service
you designate what IP address ranges you wish to distribute. You can also choose
to pass Network Gateway information and DNS address (Domain Name Services) information.
These are the most common though other parameter options have been added in subsequent
RFCs (RFCs are Requests for Information. Begun in 1969, these numbered documents
are Internet information and standards used by Internet professionals and software
developers. All Internet standards are recorded in RFCs, though not all RFCs are
standards. See References section below for applicable
RFCs).
DHCP was derived from the Bootstrap Protocol (BootP). BootP
was the first means of delivering IP addresses dynamically to network devices
such as workstations and printers. With growing networks, the BootP protocol was
inadequate and DHCP was created to support new demands. J. Wobus explains, "The
primary difference between the two is that BOOTP was designed for manual pre-configuration
of the host information in a server database, while DHCP allows for dynamic allocation
of network addresses and configurations to newly attached hosts. DHCP also has
the capability to recover and reallocate network addresses through a leasing mechanism."
See RFC 1534 for more information on the interoperability between BootP and DHCP.
The "Dynamic Host Configuration Working Group" of the Internet Engineering
Task Force (IETF) created DHCP. The IETF is a volunteer organization that helps
define protocols for use on the Internet.
DHCP Protocol Parameter Options
Additional workstation configuration parameter options can be
included in the DHCP protocol during the DHCP session. These options are not a
required part of the protocol but are extensions of the protocol that allow for
optional configuration parameters. RFC 1542 lists the basic options for DHCP parameter
information. Significant basic configuration information distributed in this protocol
with the IP address might include:
IP address and mask of the workstation (required),
Gateway address for the workstation to reach the Internet,
DNS (Domain Name Services) server so the workstation can resolve Web addresses
to IP address on the Internet.
Additional options not discussed here can include listing of
other servers and services:
Log Servers
Time-Servers
Cookie Servers
Line Printers
Some of these options may further enhance workstation configuration
parameters such as where to find the boot image or where to put a core dump file.
These are just a few of the basic options provided under RFC 1542. Extensive other
options are available under subsequent RFCs though some are proprietary and dependent
on certain vendor specifications.
Most Network Operating Systems (NOS) support DHCP, including
Microsoft, Novell, IBM and UNIX platforms. It is relatively easy to implement
on any NOS, has been around for some time and is pretty stable.
There are three methods for DHCP to allocate IP addresses to
workstations.
Manual allocation
Automatic allocation
Dynamic allocation
In the manual allocation method, the network administrator
on the DHCP server manually configures the client's IP address in the server.
When the client workstation makes the request for an IP address, the server looks
at the MAC address (Media Access Control address; manufacture's unique address
of the network card) and assigns the client the manually set IP address.
In the automatic allocation method, the DHCP client workstation
is assigned an IP address when it first contacts the DHCP server. In this method
the IP address is randomly assigned and is not set in the server. The IP address
is permanently assigned to the DHCP client and is not reused by another DHCP client.
In the dynamic allocation method, the DHCP server assigns
an IP address to a requesting client workstation on a temporary basis. The IP
address is leased to the DHCP client for a specified duration of time. When this
lease expires, the IP address is revoked from the client and the client is required
to surrender the address. If the DHCP client still needs an IP address to perform
its functions, it can request another IP address.
Running DHCP Services Across Multiple Networks
DHCP, by design, is not routable. However most routers support
a helper configuration option, or relay-agent that allows DHCP requests to
be forwarded between connected or routed networks. You can easily implement
a single point of IP address management across expanded local and wide area
networks where the DHCP server provides support for multiple IP address blocks.
Most network operating system developers are adding additional support for
the ever changing IP addressing scheme. Several have adopted support for the
next release of the IP addressing scheme, IP Version 6 (an expanded IP address
scheme changing the current 32-bit address to a 128-bit address).
Summary
DHCP is a protocol designed to save time managing IPs on a large
network. The DHCP service runs on a network server that allows centralized management
of IP addresses to workstations on a network. Most Network Operating Systems (or
network servers) support this feature and include it with their operating system.
References
Reynolds, J., "BOOTP Vendor Information Extensions,"
RFC 1497, USC/Information Sciences Institute, August 1993.
Siyan K., "Novell Guide to Creating Intranet Ware Intranets,"
1997, Novell Inc.