You are on page 1of 44

DHCP definition

DHCP stands for dynamic host configuration protocol and is a network protocol used on IP
networks where a DHCP server automatically assigns an IP address and other information to
each host on the network so they can communicate efficiently with other endpoints.

Dynamic Host Configuration Protocol


Related terms:
 Domain Name Service
 Domain Name System
 Internet Protocol
 Subnet
 Active Directory

View all Topics

MCSA/MCSE 70-291: The Dynamic Host Configuration


Protocol
Deborah Littlejohn Shinder, ... Laura Hunter, in MCSA/MCSE (Exam 70-291) Study Guide,
2003

Managing the Windows Server 2003 DHCP Server

The DHCP MMC in Windows Server 2003 allows you to back up and restore the DHCP
database without relying on command line utilities.

When a DHCP server is installed, the installation program adds two local administrative
groups to the server, called DHCP Administrators and DHCP Users. DHCP
Administrators have full administrative control over DHCP (but not over other aspects of
the server), whereas DHCP Users have read-only rights to the DHCP configuration and
scopes.

DHCP server statistics will alert you with different colored triangular icons when your
scopes are getting close to and/or have been depleted of IP addresses.
Introduction to Networking
Dale Liu, ... Luigi DiGrande, in Cisco CCNA/CCENT Exam 640-802, 640-822, 640-816
Preparation Kit, 2009

DHCP

Dynamic Host Configuration Protocol (DHCP) is a protocol that will automatically assign
TCP/IP addressing information to workstations over the network (see IETF draft standard RFC
2131, 2132, and 3397). The most common options set by DHCP are the network address, subnet
mask, gateway, and DNS server address. There are many other options you can set with DHCP
in including time server, domain name, and many others. One thing people often overlook is that
DHCP is not just for Windows networks, there is a compatible protocol called Bootstrap
Protocol (BOOTP) that does many of the same features as DHCP. When setting up DHCP on
your network you should consider that DHCP uses broadcast packets and if you have any routers
separating subnets, the DHCP server will only be accessible to the computers on that subnets as
routers, as described earlier, do not pass broadcasts. If you need to pass DHCP information over
networks separated by routers you can either setup a DHCP relay server or you can use the
helper address feature on the Cisco routers. The helper address feature tells the router to “listen”
for DHCP packets, and then the router repackages the packet into a unicast packet and sends it to
the DHCP server on the other network and waits for the reply. It then repackages the packet to a
broadcast and puts it back on the network for the client. If you are in an environment that has
routers separating buildings DHCP packets would not cross the router as routers block broadcast
traffic and DHCP is a broadcast protocol. To pass this traffic you would need a special service
called a DHCP Relay server. This server listens for DHCP broadcasts and makes them a
dedicated unicast packet and sends it to the DHCP server on the other side of the router and waits
for the answer packet and turns it back into a broadcast.

Windows Server 2008 R2 networking


Dustin Hannifin, ... Joey Alpern, in Microsoft Windows Server 2008 R2, 2010

Deploying DHCP

DHCP is installed by adding the DHCP role in Server Manager. The initial set up process will
install the DHCP components and will take you through the initial configuration of the DHCP
server. To add the DHCP server role, perform the following steps:

1.

Open Server Manager from Start | Administrative Tools | Server Manager.

2.
Click to highlight the Roles node in the left pane. Then click the Add Roles link in the
middle pane. This will launch the Add Roles Wizard.

3.

Click Next to begin the installation process.

4.

Select DHCP Server from the list of available roles (see Figure 3.51). Then click Next.

Sign in to download full-size image

Figure 3.51. Select DHCP Server Role.

5.

You will be taken to the DHCP summary page. Click Next to continue.

6.

The first configuration option will ask you to provide the domain name and the DNS
Servers to provide to each client. These are the DNS Servers that each DHCP client will
use for name resolution. Enter the IP address of two DNS Servers on your network, and
then click Next.
7.

If you are using WINS, you will need to specify the IP addresses of the primary and
secondary WINS servers. If WINS is not used, leave the option WINS is not required for
applications on this network selected. Then click Next.

8.

You are now ready to set up a DHCP scope. Remember that a scope is the range of IP
addresses you want to make available to DHCP clients. Enter the DHCP range as seen in
Figure 3.52. At this stage, you can also set the subnet mask and default gateway to be
used by DHCP clients. After setting the scope range and options, click OK. Then click
Next.

Sign in to download full-size image

Figure 3.52. Creating DHCP Scopes.

9.
If you are using IPv6, you can now add the DHCPv6 configuration information. For our
example, we will disable stateless DHCP mode for the server. Then click Next.

10.

You will now need to authorize the DHCP server in AD, assuming that you have AD
deployed on your network. DHCP authorization ensures that only authorized DHCP
servers can offer IP addresses to DHCP clients. Choose or enter credentials that have the
ability to authorize DHCP servers (see Figure 3.53), then click Next.

Sign in to download full-size image

Figure 3.53. Authorize DHCP Server.

11.

You will now see the DHCP install summary screen. Verify whether the settings are
correct. Then click Install. This process will now install, perform initial configuration,
and authorize DHCP.

12.

Once the installation is completed, you should see an installation success message. The
server should now start to lease IP addresses to DHCP client computers.

13.

The DHCP Management console will appear under the Roles node in Server Manager.
You can go here to change configuration options, including changing lease settings or
adding additional scopes.

Notes from the field

DHCP advanced options for devices


Some devices like Voice over IP Phones require custom options to be set for the DHCP scope.
These custom options can be added to DHCP easily but you will need to get the full list of
options from your hardware provider.

Networks
Jeremy Faircloth, in Enterprise Applications Administration, 2014

Dynamic Host Configuration Protocol

DHCP is used for automatically configuring devices that join a TCP/IP-based network. This
configuration can include elements such as an IP address, subnet mask, DNS server addresses, a
default gateway address, and other configuration information. A server set up to use DHCP and
host the configuration information in a local data store provides this configuration information.
DHCP uses UDP port 67 on the server side and UDP port 68 on the client side. DHCP also has
two versions: DHCPv4 and DHCPv6 to support IPv4 and IPv6, respectively. These two versions,
much like the two versions of IP, are very different and are therefore considered separate
protocols and use separate ports. DHCPv6 uses UDP port 546 on the client side and UDP 547 on
the server side.

The process for obtaining DHCP configuration information is pretty simple: Discover, Offer,
Request, and Acknowledge (DORA). The DHCP client broadcasts a message called a DHCP
discover message. The server will reply with a DHCP offer message that includes an offered IP
address, subnet mask, and some other data. If the client agrees to accept the address, it will
respond with a DHCP request message to let the server know that it will be using the offered
address. Finally, the server responds with a DHCP acknowledge message that includes the time
that the address lease is valid as well as any other information requested by the client.

There are two additional message types used with DHCP. The first is a DHCP information
request which is sent by the DHCP client. This is effectively a request for additional
configuration information that may not have been included in the initial DHCP offer message.
There is also a DHCP release message that can be used by the client. This isn’t required as the
DHCP lease will expire at its configured expiry time, but it can be used optionally prior to
requesting a new address or new lease of the same address if there is a need.

