网络环路故障处理 下载本文

网络环路故障处理方法

一、网络环路形成的原因

首先,介绍一下造成网络环路原因。由于机房的交换机都由专业的设备维护人员管理和操作,所以这里我们不考虑机房交换机环路的可能性,而是着重介绍终端用户HUB所造成的环路。如下图所示是HUB环路示意图:

一旦网络中出现上图HUB的连线方法,网络环路就形成了! 环路引起的实质问题是广播风暴,而广播风暴只在同一网段内传播,它往往只影响同一网段内的电脑。但是当一台受到广播风暴影响的交换机配有其他vlan(网段),那么与该交换机连接的所有网段的电脑都将受到影响,因为“广播风暴”会占用大量网络带宽,导致正常业务不能运行,甚至彻底瘫痪,通俗点说就是该交换机“死机”了。如果该交换机是一台汇聚甚至是核心交换机,那么影响的范围将会更广!

二、网络环路的现象

接着,介绍一下网络环路的现象。网络中出现环路后,往往会出现很奇怪并令人费解的现象让设备维护人员很难判断故障原因。具体现象有:内网、外网网页有时能打开但很卡,有时又打不开;ping网关丢包且丢包率不稳定;与电脑直连的HUB和机房对应的接入层交换机端口灯狂闪。以上现象出现时,基本可判断是网络环路故障。

三、网络环路的处理方法

准确判断故障原因是快速处理故障的先决条件,知道原因后解决它只是时间问题了。现将网络环路大致的处理流程和方法总结如下:

1、 了解网络的拓扑结构

设备维护人员到现场后,首先要知道或试图了解现场网络的拓扑结构。简单的说,你要知道电脑是连的哪个HUB,HUB是连到机房哪台接入层交换机上,而接入层交换机又是如何与汇聚层交换相连的。

这里列出我们公司常见两种接入层拓扑结构:

拓扑图1:接入层交换机分别与汇聚层交换机直连。

拓扑图2:接入层交换机互相串联后再与汇聚层交换机相连。

2、 缩小排查范围

无论是何种拓扑结构,我们都应该先用笔记本直连汇聚层或核心层交换机,测试网络是否正常以排除汇聚层或核心层交换机本身的故障导致的问题。

下面我们假设拓扑图1和拓扑图2中的(vlan10:192.168.130.0/24,网关:192.168.130.254)网段中出现了环路。

拓扑图1出现环路:先断图中交换机switch2的电,再在交换机switch1上找一台电脑使用ping 192.168.130.254 –t命令观察网络是否正常。如果交换机switch2断电后,原本不正常的网络变得正常了,那么表明环路在交换机switch2上的某个HUB上。如果网络依然不正常,那么表明环路在交换机switch1上。也可以断交换机switch1的电在交换机switch2上来验证。接入层交换机有多台时也可以用此方法来一一测试,最终找到有环路的那台接入层交换机。

拓扑图2出现环路:排查顺序就变得尤为重要了,必须自上而下的进行。即先断交换机switch2的电或断开switch1与switch2的连接线,在switch1用ping 192.168.130.254 –t命令观察网络是否正常,如果正常则表明switch2上有环路,如果网络依然不正常则表明switch1上有环路。当有多台接入层交换机串联时,依然使用此方法自上而下进行排查。

3、 找出有环路的端口

当通过上述方法找到有环路的交换机后,想要找出哪个端口有环路就变得简单了。具体方法是:先给交换机断电然后再接上电源,认真观察每个端口的亮灯情况,一般要等待1分钟左右端口灯才开始闪烁,一定要观察到第一个开始快速闪烁的端口,那个端口就是有环路的端口,如果没有看清楚,重新断电后再进行观察。 4、 排除故障

找出有环路的端口后,可以直接将这个端口的网线拔出,然后测试网络是否正常,网络正常后故障就被排除了。最后只要找到这个端口对应的房间将接了环路的HUB找到把网线连接正确就可以了。

四、通过交换机命令发现网络环路

我们公司大部分交换机都是华三的,这里就以华三交换机为例,介绍一些有助于排查环路的交换机命令(实验机型H3C S3610)

1、 stp enable

display stp brief

我将交换机的端口1和端口2用一根网线连起来,使用命令如下图所示:

我们可以看到ethernet1/0/2处于discarding状态,说明ethernet1/0/2被生成树协议关闭了(具体为何不关闭ethernet1/0/1而关闭ethernet1/0/2是STP协议计算得出的结果,这里不作深究)。

在实际工作中,当一个办公室的两个网络面板上的网口接到了一台HUB时,用这两个命令来排查环路是最适合的。 2、 loopback-detection enable

该命令的原理是:环回监测会在相应端口发送检测包,如果能够从发送的端口收到发送的包,即为端口内存在环路,对access端口,会删除mac列表,block端口,对trunk端口会上报,不会禁用端口。

我将端口1下接一个HUB,再用一根网线连接HUB上的任意两个端口形成环路,使用命令如下图所示:

先在全局模式下开启环回监测:

再在端口模式下开启环回监测:

这里我们看到端口ethernet1/0/1有环路,提示需要检查。也可以使用display loopback-detection直接查看有环路的端口,如下图所示:

得出的结论依然是:端口ethernet1/0/1有环路。

在实际工作中,只有确定了某一台交换机有环路时,才适用该命令,而不能一开始就使用该命令来排查,否则工作量太大难以快速找到有环路的端口。

3、display cpu 当网络中出现环路时,交换机会出现“死机”现象,这必然会使交换机CPU使用率 很高。 使用命令如下图所示:

上图CPU值是正常的,如果出现类似:

98% in last 5 seconds 55% in last 1 minute 56% in last 5 minutes

的情况就说明交换机“死机”了,当然交换机“死机”不一定只是环路造成的,但这可以给我们一定的提示,表明这台交换机有问题。

五、网络环路优化

1、开启生成树协议,常见生成树协议有STP、RSTP、MSTP,由于生成树协议会占用一定的交换机资源,这里只做了解和排查故障用。

2、风暴抑制命令broadcast-suppression用来在端口下设置广播风暴抑制比,本命令设置的是端口允许通过的最大广播报文流量,当端口上的广播流量超过设置值后,系统将丢弃超出广播流量限制的报文,从而使端口广播流量所占的比例降低到限定的范围,保证网络业务的正常运行。默认情况下端口上允许通过的广播流量为100%,即不对广播流量进行限制。我们将端口ethernet1/0/1的广播风暴抑制比设置为20%,如下图所示:

也可以设一个端口组来一次性对多个端口进行设置,如下图所示:

这样就一次性把端口ethernet1/0/10至ethernet1/0/20设置好了。