DHCP易忽视的上限值
2019-08-28北京赵振涛
■ 北京 赵振涛
编者按:笔者单位出现因交换机DHCP服务中IP地址绑定超过限值的情况,导致单位很多员工IP地址冲突等问题,本文将讨论交换机的DHCP服务的上限值问题。
图1 查看租期内的绑定信息
笔者所在单位网络环境用户数不足千人,在IP地址使用管理上,少量的有线用户采用固定IP形式,无线用户部分采用DHCP自动分配IP地址,使用无线核心交换机(迈普S8900)做DHCP服务,二次认证采用城市热点认证计费系统,以Portal方式进行认证,由于未采用无感知认证技术,认证以设备的IP地址作为认证对象。
无线项目实施过程中发现一个问题,一些品牌手机用户在行进中,经过2个AP切换时,会重新申请获得新的IP地址,这样就导致上网时因IP地址的改变进行再次认证,实施方对这种情况也没有较好的解决方案。
为减少移动用户的频繁认证,采取了一个临时的方案,在DHCP为设备分配IP地址后自动进行IP地址和MAC地址的绑定,但需要定期处理。
网络在运行一段时间之后,某日上午,某使用部门反映说不少用户所使用的设备不能正常的获取到IP地址,通过提示分析怀疑与DHCP服务有关系,登录到核心交换机查看交换机当前的运行配置:
wuxianhexin#sh run
(忽略与DHCP无关部分)
ip dhcp pool yewu
network 10.13.128.0 255.255.128.0
default-router 10.13.128.1
dns-server 221.130.33.52 211.99.129.210
lease 15 0 0
bind automatic
bind 10.13.128.18 708a.0968.f7ef
bind10.13.128.61 64cc. 2e0e.fe72
bind 10.13.128.73a4ca.a09d.36e3
bind 10.13.128.27 acc1.eeca.b8f6
……
DHCP服务配置信息正确,地址池总IP地址数为32766,对于不足千人的小单位使用上绰绰有余,租期为15天,分配即自动绑定IP和MAC地址。但发现自动绑定的数量非常大不便于统计,于是通过统计命令进行查看:
wuxianhexin#sh ip dhcp pool-binding
Bindings: 4096
查看租期内的绑定信息,如图1所示。
通过查询发现当前已分配681个IP地址,而系统自动绑定数为4096个,出于对4096这个数值的敏感,怀疑会不会是自动绑定数据达到上限而不能正常分配了,查询设备的命令手册和咨询厂家客服也没有关于这一数据范围的说明,于是将当前配置导出,所有绑定的信息导入到EXCEL文件中,与认证系统中的在线用户和历史上网用户IP地址信息进行比较,筛选出那些只连接了无线AP却没有使用网络的IP地址绑定信息。通过删除绑定命令进行删除:
wuxianhexin# configure terminal
wuxianhexin(config)#ip dhcp pool yewu
no bind X.X.X.X
需要注意的是用以上命令是不能解除租期内的IP地址绑定信息,对这部分设备需要使用以下命令进行解除绑定:
wuxianhexin#clear ip dhcp binding X.X.X.X
通过删除部分IP地址绑定信息后再联系该部门,回复可以上网了,但不能确定一定是这个原因导致了不能上网。
图2 批处理内容
后经迈普设备厂家研发人员确认,自动绑定的数目限制就是4K,S8900型号交换机不适合提供大容量的DHCP服务。出于综合的考虑,建议实际使用中绑定终端数不要超过2K。当超过绑定的4K限值后,正常情况下地址池中仍有未分配的地址,DHCP仍可以继续分配IP地址。经认证系统查询发现当绑定值超过4K,一些手机又开始了不断更换IP地址,频繁认证,只不过是用户没有反映这种情况。
为及时了解IP地址绑定信息,笔者结合脚本语言制作了批处理程序,加入启动程序组,每天开机自动检查绑定信息,批处理内容如图2所示。
如何避免DHCP服务中IP地址绑定超过限值的情况,最理想的方案是采用无感知认证,对于未采用无感知技术,又想减少频繁认证,就只有加强DHCP维护,比如可以延长租期,定期统计绑定数量,当数据接近建议值时,将绑定的IP地址信息与当前分配(租期内)IP地址进行比较,删除那些不在租期内的IP地址。
总而言之,交换机毕竟不是提供DHCP服务的专用设备,IP地址绑定服务容量有限,适用于网络人数较少的情况,使用时一定要了解其上限值,根据使用情况定期的检查和维护。