Most enterprise applications are configured to use static IP addresses for the servers that host the
application, but it is also possible for those servers to use a dynamic address with a DHCP
reservation. A DHCP reservation will offer the same IP address lease to a system by using the
NIC’s MAC address to identify it. Client systems, on the other hand, are usually configured to
use DHCP without address reservations except under special circumstances. There are some
potential issues that can arise with DHCP configuration that can cause the enterprise application
to be unavailable or act oddly for the client system. We’ll discuss this further in the Network
Troubleshooting section.

Dynamic Host Configuration Protocol


Walter Goralski, in The Illustrated Network (Second Edition), 2017

DHCP

It might seem odd to spend so much time in a chapter on DHCP discussing BOOTP and TFTP.
But much of what DHCP does and the way it accomplishes its functions is similar to the
operation of these two earlier protocols. DHCP involves a more complex exchange of messages
between client and server, but the intention was always that servers could provide both BOOTP
and DHCP functions with a minimum of recoding.

DHCP was once referenced in BOOTP RFCs 1533 and 1534, but as an “extension” of BOOTP
capabilities. Currently, RFC 2131 describes DHCP and distinguishes it from BOOTP. Not only
does a DHCP server allocate addresses to clients, but it also maintains parameters for individual
clients and entire client groups, greatly enhancing the efficiency of the entire system. In general,
DHCP is designed to:

Be a mechanism. No “policy” or ideas about IP address allocation schemes are assumed


by DHCP. However, DHCP can be the mechanism on which such policies are built.

Do away with manual configuration. A user should always be able to simply plug their
devices into the network and work. (The requirement to configure DHCP, if not the
default, is beyond DHCP’s control.)

Handle many subnets from one server. DHCP employs the BOOTP relay agent concept,
mostly implemented in routers, for this purpose.

Allow multiple servers. For redundancy and reliability, clients and servers must be able
to deal with more than one DHCP server.

Coexist with statically addressed hosts. As mentioned, dynamically addressed servers are
a challenge for DNS and the user in general. DHCP must allow these hosts to function
properly.


Support BOOTP. DHCP can use BOOTP relay agents and must be able to service
BOOTP clients.

Guarantee unique addresses. No address can ever be assigned to two clients at the same
time.

Retain client information. The servers must retain all client parameters in case of failures
or between shutdown and start-up.

If the addresses handed out by DHCP were permanent, there would be little difference between
static assignment or the way that BOOTP operates. But the DHCP association between client and
address is called a binding, or, more commonly, a lease. And like any lease, it must be renewed
periodically or become available for assignment to a new client.

The pool of IP addresses handed out by the DHCP server is called a scope. A collection of
scopes gathered for administrative purposes is known as a superscope.

Administering Network Services


In How to Cheat at Windows System Administration Using Command Line Scripts, 2006

Managing Automatic Addressing Using DHCP Services

Administrators use DHCP in medium to large computer networks to manage automatic


assignment of IP addresses to DHCP clients. It is easy to manage DHCP servers using the GUI
when you have just a few DHCP servers in the organization. However, when you must manage
multiple DHCP servers spread across different locations of the organization and connected by
slow wide area network (WAN) links, you may find that NETSH is a better tool for managing
DHCP services than the usual GUI.

The NETSH DHCP prompt is located within the NETSH environment. To access the DHCP
prompt, just type DHCP at the NETSH> prompt and press Enter. The following prompt is
displayed:

Sign in to download full-size image

Within the DHCP> prompt, several commands are available for managing DHCP servers. These
are mainly categorized as follows:


NETSH DHCP

NETSH DHCP SERVER

NETSH DHCP SERVER SCOPE

NETSH DHCP SERVER MSCOPE

NETSH DHCP

The commands available from the DHCP> prompt are listed in the following sections.

Server

The Server command shifts the context of the DHCP> prompt to the specified DHCP server.
The syntax of this command is:

Sign in to download full-size image

You may specify the DHCP server by its name or by its IP address. When you use the name of
the DHCP server, you must precede the name with double backslashes (\\).

Show Server

You use the Show Server command to obtain a list of DHCP servers that are authorized in Active
Directory. The syntax of this command is:

Sign in to download full-size image

There is no required parameter with this command.

Add Server

You use the Add Server command to add a new server to the list of authorized DHCP servers in
Active Directory. The syntax of this command is:

Sign in to download full-size image


The parameters of this command are:

ServerDNS Specifies the DNS domain name of the DHCP server that you want to add to
the list of authorized DHCP servers in Active Directory.

ServerIP Specifies the IP address of the DHCP server that you want to add to the list of
authorized DHCP servers in Active Directory.

The following example illustrates use of the Add Server command:

Sign in to download full-size image

This command adds a DHCP server named DHCPServ1.books.syngress.com with an IP address


of 192.168.0.10 as an authorized server in Active Directory.

Delete Server

You use the Delete Server command to delete a DHCP server from the list of authorized servers
in Active Directory. The syntax of this command is:

Sign in to download full-size image

The parameters of the Delete Server command are similar to those of the Add Server command.
The following example illustrates use of the Delete Server command:

Sign in to download full-size image

This command removes (deletes) a DHCP server named DHCPServ1.books.syngress.com with


an IP address of 192.168.0.10 from the list of authorized servers in Active Directory.

Dump

The Dump command dumps the configuration of a specified DHCP server to the command
prompt window or to a specified file. If you do not use any parameters with this command, the
configuration of the DHCP server that is currently in focus is displayed in the command prompt
window. The syntax of this command is:

Sign in to download full-size image


Here are the parameters of this command:

\\ServerName Specifies the name of a remote DHCP server. You must precede the name
with double backslashes (\\).

IPAddress Specifies the remote DHCP server by its IP address.

Filename Specifies the name of the file where you want to direct the output of the
command. The configuration of the specified DHCP server is saved in this file.

It is important to note that you can use either the name or the IP address of the remote DHCP
server. You need not use both of these parameters.

Master Craftsman …
DHCP Servers

Saving the configuration of a DHCP server is useful when you need to diagnose problems with
any DHCP servers in the network, Microsoft recommends that you reconcile all scopes on the
specified DHCP server. This will ensure that if there are any inconsistencies with the scopes,
they are removed. When the DHCP configuration is saved in a text file, the same file can be
copied to another DHCP server to configure it. This not only saves you time in configuring a
new DHCP server from scratch, but it also ensures that the configuration is correct and accurate.

For example, the following command dumps the configuration of a DHCP server to a text file
named DHCPConf.dmp:

Sign in to download full-size image

When you execute this command, you can copy the file to another DHCP server and use the
EXEC command to copy this configuration to the destination DHCP server. You must not open
the DHCP console before using the EXEC command. You must also delete all default server
options, scope options, and any defined user or vendor classes. You use the EXEC command as
follows on the DHCP server:

Sign in to download full-size image

Once you execute this command, you can start the DHCP services on the destination server using
the following command:
Sign in to download full-size image

The changes in the configuration of the destination DHCP server take place after the DHCP
service starts.

NETSH DHCP SERVER

You can narrow down the NETSH DHCP prompt to a single DHCP server by typing SERVER
at the DHCP> prompt. The prompt changes as follows:

Sign in to download full-size image

Within the DHCP SERVER prompt, there are several different subcommands that you can use to
manage a single DHCP server. You can use these commands to view, configure, add, delete,
import, or export the DHCP settings. The following sections discuss these commands.

