当前位置: 网站首页>>协议大全>>ARP协议>>

解决ARP欺骗导致小区用户无法上网-ARP故障

时间:2010-10-26 来源: 作者: 点击:
近日某小区有用户反映上网经常出现掉线现象,而当工程人员上门检修时并未发现用户所说的故障现象。后来几天内又多次接到该用户电话反映故障,同时陆续接到该小区其他用户反映有同类故障出现,这时感觉到了事态的严重性。 该小区有一百余户住户,采用光纤+五类线入户方
  

近日某小区有用户反映上网经常出现掉线现象,而当工程人员上门检修时并未发现用户所说的故障现象。后来几天内又多次接到该用户电话反映故障,同时陆续接到该小区其他用户反映有同类故障出现,这时感觉到了事态的严重性。

该小区有一百余户住户,采用光纤+五类线入户方式开通宽带上网,一直比较正常,日常问题均是线路故障或用户操作引起的问题。这次出现的问题影响到该小区的大部分用户,故障出现的时间无任何规律性,并且往往又能自动恢复正常。

并非病毒所致

因为有多个用户反映出现该故障,可以排除用户的线路和机器故障的原因,根据以往经验怀疑是某用户机器中毒,开机后病毒发作发送大量数据包导致局域网通信拥塞使得用户掉线。于是我们将一台电脑安装上Sniffer软件后接入小区局域网,试图找出中毒机器。经过长时间观测,并未发现有任何机器的连接数或发出的数据包异常增多,可仍有用户在我们观测时反映有掉线现象。

查找IP地址冲突点

我们分别更换了位于小区第一级的光纤收发器和交换机,问题仍没有得到解决。既然小区局域网没有发现问题,我们将目光转向了位于机房内的汇聚交换机,怀疑接入该小区的端口性能不良,准备更换端口。该小区接在一台huawei-s3526的16号端口上,登录到交换机上以后,看到出现下面一些提示信息:

 

%1/15/2006 18:32:30-SYSM-5-IP COLLISION:Rcv src IP 10.4.1.50 HTTP://www.cnpaf.net/class/arp' target='_blank'>ARPed 
00-00-6a-60-78-a3 By 00-03-47-52-43-10 resided in port 16
%1/15/2006 18:32:32-SYSM-5-IP COLLISION:Rcv src IP 10.4.1.42 HTTP://www.cnpaf.net/class/arp' target='_blank'>ARPed
00-00-93-64-48-d2 By 00-03-47-52-43-10 resided in port 16
……
%1/15/2006 18:32:35-SYSM-5-IP COLLISION:Rcv src IP 10.4.1.26 HTTP://www.cnpaf.net/class/arp' target='_blank'>ARPed
00-00-34-3d-20-65 By 00-03-47-52-43-10 resided in port 16



信息中提示出现IP地址冲突,显示的端口号正是该小区的接入端口。莫非问题的结症在这里?仔细观察,发现所有提示均表示一个MAC地址为00-03-47-52-43-10的机器与其他机器在IP地址与MAC地址转换的过程中发生了冲突,即所有IP地址均被改成了与00-03-47-52-43-10地址相对应。因为该小区用户采用的是HTTP://www.cnpaf.net/class/dhcp' target='_blank'>DHCP方式分配IP地址,通过认证计费系统查找MAC地址为00-03-47-52-43-10的用户,到该用户家与用户进行沟通,该用户反映从未手动更改过IP地址,上网一直很正常,日常使用中也未感觉到机器有何异样。
我们在其机器上用Netstat等命令查看,也未发现有任何异常连接或过多连接,不同于一般机器中毒状况。后经与用户协商断开该用户与楼栋交换机的连接,长时间观察,小区不再有用户反映掉线,看来掉线的确是由该用户引起的。

木马欺骗HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表

该现象应该是软件方面的问题。将该用户机器硬盘拆下,挂接到另外一台机器上进行扫描杀毒,发现存在十余种病毒,通过查找资料,最终发现肇事者是一个隐藏在外挂中的木马程序。通常来说,木马程序仅仅窃取用户的信息,而这个木马为何会导致其他用户掉线呢?
我们知道,用户访问因特网的数据包必须通过多次路由才能到达目的服务器,目的服务器返回用户的数据包也必须通过多次路由才能回到用户端。数据包路由的第一步是用户机器上填写的默认网关,如果网关出现问题,那么用户是无法上网的。默认网关填写的是IP地址,而用户机器与网关通信时采用的是MAC地址,问题就发生在这里。

