CHAPTER 16 Client Identification and Fixed-Address Allocation276
Each of these ways of identifying a client has advantages and disadvantages, which
are discussed in the remainder of this section.
Using the dhcp-client-identifier Option
DHCP specifies the dhcp-client-identifier option, which is used to uniquely iden-
tify clients. DHCP clients are expected to send this identifier whenever they commu-
nicate with the server. DHCP allows a client to send this option when it first
contacts a server and requires that if it uses the option once, it must continue to use
it thereafter. If a client chooses to send this option, the server can use the data from
the option to differentiate between clients.
There are some problems with client identifiers. Although the protocol requires that
client identifiers be unique on any given network segment, no mechanism is defined
for ensuring that they actually are unique. RFC 2132 recommends that the DHCP
client identifier consist of a network hardware type and the client’s link-layer address
but permits it to have any value. Many DHCP clients allow users to configure the
client identifier themselves. If a user chooses an identifier that is already in use by
another client, a collision (that is, the use of the same identifier for two or more
different clients) can occur—and the DHCP server treats both clients as if they are
the same. DHCP provides no mechanism for preventing collisions. It is simply up to
the user to ensure that collisions do not occur.
PROBLEMS WITH USING THE LINK-LAYER ADDRESS AS A UNIQUE IDENTIFIER
Most DHCP clients follow RFC 2132’s recommendation with respect to choosing client identi-
fiers. Choosing a client identifier based on a link-layer address can have some negative conse-
quences, however. Consider a typical laptop computer with an Ethernet interface and an
802.11 wireless Ethernet interface; this is an increasingly common configuration because
many laptops come with built-in Ethernet cards and many laptop users want wireless service.
When this computer connects to the network using the wireless interface, the client identifier
is based on the wireless Ethernet adapter’s link-layer address. When the computer connects to
the network via the Ethernet interface, the Ethernet interface’s identifier is used.
This is a problem if the user of the laptop wants a consistent IP address, and it’s also a
problem for sites where the DHCP server is configured to update the DNS (see Chapter 11,
“DHCP–DNS Interaction”). Both the IP address assignment and the DNS information are
based on the client identifier. So when the computer connects to the network, it gets a differ-
ent IP address for its wireless interface than for its Ethernet interface. If the DHCP client or
server is doing DNS updates, the client is not able to have a consistent domain name.
Sites can avoid this problem by configuring their DHCP clients to send a client identifier that
is not based on the link-layer address. To do this, the user must manually configure a client
identifier. Unfortunately, Microsoft DHCP clients prior to Windows 2000 do not provide this
capability. To work around this missing feature, some sites have made nonstandard modifica-
tions to their DHCP servers, to use the host name option as a client identifier. These modifica-
tions are discussed in detail later in this chapter, in the section “Specifying Client Identification
in a DHCP Server.”
020 3273 CH16 10/3/02 4:58 PM Page 276