编者按:当出现网络故障时,如何进行快速的定位?本文以解决冲击波病毒为例,从设备故障、网络流量、协议分析等多种途径分析网络故障来源之所在,最后总结出解决网络故障的一般思路和方法。
网络故障扑嗍迷离
事件:网络延时大,有丢包现象发生
故障分析:交换机或所挂用户机?
措施:ACL访问控制,关闭病毒端口
笔者所维护的网络是某省政府电子政务网专网,它覆盖全省、市、县(区)三级党政机关,鉴于它的典型性和广泛性,我希望将自己两年来分析定位及解决网络故障的经验与大家分享,共同进步。
网络故障扑嗍迷离
网络故障的现象总是多种多样,令人扑嗍迷离,然而最终追究起原因,大抵分为以下几个层面的故障:物理层中物理设备相互连接失败或者硬件及线路本身的问题;数据链路层的网络设备的接口配置问题;网络层网络协议配置或操作错误;传输层的设备性能或通信拥塞问题;上三层或网络应用程序错误。 而如今,随着黑客集团的迅速崛起,网络病毒日益猖獗,病毒的种类繁多且攻势强大,这种故障占据了网络故障的80%以上。所以想成为一名优秀的网络管理工程师,必须对时下的各种病毒特征有着基本的了解,当遇到网络病毒引起的网络故障时才能准确定位并及时排除。
下面,我借助自己所遇到的一则实例向大家讲述遇到网络病毒引起的故障时的定位及解决的典型过程,我所维护的网络环境为:港湾Flex2024E作为接入交换机下接用户,上联当地汇聚交换机Flex5010,Flex5010通过光纤上联到市级政务信息网平台。

拓扑图事件:网络延时大,有丢包现象发生
2005年2月24日,我们在网管平台监控发现某市某区Flex5010时通时断,网络延时大,有丢包现象发生。

但是所运行的业务正常。2月25日,该设备时通时断的频率变大了,有时候还不能远程telnet登陆设备进行管理查看。

在保证中间物理线路畅通的前提下,一般面对设备时通时断,首先应该登陆设备查看设备的板卡是否正常,查看设备的各项性能参数是否正常,如内存利用率,cpu利用率,各个端口实时速率是否在正常范围内。
我们在联系当地网管中心确保线路无故障后,登陆设备查看Flex5010 cpu利用率,高达60%
sh cpu u
YC_YZSFH5010_01(config)# sh cpu usage
cpu usage: 60%
并实时监控交换机带宽,如下图。发现端口(流入流出)流量并不大,25口为上行端口,最大流量还没有500kbps。下联端口最大流量的端口11,流量还没有100kbps。
于是联系当地信息中心询问情况,反映上网速度很慢,几乎上不了。拔掉流量较大的几个端口port11、port9的双绞线,过段时间观测,正常。但是一旦插上port9、port11的双绞线,过一段时间观测,设备又有上述问题。当地信息中心工程师得出结论是,Flex5010只能下接8个交换机,如果在任意端口下加挂一台交换机的话,就会出现问题:设备down,不能远程登陆,用户不能上网。故障分析:交换机或所挂用户机?
出现上述情况只有两种可行性:一是Flex5010交换机设备本身有问题,二是交换机下挂交换机用户有病毒。后联系港湾工程师,反映设备出现问题的概率很小,建议抓包看看是否有病毒。
在Flex5010上,做端口镜像,用sniffer pro进行抓包分析:
启用镜像组1,将交换机端口23作为监控端口,下接装有sniffer pro软件的pc。
Harbour(config)#config mirroriing 1 to 23
24口为上行口,添加被镜像端口24
Harbour(config)#config mirroring 1 add port 24 egress (出端口的数据流
Harbour(config)#config mirroring 1 add port 24 inress(入端口的数据流)
在端口23接一台装有sniffer pro软件的电脑上面,抓包如下图:
通过上图可以看出,ip地址为10.98.21.30的pc向外发送了大量目的端口为139帧长为66字节的数据包。很明显,这是冲击波病毒在作怪。冲击波(Worm.Blaster)病毒2003年8月12日全球爆发,该病毒由于是利用系统漏洞进行传播,没有打补丁的电脑用户都会感染该病毒,从而使电脑出现系统重启、无法正常上网等现象。冲击波(Worm.Blaster)病毒利用的是系统的RPC DCOM漏洞,监听端口69,模拟出一个TFTP服务器,并启动一个攻击传播线程,不断地随机生成攻击地址,尝试用有RPC漏洞的135、139端口进行传播,病毒攻击系统时会使RPC服务崩溃。
我们知道,超长帧(超过1518字节)有封闭网络的作用,主要是引起网络速度变慢或网络瘫痪,而短帧(小余64字节)达到一定流量则会对网络设备的工作协议造成一定程度的破坏,引起设备死机,一般在网络中是不容许大量出现的。小包同样存在这样的问题。由于开始Flex5010下挂少量用户交换机,这个时候网络中短帧虽然存在,但是交换机cpu还有能力处理,一旦超过交换机的负荷(增加下挂用户交换机),网络中存在大量冲击波病毒向外发包(发送目的地址并不存在的arp请求,交换机得到请求之后,不断去寻找目的地址,但是实际上不能转发该报文),当所有的下挂用户电脑中的冲击波同时并发时,交换机这个时候就处理不过来;又因为是小包,故网络带宽并不大。措施:ACL访问控制,关闭病毒端口
针对上述分析,在Flex5010上做常见病毒acl访问控制,关闭病毒端口。
启用acl
Harbour(config)#service acl enable
针对常见病毒端口,制定相应的规则,阻止其传播。
Harbour(config)#create acl acl1 tcp DIP any ip-port 113 SIP any ip-port any deny ports any
Harbour(config)#create acl acl2 udp DIP any ip-port 135 SIP any ip-port any deny ports any
Harbour(config)#create acl acl3 tcp DIP any ip-port 135 SIP any ip-port any deny ports any
Harbour(config)#create acl acl4 udp DIP any ip-port 137 SIP any ip-port any deny ports any
Harbour(config)#create acl acl5 udp DIP any ip-port 138 SIP any ip-port any deny ports any
Harbour(config)#create acl acl6 tcp DIP any ip-port 139 SIP any ip-port any deny ports any
Harbour(config)#create acl acl7 udp DIP any ip-port 139 SIP any ip-port any deny ports any
Harbour(config)#create acl acl8 udp DIP any ip-port
