DHCP client may fail to obtain a DHCP-assigned IP address (167014)
The information in this article applies to:
- Microsoft Windows Server 2003, Enterprise Edition
- Microsoft Windows Server 2003, Standard Edition
- Microsoft Windows 2000 Server
- Microsoft Windows 2000 Advanced Server
- Microsoft Windows 2000 Professional
- Microsoft Windows 2000 Datacenter Server
- Microsoft Windows NT Workstation 3.5
- Microsoft Windows NT Workstation 3.51
- Microsoft Windows NT Workstation 4.0
- Microsoft Windows NT Server 3.5
- Microsoft Windows NT Server 3.51
- Microsoft Windows NT Server 4.0
- Microsoft Windows for Workgroups
- Microsoft TCP/IP-32 for Windows for Workgroups
- Microsoft Windows 95
This article was previously published under Q167014 SYMPTOMS
When a DHCP client is moved from one subnet to another, it may fail to
obtain a valid IP address on the new subnet.
RESOLUTION
To work around this problem, do one of the following methods:
- Do not use IP addressing schemes that overlap.
- Run the following commands after you move the client to a new
segment:
Ipconfig /Release
Ipconfig /Renew
MORE INFORMATION
When a DHCP client that has previously had a DHCP-assigned address is
started again, the client goes into an INIT-REBOOT state. The client will
attempt to verify that it can still use the same address by sending a
DHCPRequest packet, populating the DHCP Option Field "DHCP Requested
Address" with the previously assigned IP address.
If the DHCP server remains silent, the client assumes the previous address
is still valid and keeps it. If a DHCP server sends a NACK packet in
response to the DHCPRequest, the client goes into the Discover cycle;
it also requests the previously assigned address in the DHCPDiscover
packet.
When a DHCP server receives a DHCPRequest with a previously assigned
address specified, it first checks to see if it came from the local segment
by checking the GIADDR field. If it originated from the local segment, the
DHCP server compares the requested address to the IP address and subnet
mask belonging to the local interface that received the request.
If the address appears to be on the same subnet, the DHCP server will
remain silent even if the address is not in the range of its pool of
addresses. The DHCP server assumes that the address was assigned by
another DHCP server on the same segment if it is not from its own pool. If
the address fails the subnet mask/IP address check, the DHCP server
checks to see if it came from a Superscope, if one is defined. If not,
the server responds to the DHCPRequest with a NACK packet.
If the client sending the DHCPRequest is requesting an address that appears
to be on the same subnet but was actually assigned with a different subnet
mask, the DHCP server will remain silent and the client will fail to obtain
a valid IP address for the new subnet.
For example, assume the DHCP client obtains address 172.17.3.x with a
subnet mask of 255.255.255.0, and the client is moved to a new segment
where the address of the DHCP server is 172.17.1.x with a subnet mask of
255.255.0.0. When the subnet mask/IP address comparison is done on the DHCP
server, the DHCP server will remain silent, assuming another DHCP server on
the segment assigned the address. If the subnet masks were reversed, the
client would obtain a valid address.
Modification Type: | Major | Last Reviewed: | 12/28/2004 |
---|
Keywords: | kbinfo kbnetwork KB167014 |
---|
|