减少IP地址分配

预防这种冲突的方法很多,最简单的方法就是在设置DHCP地址池的时候预留一段IP地址不作为DHCP分配之用。比如本案例中,由于固定的客户端数量在60个左右,可以设置DHCP地址池为192.168.0.100~192.168.0.199。把前面99个留给固定网络参数的用户和员工带来的笔记本电脑,后面的IP用于扩展。这样既可以做到井水不犯河水,又符合了DHCP 80/20的设计标准。

由于公司购置了配置较高的服务器用于替换原来的文件存储服务器,因此可以考虑文件服务器安装一些内部网络中常用的网络基础服务,比如DHCP、DNS、WINS等,如图1所示。

DHCP服务器地址可以设置成192.168.0.1 ,新购置的文件服务器地址为192.168.0.2,而企业升级后的路由器内部接口地址变更为192.168.0.254 。与此同时,公司也将告知每一位员工不得采用手工配置IP地址的方法使用客户端网络,尽可能避免IP冲突现象的发生。

图1 原文件服务器充当DHCP

避免IP冲突

DHCP分配地址之前如何检测IP是否已经使用了呢?将这些地址不给客户端分配,就可以杜绝IP地址冲突的现象了,在Windows Server DHCP服务器上启用IP地址冲突检测是最明智的选择。

启用冲突检测,可以在客户端租用到服务器分配的IP地址之前,DHCP 服务器或客户端使用冲突检测功能确定 IP 地址是否已在网络上使用。如果运行 Windows 2003 或 Windows XP 的 DHCP 客户端计算机获得了 IP 地址,那么在完成配置并使用由服务器提供的 IP 地址之前,客户端会使用强制 ARP请求执行基于客户端的冲突检测。如果 DHCP 客户端检测到冲突,它将向服务器发送 DHCP 拒绝消息。在默认情况下,DHCP 服务不执行任何冲突检测。要启用冲突检测,须增加在客户端租用地址之前 DHCP 服务对每个地址执行 Ping 操作的次数。

在Windows服务器上的属性→高级选项卡上,你可以在“冲突检测次数”中,键入2,然后单击确定。

键入的数字决定将其租用给客户端之前 DHCP 服务器测试 IP 地址的次数。请记住,设置冲突检测尝试时,DHCP 服务器在提供给客户端的 DHCP 租约中包含这些地址使用前数据包探测程序以测试可用作用域 IP 地址。探测成功意味着 IP 地址正在网络上使用。因此,DHCP 服务器不将地址租用给客户端。如果探测请求失败和超时,则表明 IP 地址不在网络上使用。在这种情况下,DHCP 服务器将网络没有使用的IP地址租用给客户端,如图2中的前两个IP已经不能使用,所以客户端能够获得的IP地址应该从192.168.0.102 开始。


图2 启用冲突检测后的DHCP地址租约情况

案例三:划分VLAN后的DHCP部署

与上面的那个案例相比,在略大型的网络中,可能会存在多个通过虚拟局域网划分的子网,这就使得DHCP部署要复杂一些。

我们知道DHCP客户机通过网络广播消息获得DHCP服务器的响应后得到IP地址,但广播消息是不能跨越子网的。因此,如果DHCP客户机和服务器在不同的子网内,客户机还能不能向服务器申请IP地址呢?这就要用到DHCP中继代理。

某外国语学校的网络管理员在划分VLAN后却平添了烦恼:原本只有一个DHCP服务器,现在只能对本子网内的客户端分配IP地址,难道要在每个子网都安装一台DHCP服务器吗?图3中显示了划分VLAN之后的网络拓扑图。

应该说VLAN技术的实质就是指网络中的各个站点可以不必拘泥于各自所处的物理位置,而根据需要灵活地加入不同的逻辑子网中的一种网络技术。VLAN是将局域网内的设备逻辑地而不是物理地划分成网段,从而实现虚拟的工作组,它可以帮助网络管理者将处于相同LAN网段部门)的客户端进行分组。表1是网络管理员在原基础上划分子网的结果。


图3 某外国语学校网络拓扑图

不能获得IP

在企业网络中,DHCP、VLAN是两项应用极其普遍的操作。利用DHCP可以让网络里的客户端自动获得IP信息,免去了网管员手工设置的重复操作;同样给网络划分VLAN可以减少同一广播域内客户端的数量,从而有效防止广播风暴等故障的出现。

但是,在默认情况下这两项服务却水火不相融,因为DHCP不能工作在多VLAN中。DHCP客户机与服务器之间进行尝试的第一步就是在整个VLAN内以广播形式发布的,如果客户机分散在多个VLAN中,那么DHCP发出的广播信息就无法在多个VLAN中进行广播。服务器都没有接到客户发出的请求,当然也不会给你提供服务。

那么,是不是这就意味着没有解决方案呢?其实不然,在 TCP/IP 网络中,路由器用于连接被称作“子网”的不同物理网段上使用的硬件和软件,并在每个子网之间转发 IP 数据包。要在多个子网上支持和使用 DHCP 服务,连接每个子网的路由器应符合 RFC 1542 中所描述的 DHCP/BOOTP 中继代理能力。


相关内容