FAQ--地址池中出现冲突状态IP地址的原因?

发布时间:  2016-09-28 浏览次数:  155 下载次数:  0
问题描述

查看地址池信息,有时能看到冲突状态的IP地址,为什么会出现冲突状态的IP地址,有什么影响,以及如何避免出现这种情况。

<S9306>display ip pool interface vlanif1950 all

Pool-name      : vlanif1950

Pool-No        : 8

Lease          : 1 Days 0 Hours 0 Minutes

Domain-name    : -

DNS-server0    : 211.137.191.26  

DNS-server1    : 218.201.96.130  

NBNS-server0   : -               

Netbios-type   : -               

Position       : Interface       Status           : Unlocked

Gateway-0      : 10.0.44.1       

Mask           : 255.255.252.0

VPN instance   : --

-----------------------------------------------------------------------------

Start           End     Total  Used  Idle(Expired)  Conflict  Disable

-----------------------------------------------------------------------------

10.0.44.1     10.0.47.254  1021   396      481(299)       142        2

-----------------------------------------------------------------------------

解决方案

DHCP检测IP地址冲突有两种机制:

1、DHCP服务器ICMP探测。DHCP服务器收到DHCP discover报文,应答DHCP offer报文前,发送ICMP报文探测冲突,如果能收到ICMP应答,则认为该IP已经被其他用户占用,DHCP服务器将该IP设置为冲突状态,等待客户端重传DHCP discover报文后分配其他IP;

2、DHCP客户端免费ARP探测。DHCP客户端两步上线或四步上线时,收到DHCP ACK报文后,发送免费ARP,如果收到ARP应答则认为IP已被其他用户占用,DHCP客户端发送DHCP decline报文给DHCP服务器并重新四步上线申请IP地址,DHCP服务器收到DHCP decline报文后将该IP设置为冲突状态。


出现IP地址冲突可能有以下原因:

原因1:静态IP用户手动配置了此IP地址。DHCP服务器部署没有把此IP地址从地址池中排除出去,造成冲突。

定位方法:在DHCP服务器ping该冲突IP,如果能ping通,查找该IP的ARP表项,查找对应的MAC地址,确认该MAC是否配置了静态IP。

解决方法:通过excluded-ip-address命令在地址池中排除该地址。

原因2:地址池信息被清空过。比如设备掉电重启、reset地址池、删除地址池等导致地址池信息被清除的操作。

定位方法:查看设备日志,搜索reset、ip pool等关键字,确认是否有清除、删除地址池等操作。

解决方法:如果设备可能有重启操作,可以配置dhcp server database enable命令将地址池信息存盘,

同时配置dhcp server database recover命令使设备重启时恢复存盘的地址池信息;如果有reset地址池或删除地址池等操作,需要等待用户到租期后主动释放该IP。


影响:

地址池检测到冲突IP时,会分配其他空闲的IP地址,避免网络中出现IP冲突,是对网络IP冲突的提前防护,一般不必关注。地址池中出现少量冲突状态IP地址,说明网络中可能存在固定IP的用户,建议将该地址从地址中排除。地址池中出现大量冲突状态IP,说明地址池信息被清除过。建议减少或避免清除地址池信息,如果设备经常掉电重启,建议配置地址池存盘功能。


END