鸿 网 互 联 www.68idc.cn

如何保护合法的DHCP服务器

来源:互联网 作者:佚名 时间:2015-06-02 23:57
具有一定规模的企业网络 一般会部署DHCP服务器来为客户端提供网络服务 这大大方便了网络管理 客户端连入网络后会发送DHCP请求包 DHCP服务器会应答并提供IP地址 子网掩码 网关 DNS等信息 但是 而当网络中出现另外一台非法的DHCP服务器将会怎样呢?显而易见 这

  具有一定规模的企业网络一般会部署DHCP服务器来为客户端提供网络服务这大大方便了网络管理客户端连入网络后会发送DHCP请求包DHCP服务器会应答并提供IP地址子网掩码网关DNS等信息但是而当网络中出现另外一台非法的DHCP服务器将会怎样呢?显而易见这必然造成网络的混乱内鬼难防下面笔者结合自己的经验谈谈如何在局域网中保护合法的DHCP服务器

  客户端不断请求

  既然广播包会发向网络中的所有设备合法还是非授权服务器先应答是没有任何规律的那么我们可以通过多次尝试广播包的发送来临时解决这个问题直到客户机可以得到真实的地址为止

  客户端在命令行中先敲入命令ipconfig /release释放非授权网络数据然后输入命令ipconfig /renew尝试获得网络参数如果还是获得错误信息则再次尝试上面两条命令直到得到正确信息不过这种方法治标不治本反复尝试的次数没有保证一般都需要十几次甚至是几十次另外当DHCP租约到期后客户端需要再次寻找DHCP服务器获得信息故障仍然会出现

  通过DC对DHCP授权

  一般我们使用的操作系统都是Windows微软为我们提供了一个官方解决办法在windows系统组建的网络中如果非授权DHCP服务器也是用Windows系统建立的话我们可以通过的方式对非授权DHCP服务器进行过滤将合法的DHCP服务器添加到活动目录(Active Directory)中通过这种认证方式就可以有效的制止非授权DHCP服务器了

  原理就是没有加入域中的DHCP Server在相应请求前会向网络中的其他DHCP Server发送DHCP INFORM查询包如果其他DHCP Server有响应那么这个DHCP Server就不能对客户的要求作相应也就是说网络中加入域的DHCP服务器的优先级比没有加入域的DHCP服务器要高这样当合法DHCP存在时非授权的就不起任何作用了

  授权合法DHCP的过程如下开始→程序→管理工具→DHCP选择DHCP 用鼠标右键单击选择添加服务器然后浏览选择需要认证的服务器添加按钮 输入要认证的DHCP服务器IP地址 完成授权操作 (图)

  

    这种方法效果虽然不错但需要域的支持要知道对于众多中小企业来说对他们是大材小用基本上使用工作组就足以应对日常的工作了所以这个方法是微软推荐的效果也不错但不太适合实际情况另外该方法只适用于非授权DHCP服务器是windows系统对非Windows的操作系统甚至是NT这样的系统都会有一定的问题

  在路由器/交换机上封杀

  有的路由交换设备自身功能比较强例如具有extreme功能他可以自动抑制非授权dhcp的数据包如果没有extreme功能我们如何提前预防非授权DHCP服务器的接入呢?

  首先需要对DHCP数据包使用的端口有所了解DHCP服务主要使用的是UDP的端口服务器端应答数据包使用端口端口为客户机发送请求时使用所以我们可以在路由器和交换机上通过访问控制列表来屏蔽除合法DHCP服务器以外的所有DHCP应答包也就是说将端口封闭具体命令为accesslist deny udp any eq any (图)

  

  这种方法只对于WINDOWS操作系统的DHCP服务器有效对于在其他操作系统上建立的DHCP服务器则无法完全过滤而且大量的ACL也会降低路由交换设备的性能使网络速度受到一定的影响

  另类方法干扰

  在实际使用中笔者发现了一个另类的方法该方法和上面介绍的消极防范结合起来使用效果还算不错这个方法就是只要知道非授权的DHCP的IP找台电脑设置和他同样的IP能降低非授权DHCP发放的数量这样在执行ipconfig /release和ipconfig /renew时获得合法网络信息的概率大大提高

  实施屏蔽

  第一步知道了非授权DHCP服务器的IP地址后使用ping a ip来反向查看他的计算机主机名根据ARP命令查询该计算机对应的MAC地址也可以到合法DHCP服务器上查看缓存池中该IP对应的MAC地址 知道了MAC地址后登录交换机执行show mac add显示所有MAC地址与交换机端口的对应关系(图)

  

    (提示屏蔽非授权DHCP服务器一定要从MAC地址来入手因为IP地址可以修改而且自动获得IP的方法很多获得的参数也会产生变化)

  第二步我们就可以从显示的对应关系列表中查看到该MAC对应的端口号了如果端口比较多还可以使用sh mac address add c这样的格式来查询c这个MAC地址对应的端口(图)

  

    第三步找到对应的端口后通过int命令进入该接口然后使用shutdown关闭该接口从而阻断了该计算机与外界的联系

  利用这种方式屏蔽非授权DHCP服务器当使用的是集线器连接下方设备时会在交换机上的一个端口学习到多个MAC地址如果我们直接将该端口通过shutdown命令关闭的话则集线器连接的所有设备都无法使用网络了遇到这种情况我们可以使用基于MAC地址的访问控制列表来控制(图)具体命令为

  

       mac accessslist extended gslw
  deny host c any
  permit any any
    
    

  

  然后在进入非授权DHCP所在的交换机端口执行如下命令mac accessgroup gslw in设置完毕后就阻止了MAC地址为c的计算机对外网的访问而又不影响连接到同一台集线器上的其他设备

  总结DHCP是网络中的关键服务器做好它的安保至关重要希望上面的安防措施对大家有所帮助

网友评论
<