Troubleshooting DHCP Servers
The most common DHCP server problems are the inability to start the server on the network in a Windows 2000 or Active Directory domain environment or the failure of clients to obtain configuration from a working server. When a server fails to provide leases to its clients, the failure most often is discovered by clients in one of three ways:
The client might be configured to use an IP address not provided by the server.
The server sends a negative response back to the client, and the client displays an error message or popup indicating that a DHCP server could not be found.
The server leases the client an address but the client appears to have other network configuration–based problems, such as the inability to register or resolve DNS or NetBIOS names, or to perceive computers beyond its same subnet.
The following error conditions indicate potential problems with the DHCP server:
The administrator can't connect to a DHCP server by using DHCP Manager. The message that appears might be "The RPC server is unavailable."
DHCP clients cannot renew the leases for their IP addresses. The message that appears on the client computer is "The DHCP client could not renew the IP address lease."
The DHCP client service or Microsoft DHCP service is stopped and cannot be restarted.
The first troubleshooting task is to make sure that the DHCP services are running. This can be verified by opening the DHCP service console to view service status, or by opening Services and Applications under Computer Manager. If the appropriate service is not started, start the service.
In rare circumstances, a DHCP server cannot start, or a Stop error might occur. If the DHCP server is stopped, complete the following procedure to restart it:
To restart a DHCP server that is stopped
Start Windows 2000 Server, and log on under an account with Administrator rights.
At the command prompt, type net start dhcpserver , and then press ENTER.
Use Event Viewer in Administrative Tools to find the possible source of problems with DHCP services.
DHCP Relay Agent service is installed but not working
The DHCP Relay Agent service provided with Multi-Protocol Routing (MPR) does not provide a TCP/IP address from a remote DHCP server.
The DHCP Relay Agent service is running on the same computer as the DHCP service. Because both services listen for and respond to BOOTP and DHCP messages sent using UDP ports 67 and 68, neither service works reliably if both are installed on the same computer.
Install the DHCP service and the DHCP Relay Agent component on separate computers.
The DHCP console incorrectly reports lease expirations
When the DHCP console displays the lease expiration time for reserved clients for a scope, it indicates one of the following:
If the scope lease time is set to an infinite lease time, the reserved client's lease is also shown as infinite.
If the scope lease time is set to a finite length of time (such as eight days), the reserved client's lease uses this same lease time.
The lease term of a DHCP reserved client is determined by the lease assigned to the reservation.
To create reserved clients with unlimited lease durations, create a scope with an unlimited lease duration and add reservations to that scope.
DHCP server uses broadcast to respond to all client messages
The DHCP server uses broadcast to respond to all client configuration request messages, regardless of how each DHCP client has set the broadcast bit flag. DHCP clients can set the broadcast flag (the first bit in the 16-bit flags field in the DHCP message header) when sending DHCPDiscover messages to indicate to the DHCP server that broadcast to the limited broadcast address (255.255.255.255) should be used when replying to the client with a DHCPOffer response.
By default, the DHCP server in Windows NT Server 3.51 and earlier ignored the broadcast flag in DHCPDiscover messages and broadcasted only DHCPOffer replies. This behavior is implemented on the server to avoid problems that can result from clients not being able to receive or process a unicast response prior to being configured for TCP/IP.
Starting with Windows NT Server 4.0, the DHCP service still attempts to send all DHCP responses as IP broadcasts to the limited broadcast address unless support for unicast responses is enabled by setting the value of the IgnoreBroadcastFlag registry entry to 1 . The entry is located in:
HKEY_LOCAL_MACHINE\CurrentControlSet\Services\DHCPServer \Parameters\ IgnoreBroadcastFlag
When set to 1 , the broadcast flag in client requests is ignored, and all DHCPOffer responses are broadcast from the server. When it is set to 0 , the server transmission behavior (whether to broadcast or not) is determined by the setting of the broadcast bit flag in the client DHCPDiscover request. If this flag is set in the request, the server broadcasts its response to the limited local broadcast address. If this flag is not set in the request, the server unicasts its response directly to the client.
The DHCP server fails to issue address leases for a new scope
A new scope has been added at the DHCP server for the purposes of renumbering the existing network. However, DHCP clients do not obtain leases from the newly defined scope. This situation is most common when you are attempting to renumber an existing IP network.
For example, you might have obtained a registered class of IP addresses for your network or you might be changing the address class to accommodate more computers or networks. In these situations, you want clients to obtain leases in the new scope instead of using the old scope to obtain or renew their leases. Once all clients are actively obtaining lease in the new scope, you intend to remove the existing scope.
When superscopes are not available or used, only a single DHCP scope can be active on the network at one time. If more than one scope is defined and activated on the DHCP server, only one scope is used to provide leases to clients.
The active scope used for distributing leases is determined by whether the scope range of addresses contains the first IP address that is bound and assigned to the DHCP server's network adapter hardware. When additional secondary IP addresses are configured on a server using the Advanced TCP/IP Properties tab, these addresses have no effect on the DHCP server in determining scope selection or responding to configuration requests from DHCP clients on the network.
This problem can be solved in the following ways:
Configure the DHCP server to use a superscope that includes the old scope and the new scope.
If you cannot change the primary IP address assigned on the DHCP server's network adapter card, use superscopes to effect scope migration for DHCP clients on your network. Superscope support was added for Windows NT Server 4.0 with Service Pack 2 and is available for Windows 2000 Server. Superscopes provide ease and assistance in migrating DHCP scope clients. To effectively migrate clients from an old scope to a new scope using a superscope:
Define the new scope.
Assign and configure options for the new scope.
Define a superscope and add the new scope and the old scope (that is, the scope that corresponds to the primary or first IP address assigned to the DHCP server on its TCP/IP Properties tab).
Activate the superscope.
Leave the original scope active and exclude all the addresses within that scope.
After renumbering in this manner using superscopes, the DHCP server, upon receiving a renewal request:
Checks to see if the client's IP address belongs to a scope it is aware of. Since the superscope includes the old scope, the server finds the scope and checks to see that this IP address has been marked as excluded.
The server checks if the client lease exists in its database. Since this server previously allocated the lease to this client, it sends a DHCPNack in response to the renewal request.
The client is forced to request a new address (the client broadcasts a DHCPDiscover message).
The server responds to the DHCPDiscover with a lease from the new scope.
The second step in this process (when the server checks the existence of the lease in its database), is what differentiates a renumbering scenario from a using multiple servers on the same subnet:
If the server finds the lease in its database, it sends a DHCPNack to the renewal request.
If the server does not find the lease, it ignores the renewal request.
For more information about using superscopes, see the section "Superscopes."
To migrate to the new scope, you can either deactivate the old scope or exclude all the addresses in the old scope. The server interprets both methods identically.
- Change the primary IP address (the address assigned in the TCP/IP Properties tab) on the DHCP server's network adapter to an IP address that is a part of the same network as the new scope.
For Windows NT Server 3.51, support for superscopes is not available. In this case, you must change the first IP address configured for the DHCP server's network adapter to an address in the new scope range of addresses. If necessary, you can still maintain the prior address that was first assigned as an active IP address for the server computer by moving it to the list of multiple IP addresses maintained on the Advanced TCP/IP Properties tab.