【IT168专稿】基本上每天企业网络管理员都要和企业内部网络的病毒打交道,在众多种类的病毒中又以蠕虫病毒危害最大清除最为困难,笔者最近也遇到了相同的问题,整个分析和解决过程比较系统和规整,在这里详细介绍给各位IT168的读者,希望各位可以在日后遇到同样问题时采用相同方法解决。
一、发现内网问题
企业内部有五十多台员工计算机,平时上网一切正常,然而本周一开始就出现了网络频繁中断的现象。主要表现为可以正常上外网,但是间隔5分钟到10分钟后就无法上网了,QQ无法登录浏览器也无法正常访问页面。
笔者所在公司使用的是光纤连接,以前也出现过因为光链路偶尔故障而短暂断线的问题,不过等待一段时间后就完好无损了。这次出现的频繁断线问题确实在以前没有遇到过。
二、分析内网故障
企业内网计算机的IP地址段为10.91.30.*,子网掩码为255.255.255.0,网关地址是10.91.30.254。为了判断是否是光纤链路故障,笔者在断网时使用ping 10.91.30.254来查看到网关的连接情况,因为企业网关是一台核心交换机,所有计算机都连接到这台核心交换机上并通过其光模块连接外部光纤。如果能够ping通核心交换机则说明问题不在内网而在于交换机自身以及光纤;如果不能够ping通则说明是内网或交换机接口有问题。
通过命令行模式ping 10.91.30.254后笔者发现在断网情况下检测是不通的,说明问题不在光纤。检查交换机并在交换机上ping相应的接口也没有发现任何不妥,于是笔者认定问题的根源在于内网,并将关注的焦点直接放到了病毒身上,因为这种时段时续的问题排除线路或物理损坏因素外最大的可能就是由病毒引起。
三、进阶检测内网故障
病毒造成企业内网所有计算机都无法顺利访问网关是ARP欺骗的最典型表现,所以笔者认定本地故障也是由ARP欺骗蠕虫病毒引起。于是在断网ping 10.91.30.254不通的情况下在本机执行arp -d命令清除ARP缓存表后就可以顺利ping通网关地址了。
通过清除ARP缓存表能够ping通网关进一步印证了笔者的猜测,于是在正常能够上网的情况下查看了网关的MAC地址,通过arp -a显示ARP缓存表可以看到10.91.30.254网关地址的MAC地址是00-0f-e2-19-59-38(如图1)。
|
图1 |
为了检测ARP欺骗数据包的来源笔者使用了wireshark内网sniffer工具,并将捕获数据包内容定义为仅仅ARP数据。
通过一段时间的捕获和检测后笔者发现在网络中频繁出现ARP数据包,内容则是告诉所有机器10.91.30.254的MAC地址是00-e0-4c-13-02-08,查看发送这类数据包的来源是一个realteks网卡,其地址是00-e0-4c-13-02-08,看来这就是问题的根源,只要能够找到MAC地址为00-e0-4c-13-02-08就可以解决频繁断网问题(如图2)。
|
图2 |
当然判断是需要有实际和理论的双重支持的,所以笔者分别对比了网络通畅和网络中断两种情况下本机的ARP缓存列表,在可以ping通网关时网关10.91.30.254的MAC地址为00-0f-e2-19-59-38,而在ping网关出现request timed out超时问题时本机缓存表中网关的MAC地址却变成了00-e0-4c-13-02-08,而且在缓存表中还出现了另外一个IP地址对应的MAC信息也为00-e0-4c-13-02-08,他的IP地址为10.91.30.244,于是又得到了一定的线索,那就是只要找到IP为10.91.30.244的机器即可解决问题(如图3)。
|
图3 |