Viewing Configuration Settings

The following commands are available for viewing DHCP server settings. Most of these
commands are self-explanatory.

Sign in to download full-size image

It is interesting to note that most of these commands do not require any parameters.

Configuring the DHCP Server


The following subcommands are available for configuring the DHCP server:

Sign in to download full-size image

Sign in to download full-size image

Besides the preceding commands, you can authorize a DHCP server in Active Directory by using
the following command:

Sign in to download full-size image

This command initiates the process pf authorizing the current DHCP server in Active Directory.

NETSH DHCP SERVER SCOPE

You can narrow down the NETSH DHCP SERVER prompt to a single DHCP scope by typing
SCOPE at the DHCP SERVER> prompt. The prompt changes as follows:

Sign in to download full-size image


Within the DHCP SERVER SCOPE prompt, there are several different subcommands that you
can use to manage a single DHCP server scope. These commands are discussed in the following
sections.

Viewing the Scope Configuration

The following subcommands are available for viewing the current configuration of a DHCP
server's scopes:

Sign in to download full-size image

Sign in to download full-size image

It is interesting to note that most of these commands do not require any parameters.

Configuring a Scope

The following subcommands are available for configuring DHCP server scopes:

Sign in to download full-size image

You can initiate the process of reconciling a DHCP server scope by using the following
command:

Sign in to download full-size image


When you execute this command, the DHCP server starts reconciling the configured scopes.

Distributed Information Resources


Randall J. Atkinson, J. Eric Klinker, in Advances in Computers, 1999

6 Dynamic Host Configuration Protocol (DHCP)

With the success of TCP/IP in the corporate community during the past several years, there has
been a need for automated configuration of networking for desktop PCs and laptop computers.
Most users neither know how to configure the TCP/IP parameters on their desktop computer nor
desire to know how to do this. The need for automated network configuration of desktop
computers has been met by the Dynamic Host Configuration Protocol (DHCP) [29]. With
DHCP, the computer sends out a DHCP Request when it boots up, this is relayed to the DHCP
server responsible for that LAN, and then the DHCP server sends a DHCP reply back to the
requesting computer. This reply contains the IP address and other networking configuration
needed by the requesting computer. The requesting computer then configures itself using the
information contained in the DHCP reply message, sparing the user the effort of manual
configuration.

6.1 Threats and Issues

While DHCP meets the need for automated configuration of computers, it also creates some
risks. For example, a false DHCP reply could be forged by an adversary located somewhere
along the path from the requesting computer to the DHCP server. This might cause the
requesting computer to have an invalid non-functional configuration—creating a denial-of-
service attack. Perhaps more dangerous, such a forged DHCP reply message might place the
requesting computer into a configuration that appeared to work fine, but was inconsistent with
the security policy of the network administrator. Gudmundsson and Droms have also
documented specific security requirements for the DHCP protocol [41]. The crux of their
analysis is that mutual authentication of the client and server and authentication of DHCP
protocol messages is essential to have a secure and trustworthy DHCP.

6.2 Technology Directions

At present, DHCP lacks cryptographic authentication mechanisms that would be needed to


prevent a forged DHCP reply from being successful. Very recently, Ralph Droms has proposed a
technique for DHCP authentication to address these issues [30]. His approach provides for the
use of HMAC-MD5 [54] to provide authentication for DHCP message origin and to provide
message integrity during transit. This technique is very similar to that used with SNMPv2 and for
routing protocol authentication.

Droms also describes a method whereby the DHCP server chooses a master key. Each DHCP
client has its own unique key with the DHCP server that is the result of a cryptographic hash of
the server’s master key and the CLIENT-ID of that DHCP client. This would simplify key
management on the DHCP server since it would only need to know a single master key and
could compute the per-client key as necessary. However, this approach would require that each
DHCP client be preconfigured with the correct client key. Since most DHCP user communities
rely on DHCP for all of the requesting computer’s network configuration, it is unclear whether
they would be willing to configure a public key into each computer using DHCP because of the
administrative overhead.

It is possible that once a Public Key Infrastructure (PKI) were established, each DHCP client
could be configured with its own public and private key pair plus the public authentication key
for its PKI directory server. With this information preconfigured into each client, it should be
possible to derive a scalable session key distribution scheme applicable not only to DHCP but
also for other protocols (e.g. ISAKMP, routing protocols).

Installing, Configuring as a Server


Graham Speake, in Eleventh Hour Linux+, 2010

DHCP

DHCP servers are used to configure Transmission Control Protocol/Internet Protocol (TCP/IP)
parameters for a host as they connect to a network, including

IP address

Name servers

Configuring the routing, including the default route

Fast Facts

The main aspects of the DHCP you need to remember are as follows:

DHCP allocates IP addresses to hosts on a permanent or temporary basis.

Temporary IP addresses are said to be leased to a client by the server.


Leased IP addresses can be renewed or relinquished.

The list of leases is kept in dhcpd.leases, usually in /var/db.

DHCP maximizes the usage of IP addresses available by allocating addresses on an as-


needed basis.

DHCP servers usually have fixed or static IP address.

DHCP Server Configuration

Before starting to configure the DHCP server, it is very important to understand your network
and what parameters you will be configuring.

Did You Know?

The basic parameters you will want to configure with DHCP are as follows:

Domain name

DNSes

Lease times

Routing

Static IP addresses

Logging

Primary or secondary DHCP server

The configuration file for DHCP is /etc/dhcpd.conf. Each subnet that you going to provide
DHCP services for must be defined in the file. The main options that can be used are described
below:

# Sample configuration file for dhcpd

# Set the time a client can keep the IP address

default-lease-time 600;

max-lease-time 7200;

# set the default gateway to be used by clients

option routers 10.254.239.1;

# Set-up the NTP server

option ntp-server 10.254.239.6;

# set the nameserver to be used by the clients

option domain-name-servers 10.254.239.5

# This is a very basic subnet declaration.

