Hope this post finds you in good health and spirit. Today we are going to discuss IP address conflict detection by DHCP server and process to configure it.
Two machines should not have same address within network and it can lead to address conflict. To solve this problem DHCP has built-in mechanism that enables client to ping IP assigned to it. If client is able to ping IP, it will assume that IP is present in network and is being used by other machine hence it will not accept IP and will send “Decline” message to server. Server will mark that IP address as bad IP, will put record in database and lease new IP to client. Let’s summarize the process:
- Client ping proposed IP and send decline message if it is in use.
- Server mark IP as bad and will make its entry in database.
- New IP is leased to client.
As you see this whole process is multi-step so can take lot of time. To speed up the process of conflict detection, its responsibility can be assigned to server. Once server is assigned with this responsibility, its work process is same as client. Server will ping the IP and will only assign IP to client if it will not receive any response from network.
When conflict detection is configured on server, there is a setting to specify how many ping packets will be sent in network before assigning IP to client. Best practice is to keep this number not more than 2 as more number of packets can delay the process. To configure this setting you can use GUI or command line. Steps to configure conflict detection is as under:
- Open DHCP console.
- In the console tree, expand console and click on IPv4.
- On the Action menu, click Properties.
- Click the Advanced tab.
- For Conflict detection attempts, type a number and then click OK.
By Command prompt
Netsh DHCP Server set detectconflictretry <no of attempts>
To confirm entry you can use
Netsh DHCP Server show detectconflictretry
Wasn’t it straightforward?
So that’s all in this blog. I will see you soon with some other technical stuff. Till then take good care of yourself and I will go out to enjoy my “Sunday”. Bye.