会员登录 注册新帐号电脑店行业门户 | U盘启动工具

首页

探讨DHCP服务故障

发布时间:2012-07-13 08:53     点击:    关注官方微博:

熟悉网络管理的朋友对DHCP服务并不陌生,它给我们的网络管理带来极大的方便,只要在DHCP服务端配置好,可以让终端用户快速方便上网,无须作任何参数设置。

  但如果配置不当,架设不正确,它会让我们的网络不通,而且查找起来很麻烦了。下面以本人工作所遇到故障为例,相信也是大多网管经常碰到的,从故障现象、故障原因、故障排除几方面加以分析。

  一、故障现象:

  网络用户反映:网络连接正常,而且还可以访问到部分办公室计算机了,但就是上不了网。

  我们查看了一下故障,发现故障现象也很明显,即上不去网的用户获得了一个以192.168.1打头的IP地址,网关为192.168.1.1(我们单位的路由器IP是的192.168.0.1),这明显是通过一台非法搭建的路由器获得的IP地址,随后我们在该用户计算机的浏览器上登录192.168.1.1这个地址,即打开了一台宽带路由器的管理界面,好在这台路由器的用户名/密码是默认的admin/admin,我们登陆进去,将该路由器的DHCP功能关闭,进行完以上操作后整个办公室的网络又稳定了一段时间,但是前几天又有用户反映说是上不去网了,我们查了一下,故障现象跟上次的一样,但是由于这次路由器被更改了登陆密码,所以我们不能通过关闭该路由器的DHCP功能来解决问题了,这次到了彻底解决问题的时候了,一定要在局域网中揪出这台私自为用户分配IP地址的宽带路由器,才有可能保证局域网的安全稳定运行。

  二、故障原因分析:

  如下图所示:

  一般来讲,网络用户通过网络设备(交换机或其它)连接到路由器A,并通过DHCP服务获取上网的相关参数.即可上网.但随着网络用户的增多,尤其是笔记本用户,无了实现无线上网,在很多办公室都架设一个无线路由共享上网。这样就导致网络中其它的用户也就可能从这个无线路由获取IP了。这里有两种情况

  1、无线路由器默认的DHCP服务是打开的,而且网关是192.168.1.1。一般用户只设置了无线网络参数,这样网络用户就从它获取了IP,导致在小范围的局域网是通的,但与外网不通了,不能上网。

  2、情况跟上面一样了,但稍稍有点网络知识的人就知道分别设置一下LAN端口和WAN端口网络参数,这样导致同样IP是192.168.1打头的用户确可以上网了。即便这样,从技术上完全可以的,但从网络管理上来讲是不科学的,因为它没有必要架设一个路由,增加网络运行负担了。

  三、故障排除

  1、加强网络配置管理规范化。

  (1)、作为一个合格的网络管理员,技术固然是重要的。但规范的管理可以减少很多不必要的麻烦。那就是凡是私自增加网络设备的用户要经网管同意,在他技术指导下完成网络设备的设置。

  (2)、使用固定的IP地址

  这种方案可以彻底解决非法DHCP服务的危害,因为网络用户都是固定的IP,不会自动获取IP了。缺点是很多笔记本用户由于上网环境不同,要经常更改参数了。

  少数网络用户很难记住为自己计算机分配IP地址,而且如果出现IP地址冲突之类的故障,又增加了排查冲突IP故障难度。

  不过这个方案只要管理得当,每位网络用户认真遵守自己固定的IP,应该是一种不错的办法。而且不怕任何网络用户自己私自接宽带路由器。

  (3)、通过PPPOE的形式上网

  这种形式有很多的好处,由于局域网用户上网时不是通过DHCP的方式(当然也不用设置静态IP地址),而是通过PPPOE拨号获得一个IP地址,这样就不会受到非法的DHCP服务器的干扰了。

  其实PPPOE服务器的好处不仅如此,一来架设一台PPPOE服务器不是一件容易的事(不怕一般用户无意恶意为之了),二来通过PPPOE的方式上网,局域网内也不会发生ARP地址欺骗攻击的问题了。:

  2、通过各种技术手段排除故障

  (1)、临时性排除

  1、通过命令释放再获取IP参数

  ipconfig /release 和 ipconfig /renew

  我们可以通过多次尝试广播包的发送来临时解决这个问题,直到客户机可以得到真实的地址为止。即先使用ipconfig /release释放非法网络数据,然后使用ipconfig /renew尝试获得网络参数,如果还是获得错误信息则再次尝试/release与/renew直到得到正确信息。

  提醒:这种方法治标不治本,反复尝试的次数没有保证,另外当DHCP租约到期后客户端计算机需要再次寻找DHCP服务器获得信息,故障仍然会出现。

  2、设一个固定的IP

  先给网络用户设一个固定的IP及网关、子网掩码、DNS,可能确保暂时上网了。

  (2)、“揪”出非法的DHCP服务

  1、DHCP服务器也充当着网关的作用,如果获得了非法网关地址,也就是知道了非法DHCP服务器的IP地址。通过ping (非法的DHCP服务)IP,通过arp -A查出MAC地址。知道了MAC地址,就可以在路由器中屏蔽这个MAC,或者是屏蔽该MAC的68端口。

  2、如果是设置了无线路由的路由功能,那么通过以上方法查找的只能是无线路由器的LAN的MAC,而在中心路由器A中所能控制的只能是它的WAN端口了。这里提供一个小技巧:一般来讲,无线路由器的LAN端口MAC和WAN端口MAC是连着的,即最后二位数是连着的。如下图所示

  其实我们在方法1得到的MAC是LAN的,但要在中心路由器A要封掉的MAC应该是WAN MAC了。这样只要在中心路由器A的ARP缓存表找到与LAN MAC最接近的MAC即是了。

  三、从技术上限制非法DHCP的产生

  1、通过“域”的方式对非法DHCP服务器进行过滤

  将合法的DHCP服务器添加到活动目录(Active Directory)中,通过这种认证方式就可以有效的制止非法DHCP服务器了。原理就是没有加入域中的DHCP Server在相应请求前,会向网络中的其他DHCP Server发送DHCPINFORM查询包, 如果其他DHCP Server有响应,那么这个DHCP Server就不能对客户的要求作相应,也就是说网络中加入域的DHCP服务器的优先级比没有加入域的DHCP服务器要高。这样当合法DHCP存在时非法的就不起任何作用了。

  提醒:这种方法效果虽然不错,但需要域的支持。要知道对于众多中小企业来说“域”对他们是大材小用,基本上使用工作组就足以应对日常的工作了。所以这个方法,效果也不错,但不太适合实际情况。

  2、在路由交换设备上封端口

  DHCP服务主要使用的是UDP的67和68端口,DHCP服务器端应答数据包使用68端口,67端口为客户机发送请求时使用。所以我们可以在路由器上保留服务器的68端口,封闭客户机的68端口,就能达到过滤非法DHCP服务器的目的。

  提醒:如果计算机很多的话,操作起来不方便,而且会增加路由器的负担,影响到网络速度。

  凡是提供DHCP服务的服务器都必须设置固定IP地址,想在动态获得IP信息的计算机上启用DHCP服务是不可以的。而且虽然微软公司在限制DHCP服务上做了规定,例如同一个网络中不容许两台DHCP存在。

  但是目前有很多第三方软件可以建立DHCP服务器,甚至是宽带路由器也将DHCP功能集成于自身配置中,因此在这种情况下就无法清楚的查询出网络中到底存在几个DHCP服务器了,我们只能将怀疑对象一一关闭或者在交换机及路由器上将怀疑对象进行访问控制列表过滤。总之网络中存在非法DHCP服务器引起的网络故障是非常难解决的,需要反复调查循序渐进。

  反思:为什么不能让网络用户的设备只能从指定的DHCP服务器获取地址?

  这个功能我想是大多数网络管理员都非常向往的,在一次次追查那台“非法”的宽带路由器未果的时候,我们就在想,如果终端设备上能够设置只通过指定的DHCP服务器获取IP地址的话,这样终端设备就不会被那台宽带路由器所干扰,我们也就不用找得这么辛苦了。 

★★★ 电脑店行业门户(www.diannaodian.com)独家文章,欢迎大家转载 ★★★