我们先了解一下HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP协议。

HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP协议是“Address Resoluti

on Protocol”(地址解析协议)的缩写,在局域网中,网络中实际传输的是“帧”,帧里面有目标主机的MAC地址。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

采用以太网方式接入上网的电脑里都有一个HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表(见表1),表里的IP地址与MAC地址是一一对应的。

表1 HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表

 

主机

IP地址

MAC地址

主机

网关

192.168.16.254

xx-xx-xx-xx-xx-xx

网关

A

192.168.16.1

aa-aa-aa-aa-aa-aa

A



我们以主机A(192.168.16.1)上网为例。当发送数据时,主机A会在自己的HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表中寻找是否有网关的IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.16.254的MAC地址是什么?”网络上其他主机并不响应HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP询问,只有网关接收到这个帧时,才向主机A做出这样的回应:“192.168.16.254的MAC地址是xx-xx-xx-xx-xx-xx”。这样,主机A就知道了网关的MAC地址,它就可以向网关发送信息了。同时它还更新了自己的HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表,下次再向网关发送信息时,直接从HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表里查找就可以了。HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表采用老化机制,在一段时间内如果表中的某一行没有使用,就会删除,这样可以大大减少HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表的长度,加快查询速度。
仔细观察,发现所有提示均表示一个MAC地址为00-03-47-52-43-10的机器与其他机器在IP地址与MAC地址转换的过程中发生了冲突,即所有IP地址均被改成了与00-03-47-52-43-10地址相对应。因为该小区用户采用的是HTTP://www.cnpaf.net/class/dhcp' target='_blank'>DHCP方式分配IP地址,通过认证计费系统查找MAC地址为00-03-47-52-43-10的用户,到该用户家与用户进行沟通,该用户反映从未手动更改过IP地址,上网一直很正常,日常使用中也未感觉到机器有何异样。
我们在其机器上用Netstat等命令查看,也未发现有任何异常连接或过多连接,不同于一般机器中毒状况。后经与用户协商断开该用户与楼栋交换机的连接,长时间观察,小区不再有用户反映掉线,看来掉线的确是由该用户引起的。

木马欺骗HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表

该现象应该是软件方面的问题。将该用户机器硬盘拆下,挂接到另外一台机器上进行扫描杀毒,发现存在十余种病毒,通过查找资料,最终发现肇事者是一个隐藏在外挂中的木马程序。通常来说,木马程序仅仅窃取用户的信息,而这个木马为何会导致其他用户掉线呢?
我们知道,用户访问因特网的数据包必须通过多次路由才能到达目的服务器,目的服务器返回用户的数据包也必须通过多次路由才能回到用户端。数据包路由的第一步是用户机器上填写的默认网关,如果网关出现问题,那么用户是无法上网的。默认网关填写的是IP地址,而用户机器与网关通信时采用的是MAC地址,问题就发生在这里。

我们先了解一下HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP协议。

HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP协议是“Address Resoluti

on Protocol”(地址解析协议)的缩写,在局域网中,网络中实际传输的是“帧”,帧里面有目标主机的MAC地址。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。

采用以太网方式接入上网的电脑里都有一个HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表(见表1),表里的IP地址与MAC地址是一一对应的。

表1 HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表

 

主机

IP地址

MAC地址

主机

网关

192.168.16.254

xx-xx-xx-xx-xx-xx

网关

A

192.168.16.1

aa-aa-aa-aa-aa-aa

A



我们以主机A(192.168.16.1)上网为例。当发送数据时,主机A会在自己的HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表中寻找是否有网关的IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.16.254的MAC地址是什么?”网络上其他主机并不响应HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP询问,只有网关接收到这个帧时,才向主机A做出这样的回应:“192.168.16.254的MAC地址是xx-xx-xx-xx-xx-xx”。这样,主机A就知道了网关的MAC地址,它就可以向网关发送信息了。同时它还更新了自己的HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表,下次再向网关发送信息时,直接从HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表里查找就可以了。HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表采用老化机制,在一段时间内如果表中的某一行没有使用,就会删除,这样可以大大减少HTTP://www.cnpaf.net/class/arp' target='_blank'>ARP缓存表的长度,加快查询速度。
 

------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容
热点内容