subnet 10.254.239.0 netmask 255.255.255.224 {

range 10.254.239.10 10.254.239.20;

option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org;

# Fixed IP addresses can also be specified for hosts.

# Names or IP addresses can be used


host adminprinter{

hardware ethernet 08:00:07:26:c0:a5;

fixed-address adminprinter.fugue.com;

This setup is allocating a number of IP addresses using DHCP, both leased and fixed.

Configuring Network Services


Tony Piltzecker, Brien Posey, in The Best Damn Windows Server 2008 Book Period (Second
Edition), 2008

Using Server Core and DHCP

DHCP is also a role that is supported in a Windows Server 2008 Core installation. DHCP
installation is handled via the command line of the Server Core installation. However,
management of the DHCP server (as well as the DHCP scopes) can be controlled from a remote
Windows Server 2008 system. In this section, we will install the DHCP role and configure a
DHCP scope using the Server Core command line. Let's begin by installing the role:

Sign in to your Windows Server 2008 Core Server system.

Install the DHCP bits. To do this, type in start /w ocsetup DHCPServerCore (Figure
1.14).
Sign in to download full-size image

Figure 1.14. Installing the DHCP Role

Start the DHCP service and set it to start automatically. To do this, type in sc config
dhcpserver start= auto.

Type sc query dhcpserver. If the service is not running, start it by typing sc start
dhcpserver. You can see the command syntax in Figure 1.15.

Sign in to download full-size image


Figure 1.15. Starting the DHCP Role

Next, we need to configure our DHCP server by adding the DHCP scope. To do this, we
must first start the netsh application. At the command prompt, type netsh.

At the netsh> prompt, type dhcp server.

Add the DHCP Scope at the dhcp server> prompt by typing in initiate auth.

Add the scope by typing in add scope 10.0.0.0 255.0.0.0 BackupScope. 10.0.0.0
indicates the network leased by the DHCP server, while 255.0.0.0 represents the subnet
mask. BackupScope is the name we've given to the scope.

Type in scope 10.0.0.0. This allows us to begin adjusting the scope options.

10

Configure the start and end of the lease range. To set the start of the range, type set
optionvalue 003 IPAddress 10.0.0.1.

11

To set the end of the range, type set optionvalue 006 IPAddress 10.0.0.50.

12

Enable the scope by typing in set state 1.

13

Type exit to close the netsh application. The preceding syntax can be seen in Figure 1.16.
Configuring a Dynamic Host Configuration
Protocol (DHCP) server
The Dynamic Host Configuration Protocol allows a host on a network to receive configuration
parameters including an IP address at boot time. DHCP is an extension of the Bootstrap Protocol
(BOOTP), but differs in that DHCP can provide a complete set of TCP/IP configuration
parameters and allows the dynamic assignment of IP addresses for a fixed lease. DHCP offers
the following advantages to you as a network administrator:

 The ability to provide complete TCP/IP configuration information to any host connected
to the network.
 An IP address can be assigned to a client for only as long as the client remains connected
to the network.
 It allows a limited pool of IP addresses to be shared among a number of clients that do
not require permanent IP addresses.
 Addresses become automatically available again at the expiration of a period of time,
their ``lease'', without requiring you to take any action.

SCO DHCP provides a graphical administration utility, the DHCP Server Manager, to
configure and maintain DHCP service.

NOTE: UnixWare® 7 also provides a DHCP client capability (see dhcpc(1Mtcp)). You can use
the Network Configuration Manager to configure a system's LAN interface to obtain its basic
TCP/IP settings using dhcpc.

SCO DHCP implements the server aspects of the Dynamic Host Configuration Protocol as
defined in the Internet standards: RFC 1534, RFC 1542, RFC 2131, and RFC 2132.
The SCO DHCP server receives IP addresses from the Address Allocation Server (AAS), which
provides the same service to other network services that assign temporary IP addresses. See
``Configuring an Address Allocation Server (AAS)''.

The configuration parameters supplied by the SCO DHCP server include those supported by
BOOTP, the set of parameters specified for DHCP, and user-defined parameters.

When to use SCO DHCP


The purpose of DHCP is to deliver configuration information to individual network hosts and to
reduce the administrative work involved in configuring larger IP networks. DHCP can provide
configuration information to any host directly connected to the network, either permanently or
temporarily. The type of IP address assignment, however, depends upon the type of host.

Network hosts best suited to dynamic address assignment are desktop and laptop PCs that are
routinely connected and disconnected from the network. Users of such machines typically do not
require constant connection to the network. Dynamic assignment allocates them the address they
need, for only the period of time that they need it, without requiring any action by you.

Other network hosts that provide a service on the network, such as routers, gateways or print
servers are better suited to manual address assignment. This method gives them the same address
every time they boot and you only have to configure the address once.

NOTE: If the DHCP server goes down, any machines about to boot or reboot, such as a router or
print server, will not be able to receive their IP address and configuration parameters until the
DHCP server is brought back up.

DHCP cannot provide configuration parameters to remote hosts connected to the network via
PPP or SLIP. Pools of IP addresses configured in the Address Allocation Server for use by PPP
clients should not normally be shared with those pools configured for use by DHCP clients.

How the SCO DHCP server works


``Steps in serving configuration parameters to a DHCP client'' shows the steps that the SCO
DHCP server normally undertakes to service a DHCP client with its configuration parameters.
Steps in serving configuration parameters to a DHCP client

The numbered steps in the figure show the sequence of events:

1. When the SCO DHCP server receives a ``discover'' message from a client requesting
configuration parameters, it constructs the set of parameters corresponding to the client
from the DHCP configuration file. This set of parameters can be built from any
combination of global options, subnet-specific options, class-specific options, and client-
specific options. See ``DHCP options''.
2. If there is no entry for the client in the configuration file, or if the client's entry does not
contain an IP address, the DHCP server leases an IP address to the client from the
Address Allocation Server (AAS).

If the client's entry in the configuration file already contains an IP address, the DHCP
server assigns that address to the client. See ``Manually assigning IP addresses''.

3. If requested, the AAS server allocates a dynamically assigned IP address for the DHCP
server to assign (see ``Dynamically assigning IP addresses''). The AAS server takes the
address from a pool of addresses that are consistent with the client's subnet.
4. The DHCP server constructs an ``offer'' message containing the client's configuration
parameters (including an IP address) and sends it to the client.
5. The server waits for a ``request'' from the client accepting the parameters and address.
6. After the client accepts the offered parameters, the server sends an ``ack''
(acknowledgment) message completing the process.

Steps 5 and 6 are repeated whenever a DHCP client needs to renew the lease on its IP address. If
the server sends a ``nak'' (negative acknowledgment) message instead of an ``ack'' message in
step 6, the client must start again from step 1. This may happen if the requested IP address is no
longer available.
For more information on DHCP message types and message exchange, see RFC 2131.

More than one SCO DHCP server can be configured on a network, if necessary, but these servers
cannot share the same pool(s) of addresses. The DHCP server can configure clients on different
subnets by using BOOTP gateways. See ``Setting up a BOOTP gateway'' for more information.

Manually assigning IP addresses

You can manually assign an IP address to a particular client by creating an entry for the client in
the DHCP Server Manager and entering the IP address in the client's entry. The DHCP server
always assigns this address to the client. Manually assigned addresses cannot belong to any
address pools maintained by the AAS. The lease for a manually assigned address is infinite. See
``Configuring DHCP client option sets''.

Dynamically assigning IP addresses

If there is no entry for the client in the configuration file, or if the client's entry does not contain
an IP address, the DHCP server requests one from the Address Allocation Server. The AAS
allocates an address from the address pool assigned to the client's subnet in the DHCP
configuration file. If a subnet does not have an address pool configured, addresses cannot be
allocated to clients on that subnet. Although there is no guarantee that the client will receive the
same IP address it received last time, the AAS always attempts to do so. A DHCP client can also
request a specific IP address. See ``IP address assignment priority''.

Every address offered by the DHCP server has either a fixed or infinite lease. See ``The lease for
an assigned IP address''.

NOTE: RFC 2131 also specifies an address allocation method called Automatic Allocation. In
the SCO DHCP implementation, this is essentially a dynamically assigned address with an
infinite lease.

IP address assignment priority

The DHCP server dynamically assigns IP addresses using the following priorities:

1. Previous Address -- The DHCP server always assigns the address previously assigned to
the client unless the address is unavailable.
2. Requested Address -- If the previous address is unavailable, the DHCP server assigns the
addresses requested by the client. (A DHCP client can request a specific IP address by
using the ``Requested IP Address'' option in the ``discover'' message. In most cases, this
is the previous address.)
3. Arbitrary Address -- If the previous and requested address(es) are unavailable, the DHCP
server assigns an arbitrary address from the configured pool.
The lease for an assigned IP address

When assigning an address pool to a subnet, you can also establish a default lease time and a
maximum lease time for those addresses. The server uses the default lease time unless the client
requests a specific lease time using the ``IP Address Lease Time'' option in either a ``discover''
message or a ``request'' message. If the client requests a lease time greater than the maximum,
the server offers the maximum lease time.

Both the default and maximum leases can be configured to a maximum of 136 years. There is no
minimum lease. Both leases can also be specified as infinite.

Clients can request an extension of the address lease. In addition to default and maximum lease
times, you can configure the lease renewal and rebind time for the addresses in the pool. The
DHCP server sends the lease renewal and rebind times to the client in the ``ack'' message. The
server defines these values as percentages of the lease. The default renewal time in 50%,
suggesting the client request a renewal when the lease is half over. The rebind time is the point at
which the server suggests the client broadcast a renewal request. This is a second renewal
attempt and accommodates multiple DHCP servers that may be sharing the address pool. The
default is 90%. See ``Configuring subnet option sets'' for information about specifying leases and
renewal information.

To prevent an address from being assigned to more than one client at the same time, DHCP
temporarily reserves the address until the client accepts or rejects it. You can configure this
initial reservation time in the DHCP configuration database as a server parameter. See
``Specifying DHCP server parameters''. After the client accepts the address, the DHCP server
notifies AAS that the address has been leased. If the AAS is not notified, the address can be
reallocated by the address server after the reservation time expires.

A leased IP address becomes available again when either the DHCP server receives a ``release''
message from the client or the lease expires. To account for the possibility of drift between the
clocks of the server and client, you can specify a Lease Padding parameter which extends the
length of the lease. The default is 1% of the lease. The unpadded lease is known to the client.
The DHCP server knows the padded lease so preventing the server from thinking that the lease
expired before the client does. See ``Specifying DHCP server parameters''.

DHCP options

The DHCP server can configure a client with any of the options specified in RFC 2132. DHCP
uses the same request and reply packet format as BOOTP so configuration options are carried in
the portion of the BOOTP packet reserved for vendor extensions. DHCP terms this the ``options''
field and expands it from 64 bytes to 312 bytes.

Multiple sets of DHCP options can be specified in the DHCP configuration database. The
following table shows the possible types of option sets and their precedence:

Option Precedence Description


set type
Client Highest Generally used to specify a static IP address for an individual client. The
DHCP server automatically assigns this address to the client rather than
using one obtained from the address pool assigned to the subnet. You can
also create a client entry without a static address, if you need to specify
unique option values for the client but still want its IP address to be
assigned dynamically. A DHCP client identifies itself to the server using
its network hardware (MAC) address, or using an identifier if it is an
opaque client. As many sets of client options can be created as are needed.
User Offered to any client that specifies the user class identifier in the
class ``discover'' message. As many sets of user class options can be created as
are needed.
Subnet Includes the name of the address pool from which the DHCP server draws
IP addresses to allocate to clients, the default and maximum leases for
these addresses, and lease renewal and rebind times, along with a set of
DHCP options specific to the subnet. As many sets of subnet options can
be created as are needed.
Global Lowest Applies to all DHCP clients. Only one set of global options can be created.

The set of global DHCP options, for example, applies to all clients, whereas a set of subnet
options applies only to the clients on a specified subnet. If you configure the same option in more
than one set of options, the precedence of the option type decides which the DHCP server offers
to the client.

For example, if the ``LPR Servers'' option is specified in both the subnet set of options and the
global set of options, the DHCP server configures the client with the LPR Servers information
defined for the subnet.

An additional class of options is vendor class options. These are intended to provide information
that is specific to a particular vendor's hardware. These options are offered to any client that
specifies the vendor class identifier in the ``discover'' message. As many sets of vendor class
options can be created as are needed for different types of client hardware. It is also possible to
redefine a standard option (with codes in the range 1 through 254) for use by a vendor class.
Such a redefined option is called a ``vendor-specific option'', and is only visible to the vendor
class for which it is defined. Vendor class options are delivered ``encapsulated'' to the client and
so are not affected by precedence rules that the server applies to other options.
Mapping sets of DHCP options to a network

``Mapping sets of DHCP options to a network'' shows an example of how the option sets defined
on the DHCP server can be considered as creating a map of the configuration parameters needed
by DHCP clients:

 In the figure, the set of global options is applicable to all the clients whether they are in
subnet A or subnet B. This set could include information such as the domain name, and
the IP addresses of DNS servers.
 Each of subnets A and B requires its own specific set of subnet options. Each set of
subnet options defines information specific to the subnet such as the name of the pool of
IP addresses that are available for clients to use, a subdomain name, and the IP addresses
of routers.
 In subnet B, two machines are shown as belonging to a group which shares a vendor class
set of options. For example, their architecture might require them to look in a different
TFTP boot directory for configuration files or a bootstrap program than other machines
on the same subnet. Another possibility is that they use vendor class options to obtain
boot configuration parameters that are specific to their hardware. You could similarly
group machines to use different pools of dynamically allocated IP addresses by
specifying appropriate sets of user class options. You must take care not to configure
pools which define overlapping ranges of available IP addresses.
 Finally, in both subnet A and subnet B, a client is shown as having its own set of client
options defined for it. This could be used to define a static IP address for the client.
Clients which are themselves servers for other networking services and need to be always
available at the same IP address should be configured in this way.

Option overload

Although the DHCP client can specify a larger response packet size, the practical limit for DHCP
options is 274 bytes. (An additional 192 bytes can be provided if the option overload feature is
enabled. Option overload is a server parameter.) Each option consists of a 2-byte header and the
option data, such as an integer or an array of IP addresses. A single option cannot exceed 255
bytes of data.

If the server finds that the configured options exceed the allowable limit, it uses as many options
as possible starting from the top of the configured options list and sends an error message to
/var/adm/log/syslog. Clients can send a configured options list in the ``discover'' message. In the
situation mentioned above, this ``Parameters Request List'' takes precedence over any other
configured options.

Default option values

Some DHCP options have default values. If you configure an option that has a default value and
do not configure a value for the option, the DHCP server sends the default value. The following
table lists DHCP options that have default values.

Option name Default value


Broadcast address Network/subnet number with all 1's for the host
Router discovery 1 (enable)
IP forwarding 0 (disable)
Non-local source routing 0 (disallow)
TCP keepalive garbage 0 (disable)
Default IP time to live 64
Ethernet encapsulation 0 (RFC 894, Ethernet version 2)
Default TCP keepalive interval 0 (no keepalives)
Time offset Obtained from host
Boot file size Obtained from host

See RFC 2132 for descriptions of these options.

User-defined and vendor-specific options


In addition to the DHCP options specified in RFC 2132, you can define new options with codes
in the range 128 through 254. These user-defined options become part of the total set of DHCP
options configurable globally or for any client, subnet, user class or vendor class. To define a
new option, you need to specify the following information for it:

 the option's name


 a description of the option
 the option's type (for example, IP address, string, integer, and so on)
 the minimum and maximum allowed values for the option (if the option is an integer)
 the minimum and maximum allowed length for the option (if the option is an IP address,
string, binary or array)

For vendor classes, you can define new DHCP options with codes in the range 1 through 254.
Such vendor-specific options override any existing standard or user-defined global option, and
they only apply to hardware in the vendor class for which they are defined. Details of their
definition are normally provided in the documentation supplied by the hardware manufacturer.

Making DHCP work with BOOTP

The SCO DHCP server, in.dhcpd, does not support BOOTP clients directly. It can be configured
to forward BOOTP requests to the BOOTP server, in.bootpd, as follows:

1. Edit the file /etc/inetd.conf on the server. Make a backup copy of the file in case you need
to recover the old version.
2. Comment out the following entry in /etc/inetd.conf by inserting a ``#'' character at the
start of the line:
3. bootps dgram udp wait root /usr/sbin/in.bootpd in.bootpd
4. Uncomment the following entries in /etc/inetd.conf by removing the ``#'' characters from
the start of both lines:
5. #bootps dgram/i udp wait root /usr/sbin/in.dhcpd in.dhcpd -b bootps-alt
6. #bootps-alt dgram udp wait root /usr/sbin/in.bootpd in.bootpd -S

The first entry configures dhcpd to forward BOOTP requests to bootpd on port bootps-
alt (defined as 950 in /etc/services). The second entry configures bootpd to listen in slave
mode on port bootps-alt.

7. Save the file and exit.


8. To enable the services, force inetd to re-read /etc/inetd.conf by sending it a SIGHUP
signal:

kill -HUP `cat /etc/saf/inetd/_pid`

or by stopping and restarting it:

sacadm -k -p inetd
sacadm -s -p inetd
See the dhcpd(1Mtcp) and bootpd(1Mtcp) manual pages for more information.

The DHCP Server Manager interface


You can start the DHCP Server Manager in the following ways:

 Start SCOadmin by entering scoadmin on the command line, and then select
Networking DHCP Server Manager.
 Enter scoadmin DHCP Server Manager on the command line (or an abbreviation of
this such as scoadmin DHCP).

For more information on using SCOadmin managers, see ``Administering your system with
SCOadmin''.

Depending upon the selection made in the View menu, the main screen of the DHCP Server
Manager shows global entries, subnet entries, client entries, user classes, vendor classes, or
user-defined options that you have configured. Use View Expand to examine the complete
details for a selected entry in the list, and View Collapse to display just its name and
description. You can also expand and collapse individual entries by double-clicking on them.
You can expand and collapse all entries using View Expand All and View Collapse All.

With the DHCP Server Manager, you can perform the following tasks:

 Add user-defined DHCP options which can be configured for any client, user class,
vendor class, subnet or globally.
 Establish global DHCP options that apply to all clients. Identical options configured
specifically for subnets, individual clients, or user classes override global options.
 Configure the subnets on your network for DHCP service by assigning address pools to
the subnets, establishing lease parameters and assigning DHCP configuration options that
are specific to particular subnets.
 Establish sets of DHCP options known as user classes and vendor classes which are
supplied to DHCP clients requesting them. A vendor class can be defined with one or
more vendor-specific options that relate uniquely to certain models of client hardware
from a particular manufacturer.
 Configure individual DHCP clients with a static IP address and unique configuration
options.
 Configure DHCP server parameters such as the location of the Address Allocation Server
(AAS), initial lease reservation time, and option overloading.

Specifying user-defined and vendor-specific options

You can define new options that are not available in the set of global options. These are termed
``user-defined options'' and are assigned codes in the range 128 through 254.
When configuring options for a vendor class, you can also define vendor-specific options that are
unique to an individual vendor class. Vendor class options can be assigned codes in the range 1
through 254. This means that you can redefine any standard global option if this is required by a
particular vendor's hardware. This redefined option only applies to the vendor class for which it
is defined.

To create a new user-defined or vendor-specific option using the DHCP Server Manager:

1. If you want to add a global user-defined option, select View User Defined Options,
and then select Entry Add.

If you want to add a vendor-specific option, click on the Add button next to the list of
defined options on the Vendor Generic Options Configuration screen.

2. Enter the following information for the user-defined option:

Identifier
A numeric identifier for the option in the range 128 through 254 (1 through 254 for
vendor-specific options). A name for the option will be generated with the format
``optionxxx'' where xxx is the numeric identifier.

Description
An additional text string describing the option.

Type
Select the data type of the option from the list. Possible values are:

8-bit integer

Unsigned 8-bit integer

16-bit integer

Unsigned 16-bit integer

32-bit integer

Unsigned 32-bit integer

Boolean
0 for false, 1 for true

IP address
in dotted decimal notation
String
text

Binary
hexadecimal number

Array
If you selected an integer or an IP address type, select this if the option can consist of
more than one value. An array can be interpreted as a set of individual values or as a
range of values.

Min value
If the type is an integer, enter the minimum allowed value.

Max value
If the type is an integer, enter the maximum allowed value.

Min length
If the type is string or binary, enter the minimum length in bytes allowed.

If the type is an array of integers or IP addresses, enter the minimum number of entries
allowed.

Max length
If the type is string or binary, enter the maximum length in bytes allowed.

If the type is an array of integers or IP addresses, enter the maximum number of entries
allowed.

3. Click on OK when you have finished configuring the option.

Once a user-defined option has been added, it is available to be assigned a value in a client, user
class, vendor class, subnet, or global set of options.

To modify a user-defined or vendor-specific option using the DHCP Server Manager:

1. If you want to modify a global user-defined option, select View User Defined
Options, select the option from those listed, then select Entry Modify.

If you want to modify a vendor-specific option, select the option from the list of defined
options on the Vendor Generic Options Configuration screen, and click on Modify.

2. Make the necessary changes and click on OK.


NOTE: You cannot change the Identifier or Name.

To delete a user-defined or vendor-specific option using the DHCP Server Manager:

1. If you want to delete a global user-defined option, select View User Defined Options,
select the option from those listed, then select Entry Delete.

If you want to delete a vendor-specific option, select the option from the list of defined
options on the Vendor Generic Options Configuration screen, and click on Delete.

2. When asked to confirm that you want to delete the option, click on OK.

Configuring DHCP options

Global DHCP options are parameters which are not specific to individual subnets and are usually
the same for all hosts. Examples are the list of DNS name servers and the name of the local
domain.

You can also define DHCP options for sets of subnet, vendor class, user class, and client options
by clicking on Generic while defining or modifying an option set. The options defined within a
set of options always override the globally defined option. An option defined within a set can
override that defined in other sets according to the precedence of the set. See ``DHCP options''
for more information.

NOTE: You can define additional options (user-defined options) with codes in the range 128
through 254 as described in ``Specifying user-defined and vendor-specific options''. Such an
option definition applies globally to all subnet, vendor class, user class, and client sets. It is
indicated by the tag (global) in the list of available DHCP options.

When configuring a vendor class, you can define vendor-specific options with codes in the range
1 through 254. A vendor-specific option definition only applies to the vendor class for which it is
defined. It is indicated by the tag (vendor) in the list of available DHCP options for the vendor
class.

To configure options using the DHCP Server Manager:

1. To add or modify global options, select View Global Options. Select Entry Add if
no options are currently defined, or otherwise select Entry Modify.
To modify options defined within an option set, select one of Subnets, Clients, User
Classes, Vendor Classes, or User Defined Options from the View menu. Select the
option set from those listed, and select Entry Modify.

2. Configure the options that you want to apply by moving them from the ``Unused'' list to
the ``Configured'' list.

To add an option, highlight the option in the ``Unused'' list and click on Add to move
it to the ``Configured'' list. Enter the value(s) for the option and click on OK.

To modify an option within a set, highlight it in the ``Configured'' list and click on Edit
value. Change its value(s) and then click on OK.

To delete an option from a set, highlight it in the ``Configured'' list and click on
Remove to move it to the ``Unused'' list.

3. If you are defining the set of options for a vendor class, you can create a vendor-specific
option by redefining an existing global option. To do this, highlight the global option in
the ``Unused'' list and click on Add.

Once you have defined a vendor-specific option, you can select it for use by the vendor
class by moving the option to the ``Configured'' list and defining its value.

To modify an existing vendor-specific option, highlight it in the ``Unused'' list and click
on Modify.

To delete an existing vendor-specific option, highlight it in the ``Unused'' list and click on
Delete.

4. Click on OK when the ``Configured'' list contains the list of desired options in the set.

An alternative way of removing an option from the global set is to select View Global
Options, select the option to be deleted from those listed, then select Entry Delete. Click on
OK when prompted to confirm the deletion.

Configuring subnet option sets

You can add subnets configured on your network that have DHCP clients. For existing subnet
entries, you can change the address pool, default lease parameters and DHCP options. You can
also access the Address Allocation Server from the Subnet Entry screen and modify address
pools to facilitate the changes you need to make. If you need to change a subnet address, you
must first delete the subnet entry and then define it again with the new subnet address.

Adding a subnet option set

To add a subnet definition using the DHCP Server Manager:


1. Select View Subnets.
2. Select Entry Add.
3. Enter the subnet's IP address in dot notation, the subnet mask, the address pool assigned
to the subnet and an optional description.

NOTE: To define or modify an address pool, click on Address pools to invoke the
Address Allocation Manager.

4. Click on Lease to enter the default lease parameters:

Default lease time


To set an infinite default lease, click on Unlimited. Otherwise, click on Limited and
enter the lease in days, hours and minutes. The lease must be greater than 0, and less than
or equal to 49,674 days (approximately 136 years).

Maximum lease time


To set an infinite maximum lease, click on Unlimited. Otherwise, click on Limited and
enter the maximum lease in days, hours and minutes. The lease must be greater than 0,
and less than or equal to 49,674 days.

Renewal on (percent)
Enter the lease renewal time as a percentage of the lease. The default value is 75% of the
lease, suggesting the client request a renewal when the lease is three-quarters over.

Rebind on (percent)
Enter the lease rebind time as a percentage of the lease. The rebind time defines when a
client makes a second attempt to renew its lease if the first attempt failed. The default is
90% of the lease, suggesting the client make a second attempt to renew the lease when
10% of the lease remains.

5. To configure DHCP options that are specific to the subnet you are adding, click on
Generic. See ``Configuring DHCP options'' for more information.
6. Click on OK.

Modifying a subnet option set

To modify a subnet definition using the DHCP Server Manager:

1. Select View Subnets.


2. Highlight the subnet you want to change and select Entry Modify.
3. Make the necessary changes and click on OK.
NOTE: You cannot change the subnet address.

Deleting a subnet option set

To delete a subnet definition using the DHCP Server Manager:

1. Select View Subnets.


2. Highlight the subnet you want to delete.
3. Select Entry Delete.
4. When asked to confirm that you want to delete the subnet, click on OK.

Specifying vendor class option sets

If you need to group machines according to their hardware or software configuration, and these
machines need options other than standard options, you can define vendor classes to achieve this.
A client of a particular vendor class will then receive the appropriate vendor-specific information
and parameters.

Adding a vendor class option set

To define a vendor class using the DHCP Server Manager:

1. Select View Vendor Classes.


2. Select Entry Add.
3. Enter an Identifier (a text string) and a description for the entry. This corresponds to the
vendor-specific string that the DHCP client will use to identify itself to the DHCP server
in its ``discover'' message.
4. Click on Generic to configure the options for this vendor class. You can also define new
option types (vendor-specific options) that must be uniquely specified for client hardware
from different manufacturers. See ``Configuring DHCP options'' for more information.
5. Click on OK.

Modifying a vendor class option set

To modify a vendor class using the DHCP Server Manager:

1. Select View Vendor Classes.


2. Highlight the vendor class you want to change and select Entry Modify.
3. Make the necessary changes and click on OK.

NOTE: You cannot change the Identifier.


Deleting a vendor class option set

To delete a vendor class using the DHCP Server Manager:

1. Select View Vendor Classes.


2. Highlight the vendor class you want to delete.
3. Select Entry Delete.
4. When asked to confirm that you want to delete the vendor class, click on OK.

Specifying user class option sets

If you need to group machines according to department, work group, or physical location, and
you want to provide the same options to all clients in the group, you can add user classes to
achieve this. You might, for example, want different groups to use different print or DNS
servers.

NOTE: Clients in these groups must be configured to request the user class.

Adding a user class option set

To define a user class using the DHCP Server Manager:

1. Select View User Classes.


2. Select Entry Add.
3. Enter an Identifier (a text string) and a description for the entry.
4. Click on Generic to configure the options for this user class. See ``Configuring DHCP
options'' for more information.
5. Click on OK.

Modifying a user class option set

To modify a user class using the DHCP Server Manager:

1. Select View User Classes.


2. Highlight the user class you want to change and select Entry Modify.
3. Make the necessary changes and click on OK.

NOTE: You cannot change the Identifier.


Deleting a user class option set

To delete a user class using the DHCP Server Manager:

1. Select View User Classes.


2. Highlight the user class you want to delete.
3. Select Entry Delete.
4. When asked to confirm that you want to delete the user class, click on OK.

Configuring DHCP client option sets

If a DHCP client requires a custom set of options but not a fixed address, you can create an entry
without defining an IP address or host name.

Machines such as networked printers, print servers, DNS servers, and file servers require fixed
IP addresses so that clients can locate them. Some of these machines may also be capable of
obtaining configuration parameters as DHCP clients.

Adding a client option set

To define a client configuration using the DHCP Server Manager:

1. Select View Clients.


2. Select Entry Add.
3. Enter the following information about the client:

Client identifier type


Select Hardware if the client identifies itself to the server using the MAC address of its
network adapter. Select Opaque if the client identifies itself using a string.

Client identifier
If the client identifier type is Opaque, enter the string that a client uses to identify itself.

Hardware type
If the client identifier type is Hardware, select the frame type that it uses: Ethernet for
Ethernet II (traditional Ethernet) framing or IEEE 802 for IEEE 802.n framing.

IEEE 802.3 frames can use the same network topology as Ethernet II frames but their
structure is different. Most TCP/IP networks are configured to use Ethernet II framing.

If your network has a Token Ring or Token Bus topology, select IEEE 802.

Hardware address
If the client identifier type is Hardware, enter the MAC address of its network adapter.
Enter the address in hexadecimal and do not use colon notation. For example, you would
enter ``0000c034f152'' rather than ``00:00:c0:34:f1:52''.

Description
An optional short description of the client.

4. To define a static IP address for the client, click on Client. Enter the client's IP address in
dot notation and click on OK. The IP address must not belong to an address pool that has
been configured for dynamic address allocation.

NOTE: Do not define an IP address if you only want to assign specific DHCP options to
the client. DHCP will dynamically obtain an address from the AAS server and assign it to
the client.

5. To configure DHCP options that are specific to the client you are defining, click on
Generic. See ``Configuring DHCP options'' for more information.
6. Click on OK.

Modifying a client option set

To modify a client configuration using the DHCP Server Manager:

1. Select View Clients.


2. Highlight the client you want to change and select Entry Modify.
3. Make the necessary changes and click on OK.

NOTE: You cannot change the Hardware address or the Client identifier type.

Deleting a client option set

To delete a client configuration using the DHCP Server Manager:

1. Select View Clients.


2. Highlight the client you want to delete.
3. Select Entry Delete.
4. When asked to confirm that you want to delete the client, click on OK.
Specifying DHCP server parameters

To specify DHCP server parameters using the DHCP Server Manager:

1. Select Server Edit Server Parameters.


2. You can specify the following parameters:

Initial lease reservation time


Define the time in minutes for which an address is reserved while the server offers it to a
client. The lease begins when the client accepts the address. This reservation period
prevents an address from being offered to more than one client at the same time. The
default value is 10 minutes.

Pad lease by (percent)


Enter the amount of time, as a percentage of the lease, that you want to extend the lease
to allow for clock drift between the server and the client. The default is 1% of the lease.
The unpadded lease is known to the client. The DHCP server knows the padded lease so
preventing the server from thinking that the lease has expired before the client does.

Probe addresses
Specify if you want the server to ping an address before it is allocated to make sure it is
free.

DHCP option overload


Specify if you wish to use option overload. Enabling this option allows the server to use
the sname or file fields to carry DHCP options if the options field is full.

Click on OK.
To specify the location of the Address Allocation Server (AAS) using the DHCP Server
Manager:

1. Select Server Address Allocation Server.


2. If the AAS server runs on the same host as the DHCP server, select Local.

If the AAS server does not run on the same host as the DHCP server, select Remote,
enter the IP address of the AAS server, and enter a password that will authenticate the
DHCP server to the AAS server.

3. Click on OK.

Troubleshooting DHCP
Use these procedures for solving the following problems with DHCP:

 ``Cannot boot client''


 ``DHCP cannot find AAS''
 ``Clients not being configured with all options''

Cannot boot client

If a particular client will not boot, the problem may center on IP address assignment. If the
DHCP server dynamically assigns an address to the client, first check /var/adm/log/syslog and
search for the ``No available addresses'' message. This indicates that all the addresses in the pool
assigned to the client's subnet have been allocated. There are a number of actions you could take:

1. Reconfigure the address pool with more addresses, provided you have unused addresses
available on the subnet. You can use the Address pools button in the Subnet Entry screen
to invoke the Address Allocation Manager.
2. Review the address pool's current allocation information in the Address Allocation
Manager and look for any disabled addresses. Enabling these addresses will make them
available again. See ``Releasing, disabling, and re-enabling addresses'' in "Configuring
the Address Allocation Server (AAS)".
3. Review the allocated addresses in the address pool's current allocation information and
try to identify addresses that you know are not really in use even though they are
allocated. These would probably be addresses with long or infinite leases (lease duration)
which were allocated to temporary network machines such as laptop PCs. (This is the
result of setting a long or infinite default lease time when configuring the subnet for
DHCP.) Release any allocated addresses that are not in use. See ``Releasing, disabling,
and re-enabling addresses'' in "Configuring the Address Allocation Server (AAS)".

After you have increased the number of addresses available in the pool, restart the DHCP client.

Another possibility is that the DHCP client may require certain vendor-specific options to be
provided by the DHCP server so that the client can boot successfully. You must define a set of
vendor-specific options within a vendor class and assign values to these. The data in these
options will be assigned only to DHCP clients which specify the identifier for the vendor class.
The identifier must be defined to be the same as the string that the clients use to identify their
hardware type to the server. The documentation supplied by the hardware manufacturer should
detail the vendor class identifier as well as the DHCP option codes, data types, and values of any
vendor-specific options that the clients will require. See ``Specifying vendor class option sets''
for more information.

DHCP cannot find AAS

If the DHCP server cannot find the Address Allocation Server, that server may be down and
needs to be restarted using the Address Allocation Manager.

Clients not being configured with all options

If a client has been configured with an IP address and DHCP options, but not with all the options
you specified in the DHCP Server Manager, too many options may have been specified for the
client. The DHCP server has a 274-byte practical limit for DHCP options (466 bytes if the
Option Overload feature is enabled). Check /var/adm/log/syslog for one or more messages of the
form ``Option code did not fit in packet''. This indicates that the DHCP server did not send all the
options specified for the client because the total size of all the client's options exceeded the
``options'' field size. Follow the steps below to determine why there may be too many options:

1. Check to see if the option overload parameter is specified in the DHCP server
parameters. Setting this parameter allows the server to use the ``sname'' and ``file'' fields
of the ``offer'' message, which provides an additional 192 bytes for options. See
``Specifying DHCP server parameters''.
2. Check the values configured for the options sent to the client in the appropriate DHCP
option list (subnet, client, user class, vendor class or global). You can specify an array of
values for some options, such as an array of IP addresses for the Routers option. Arrays
that consist of many nonsequential values consume space in the ``options'' field which
excludes options found farther down on the configured list from being sent in the ``offer''
message. For arrays of IP addresses, a single range of addresses consumes the least space.
3. Determine if the client included a ``parameter request list'' in the ``discover'' message by
examining the client's DHCP configuration. These options take precedence over the
options you have configured for the client, subnet and classes in the DHCP Server
Manager. If the options requested by the client are different from the options configured
by you, the total group of options may exceed the size limitation. Depending upon the
total size of all the configured options, the options you've configured which are toward
the bottom of the list may be excluded from the ``offer'' message sent to the client. If this
scenario is true, you will have to select the most important options for the client and
eliminate the less important ones.

For more about DHCP


To obtain more information about DHCP, see the following manual pages:

Manual page Information provided


aasd(1Mtcp) Address Allocation Server daemon
aasd.conf(4tcp) Address Allocation Server daemon configuration file
bootpd(1Mtcp) Internet Bootstrap Protocol server daemon
bootpgw(1Mtcp) Internet Bootstrap Protocol gateway daemon
dhcpd(1Mtcp) Dynamic Host Configuration Protocol daemon
dhcpd.conf(4tcp) Dynamic Host Configuration Protocol daemon configuration file

To get more information about DHCP, see the following Request for Comments (RFCs). For
information on how to obtain RFCs, see ``Obtaining RFCs from the Internet''.

RFC Title
1122 Requirements for Internet Hosts -- Communication Layers
1534 Interoperation Between DHCP and BOOTP
1542 Clarifications and Extensions for the Bootstrap Protocol
2131 Dynamic Host Configuration Protocol
2132 DHCP Options and BOOTP Vendor Extensions

© 2004 The SCO Group, Inc. All rights reserved.


UnixWare 7 Release 7.1.4 - 22 April 2004

You might also like