issue with DHCP Server for Eudemon200E-X

Publication Date:  2013-09-26 Views:  385 Downloads:  0
Issue Description
This topology is as follows.

The version of Eudemon200E-X is V300R001C00SPC900.
The configuration related with DHCP Server is as follows:
#
dhcp server forbidden-ip 10.3.0.1 10.3.6.255
dhcp server forbidden-ip 10.3.10.0 10.3.255.255
#

dhcp server ip-pool 1
network 10.3.0.0 mask 255.255.0.0
gateway-list 10.3.10.11
dns-list 10.1.0.1
#
interface GigabitEthernet0/0/1
description Connected to HQ Users
ip address 10.3.10.11 255.255.0.0
#

That means that the valid range for the hosts to pick up IP addresses is from 10.3.7.0 to 10.3.9.255
From the pervious, the customer can conclude that the valid IPs that can be assigned to the hosts are approximately 255*3 = 765 IP.
The problem is that the customer found no available IPs to withdraw from the DHCP pool. When he used the command “display dhcp server free-ip” he found that there was only on IP address available in the free-ip link.
Alarm Information
None
Handling Process
(1) We recommended the customer to input the command “reset dhcp server ip-in-use all”, and found no IP in the result of the command “display dhcp server ip-in-use”. The result of command “isplay dhcp server free-ip’ is as follows:
<Eudemon200E>display dhcp server free-ip
21:10:59  2013/09/23

IP Range from 10.3.7.28            to  10.3.7.31
IP Range from 10.3.7.55            to  10.3.7.55
IP Range from 10.3.7.71            to  10.3.7.71
IP Range from 10.3.7.119           to  10.3.7.119
IP Range from 10.3.7.131           to  10.3.7.131
IP Range from 10.3.7.138           to  10.3.7.138
……
From the above result we can see that the range from 10.3.7.0 to 10.3.9.255 is not totally available ( number of IPs ≠ 765 ).
(2) From the product document, we can see this content in the DHCP Server chapter:
Sequence of IP address allocation
The DHCP server assigns IP addresses to clients in the following sequence:
1. IP address in the database of the DHCP server that is statically bound with the client's MAC address
2. IP address assigned to the client before, that is, the IP address in the requested IP Addr option of the DHCP Discover packet sent by the client
3. IP address specified in the Option 50 (IP address option) field in the DHCPDISCOVER packets sent by the client.
4. IP address first found when the server searches for available IP addresses in the DHCP address pool
5. If the DHCP address pool has no available address, the DHCP server searches the timeout IP addresses and the conflict IP addresses in turn for the unused IP address and assigns the unused IP address to the client. If all the IP addresses are used, the server sends an error message.

From above , we can conclude that if an IP in the DHCP address pool  is not in use or  belongs to free-ip, it might be in the timeout IP addresses link or the conflict IP addresses link.
In other words, we can find an IP in the DHCP address pool in one of the follow four commands:
display dhcp server expired
display dhcp server free-ip
display dhcp server ip-in-use
display dhcp server conflict

In this issue, when the customer used the command “reset dhcp server ip-in-use all”, some IP addresses were not seen by “display dhcp server free-ip” and “display dhcp server ip-in-use”,
they probably can be seen in the command “display dhcp server expired” or “display dhcp server conflict”

PS: But for the version Eudemon200E-X3 V300R001C00SPC900, there is little bug with the result for the command “display dhcp server conflict”, the result can’t be shown correctly .
       We have realized this little bug and will solve it in the next version.
If there is no IP in the conflict link, the result is like this:
<Eudemon200E>display dhcp server conflict all
11:11:10  2013/09/26
Info:No ip conflicted!

And if the conflict link is not null, the result is like this now, which is a bug.( The IP address is in the conflict link, only the result shown is not correct)
<Eudemon200E>display dhcp server conflict all
11:13:01  2013/09/26
       Address             Discover time

But this little bug has no impact on the IP allocation. 
We ask the customer to use this command “reset dhcp server conflict” to clear the conflict link and all the conflict IP addresses will move to free-ip link, then the conflict IP can be seen by the command “display dhcp server free-ip”.
Root Cause
(1) The IP addresses are in other links.
(2) Software bugs.
Suggestions
After configuring DHCP Server in Eudemon200E-X, the IP in the DHCP IP pool can be seen in one of the four commands:
display dhcp server expired
display dhcp server free-ip
display dhcp server ip-in-use
display dhcp server conflict

END