在网络做大型数据交换中,尤其是对于局域网络来说,DHCP的压力是很大的,很多企业对于这方面的设备的管理总会投入大量的人力和财力,以便能保证网络的正常运转。其实,我们可以通过负载均衡功能来化解这方面的问题,那么我们就来通过Cisco的解决方案看看具体的相关内容吧。
思科DHCP服务解决方案
对于有近千个信息点的内网来说,如果采用手工的地址分配方案将带有巨大的管理负担和维护成本,尤其是在网络实施用户身份认证及动态VLAN划分时,静态地址分配更不可行,因此大型的局域网一般采用DHCP动态地址分配方案,但传统的DHCP地址分配方案在安全性、可靠性、负载均衡能力等方面存在诸多问题,思科创新的DHCP地址分配方案CNR(Cisco Network Register)可很好地解决上述问题,并支持TFTP和DNS等其它服务。
1)DHCP Server分布式设计Cisco D
在网络的两台核心交换机部署两个Cisco DHCP CNR Server,这两台DHCP Server通过双网卡连接上来,此外HCP CNR Server可以实现负载均衡和故障切换,将整个IP地址池的80%由这两个Server负责,20%的地址池由另外楼层的2个DHCP Server负责。
DHCP分配的80/20规则:
为了避免重复地址分配,通常采用了80/20的规则,本地部署一台DHCP Server,负责某一地址范围的80%,远程部署另外一台DHCP Server负责某一地址范围的20%。假如分给某网段的地址范围是10.1.1.0/24,则10.1.1.1-10.1.1.200由本地的DHCP Server负责,10.1.1.201-10.1.1.253由远程的DHCP Server负责80/20规则的前提基于如下假设:
当本地的DHCP Server发生故障时,因两组DHCP服务器地址分配数据库的实时同步操作,很多已经得到IP地址的主机的租期并没有过期,无需申请地址,只有少数新连接的主机需要申请IP地址,由远程DHCP Server赋予。
2)DHCP Server的冗余与负载均衡
传统方式的简单DHCP冗余措施
通常的设计的情况时在中心放置2个DHCP Server,两个DHCP Server没有任何冗余协议,为了防止不同的Client得到重复的IP地址,为这两个Server分配不同的地址池。
简单的DHCP冗余存在的问题:
◆IP地址空间不足
当有一个DHCP Server发生故障时,只有另外一个Server的地址空间提供服务,但是为了防止IP地址冲突,两个Server地址池一定不一样,因此另外一个地址空间只能分配给一个网段的一半。
◆PC的连接不能永远提供在线连接,可能会中断后在连接
当有一个DHCP Server发生故障后,当从此Server获的client的IP地址到期时,它不能得到新的IP地址续用,它就会中断连接,重启动DISCOVERY过程,引起网络连接中断一段时间。
Cisco DHCP Failover协议
为了解决上述不足,Cisco向IETF提交了一份草案并申请IETF考虑作为标准,目前Cisco's failover protocol已经成为IETF DHCP工作组构建标准DHCP Redundcy协议的基础。
草案draft-ietf-dhc-failover-12.txt的作者Cisco Syetems的杰出工程师,他目前是IETFDHCP工作组主席。在此工作组模型中,分为Primary DHCP Server和Secondary DHCP Server,Primary DHCP Server和Secondary Server存在协议交互,Secondary Server平时轮询Primary Server以确认其是否工作,如果工作正常,Seconday Server并不对Client发出的DHCP请求作出响应,Primary Server会将它的DHCP数据库同步更新给Secondary Server.Cisco Network Registrar6.2软件采用了Cisco DHCP Safe Failover Protocol实现了DHCP Server的冗余。
DHCP Server的负载均衡
RFC 3074定义了根据MAC地址实现一种DHCP Server负载均衡的算法,它能够将不同的MAC地址的DHCP请求发送给不同的DHCP Server,因此实现了DHCP Server的负载均衡,Cisco DHCP Server支持RFC 3074,因此能够实现在冗余切换和负载均衡。