首页 > 代码库 > 十个网络优化改造案例之四--NAS区域网络第一次改造

十个网络优化改造案例之四--NAS区域网络第一次改造


主要内容及技术

生成树协议

交换机端口广播抑制技术

前言:

  总的来说,这是一次失败的割接。虽然前后准备了两个星期,方案也拿给几位甲方领导过目了,但最后还是因为STP区域过大导致了割接失败。不过不得不说,失败的案例其中也有可圈可点的地方,就算是失败的原因也可以说给大家听,让大家可以从中总结经验和教训。本讲有用的知识点就是交换机端口广播抑制技术,在交换网络中,为核心交换机配置端口广播抑制,可以有效防止广播风暴。

一、需求描述

  网络中有6个业务区域,分别是:协同办公区、综合业务区、资产管理区、办公局域网区、营销系统区、财务系统区。这6个区域都要访问到NAS服务器,但是区域之间又不能相互访问。网络在最初设计的时候,就没有采用OSPF路由协议,因为OSPF路由协议会使得所有网络区域的网段收敛,如果要限制区域之间的互相访问就必须在核心设备上写大量的ACL,所以最后采用的方法是一个区域走一个VLANNAS服务器,6个业务区域就创建了6VLAN,然后每个NAS服务器上也安装了6张网卡,分别接在6个区域的VLAN内,这样就可以实现“6个区域都访问NAS6个区域都不能互访”的要求了。

       既然采用了“超大规模二层”的网络结构,于是STP协议这种用于防止二层环路的协议就显得相当重要了。

       省数据中心NAS区域两台接入交换机(型号为ZTE8905E)分别接入业务区两台汇聚交换机(型号为Cisco 6509E)。因为ZTE交换机与Cisco交换机的STP协议不兼容,导致ZTE交换机无法自动切换HA的主备。另外,营销系统区和综合业务区使用的H3C 7505交换机的STPZTE交换机之间的STP也存在不兼容现象。

1.1、     改造之前的拓扑图

 a、改造之前的总拓扑图

技术分享



b、协同办公区区域拓扑图

技术分享

  两台NAS服务器的网关位于业务区汇聚交换机,ZTE 8982交换机只作VLAN透传。例如:协同办公区NAS服务器的网关的VLAN ID181,在ZTE8982和协同办公区Cisco 6509之间就形成了一个“口字形”VLAN 181的物理环路,所以必须开启STP进行环路控制。

  由于STP不兼容的问题,导致环路无法避免,所以在现行的网络环境中,将ZTE 8982之间的心跳线拆除,现在各个业务区域访问NAS,都只是单链路在跑单边设备。当这条单链路断开的时候必须手动把流量切换到备用设备上,无法实现自动切换。

  非结构化存储系统两台接入交换机,型号为ZTE8905E。为了提高可靠性,预备将这两台ZTE8905E交换机配置为HA组。但由于ZTE8905E与各个办公区域的Cisco 6509E交换机的STP不兼容,所以两台ZTE8905E之间的心跳线目前处于断开状态以防止出现环路。此时两台ZTE8905E无法自动切换HA的主备状态,网络故障隐患较大。

1.2、     改造后的拓扑图

网络经过改造后,使用Cisco 4507交换机替换原有ZTE交换机,并连接心跳线。改造完成后,可以避免ZTECisco之间STP不兼容的问题,同时达到防环和可以自动切换HA主备设备的目的。

改造后的协同办公区拓扑图:


 技术分享

1.3、     改造后的目标

a、消除STP不兼容的问题

在改造之前的网络环境中,由于ZTE设备与CiscoH3C设备带来的STP不兼容的问题,导致两台ZTE交换机无法连接心跳线,这也直接导致了两台ZTEHA不可用。网络经过改造以后,可以到达CiscoCisco设备之间、CiscoH3C设备之间的STP相互兼容,可以启用Cisco设备之间的HA组,也能够更好的防止二层环路。

b、防止各个VLAN的广播风暴

网络经过改造以后,网络中的每个访问NAS服务器业务被分割在每个VLAN之间。为了防止某个VLAN中出现广播风暴,影响交换机的性能,进而影响其他VLAN的正常通信,必须在NAS区域两台接入交换机与业务区交换机连接的接口上配置广播抑制,当广播报文数量达到限制的时候就阻塞接口,防止广播风暴。

二、准备工作

2.1、确定需要转移业务的接口

本次网络改造涉及到设备的更换,所以必须考虑到更换后设备的互联接口。更换设备前和更换设备后对应互联接口信息如下表所示:

更换前设备

更换前接口

更换后设备

更换后接口

描述

zte8908E-A

gei-0/5/0/3

Cisco4503E-A

Gi 5/ 0/3

To_DMZ

xgei-0/3/0/1

Gi 3/1

Trunk 151,159,163,181,247

xgei-0/3/0/2

Gi 3/2

Vlan 163

xgei-0/3/0/3

Gi 3/3

Trunk 151,159,163,181,247

xgei-0/3/0/4

Gi 3/4

Trunk 151

xgei-0/3/0/5

Gi 3/5

Trunk 181

xgei-0/3/0/6

Gi 3/6

xgei-0/3/0/7

Gi 3/7

Trunk 132

xgei-0/4/0/11

Gi3/8

trunk 151,159,163

xgei-0/4/0/12

Gi3/9

trunk 151,159,163

gei-0/5/0/1

Gi2/1

trunk 247

gei-0/5/0/2

Gi2/2

trunk 159

gei-0/5/0/3

Gi2/3

trunk 132

gei-0/5/0/5

Gi2/4

trunk 151,159,163,247

gei-0/5/0/6

Gi2/5

trunk 151,159,163,247

gei-0/5/0/7

Gi2/6

trunk 151,159,163,247

gei-0/5/0/8

Gi2/7

trunk 151,159,163,247

 

更换前设备

更换前接口

更换后设备

更换后接口

描述

zte8908E-A

gei-0/5/0/3

Cisco4503E-A

Gi 5/ 0/3

To_DMZ

xgei-0/3/0/1

Gi 3/1

Trunk 151,159,163,181,247

xgei-0/3/0/2

Gi 3/2

Vlan 163

xgei-0/3/0/3

Gi 3/3

Trunk 151,159,163,181,247

xgei-0/3/0/4

Gi 3/4

Trunk 151

xgei-0/3/0/5

Gi 3/5

Trunk 181

xgei-0/3/0/6

Gi 3/6

xgei-0/3/0/7

Gi 3/7

Trunk 132

xgei-0/4/0/11

Gi3/8

trunk 151,159,163

xgei-0/4/0/12

Gi3/9

trunk 151,159,163

gei-0/5/0/1

Gi2/1

trunk 247

gei-0/5/0/2

Gi2/2

trunk 159

gei-0/5/0/3

Gi2/3

trunk 132

gei-0/5/0/5

Gi2/4

trunk 151,159,163,247

gei-0/5/0/6

Gi2/5

trunk 151,159,163,247

gei-0/5/0/7

Gi2/6

trunk 151,159,163,247

gei-0/5/0/8

Gi2/7

trunk 151,159,163,247

 

本次网络改造涉及更换汇聚层的设备,所以受到影响的业务比较多。在设备更换期间,连接在该设备上的业务都会掉线。本次网络改造将会使以下业务受到影响:

n  协同办公区

n  综合业务区

n  资产管理区、生产管理区

n  办公局域网区

n  营销系统区

n  财务系统区

由于Cisco4503EZTE8908E的板卡数量,光口、电口数量不匹配。在Cisco4503E交换机上出现了光口数量不足而电口数量过剩的现象,所以在必要的时候,应该将部分原先在ZTE8908E为光口的链路在Cisco4503E上改为电口。另外,Cisco4503E上只有两个万兆接口,数量可能会不足,所以必要的时候需要在核心交换机或接入交换机上做速率设置,防止接口速率不匹配而造成无法通信。

2.2、发现不同的网络结构

查看ZTE8982的配置信息,发现在ZTE-8982-A上有一个VLAN 163的配置:

interface vlan163

  ip address10.115.163.254 255.255.255.0

ZTE-8982-B上有一个VLAN 247的配置

interface vlan247

  ip address10.115.247.254 255.255.255.0

  VLAN163是协同办公区的业务VLAN,而VLAN 247是办公局域网区的业务VLAN,可以说,NAS服务器针对协同办公区、办公区域网区的网关都设置在ZTE-8982上了。对于这两个区域而言,区域的交换机和ZTE 8982之间只需要trunk透传VLAN 163VLAN 247ZTE 8982上。而对于其他的业务区域,ZTE 8982只做Trunk透传工作,网关位于区域交换机上。

从配置可以看出来:VLAN 163的网关在A机上,VLAN 247的网关在B机上,在改造以后,可以让4503E-A担任VLAN 163Active设备,VLAN 247担任VLAN 247Active设备。

2.3、针对不同的网络结构设计不同的割接方法

  根据上面的描述,协同办公区和办公局域网区不管是NAS服务器的网关还是区域的网关都在ZTE8982上,所以在ZTE8982更换为Cisco 4503E以后,要针对这两个业务区域配置HSRP双机热备(VLAN 163VLAN 247)。

  不管网关的位置是否在ZTE8982上,都要在ZTE8982更换为Cisco 4503E以后配置生成树,考虑到6个网络区域里面的设备厂商复杂,应该选择使用通用的生成树协议,即MSTP,让Cisco 4503E-A担任主要根桥,让Cisco4503E-B担任备份根桥。

2.4、测试Cisco 4503E交换机

只有确保设备能够正常工作了以后,才可对设备进行上架操作。所以,必须对两台Cisco4503E设备进行前期测试,保证设备电源、引擎板卡、数据业务板卡没有故障,运行完全正常以后才可进行设备的更换。

三、实施步骤

3.1、更换设备

3.2.1、此次更换设备受影响的业务

  本次网络改造涉及更换汇聚层的设备,所以受到影响的业务比较多。在设备更换期间,连接在该设备上的业务都会掉线。本次网络改造将会使以下业务受到影响:

       协同办公区

       综合业务区

       资产管理区(生产管理区)

       办公局域网区

       营销系统区

       财务系统区

3.2.2、更换设备步骤

  先将Cisco4503E-01按照ZTE8908E-01的原始配置进行配置好,然后将ZTE8908E-01上所有接口按照3.1表项中列出的接口全部更换到Cisco4503E-01,更换完一台设备以后,再更换第二台设备。等两台设备运行正常,业务正常以后,再连接心跳线,配置HSRP

Cisco4503E上接口的配置命令(AB配置相同)

interfacegi 3/1

 switchport

 switchport mode trunk

 switchport trunk vlan allow151,159,163,181,247

 

interfacegi 3/2

 switchport

 switchport mode trunk

 switchport trunk vlan allow 163

 

interfacegi 3/3

 switchport

 switchport mode trunk

 switchport trunk vlan allow151,159,163,181,247

 

interfacegi 3/4

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151

 

interfacegi 3/5

 switchport

 switchport mode trunk

 switchport trunk vlan allow 181

 

interfacegi 3/7

 switchport

 switchport mode trunk

 switchport trunk vlan allow 132

 

interfacegi 3/8

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151,159,163

 

interfacegi 3/9

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151,159,163

 

interfacegi 2/1

 switchport

 switchport mode trunk

 switchport trunk vlan allow 247

 

interfacegi 2/2

 switchport

 switchport mode trunk

 switchport trunk vlan allow 159

 

interfacegi 2/3

 switchport

 switchport mode trunk

 switchport trunk vlan allow 132

 

interfacegi 2/4

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151,159,163247

 

interfacegi 2/5

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151,159,163247

 

interfacegi 2/6

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151,159,163247

 

interfacegi 2/7

 switchport

 switchport mode trunk

 switchport trunk vlan allow 151,159,163247

3.2、将配置了IPVLAN配置为HSRP

  Cisco 4503E上将VLAN 163VLAN247配置为HSRP组,虚拟IPZTE8908-EVLANIFIP地址。为了实现流量的负载分担,将A机作为VLAN163Active设备,B机作为VLAN 247Active设备。

  Cisco 4503E-A配置HSRP命令如下:

interfacevlan163

  ip address 10.115.163.252 255.255.255.0

  standby 163 ip 10.115.163.254

  standby 163 pri 120

  standby 163 preem

 

interfacevlan 247

  ip address 10.115.247.252 255.255.255.0

  standby 163 ip 10.115.247.254

  standby 163 pri 100

  standby 163 preem

       Cisco 4503E-B配置HSRP命令如下:

interfacevlan163

  ip address 10.115.163.253 255.255.255.0

  standby 163 ip 10.115.163.254

  standby 163 pri 100

  standby 163 preem

 

interfacevlan 247

  ip address 10.115.247.253 255.255.255.0

  standby 163 ip 10.115.247.254

  standby 163 pri 120

  standby 163 preem

3.3、配置生成树协议

  根据核心交换机的配置以及ZTE8905的原始配置可以得知当前环境中运行的生成树协议是MSTP,所以,Cisco4503E上配置的生成树协议也使用MSTP

  在配置生成树协议的时候,确保两台核心交换机分别担任Root Bridge角色与Backup Root Bridge的角色。另外,HSRP的组Active端也应该与RootBridge位于同一设备,防止因为STP阻塞端口造成网络不通等故障。

 

3.4、在Cisco 4503E上配置端口广播抑制

 2层交换机上做广播流量的控制

命令:

switch(interface-if)#storm-control ?

action:定义如果超过限定范围流量采取什么行为

broadcast:控制广播

multicast:控制组播

unicast:控制单播

Switch4(config-if)#storm-control broadcast ?          

  level:定义级别

Switch4(config-if)#storm-control broadcast level?   

  <0.00 - 100.00>:定义端口带宽下线值     

  bps:定义每秒流量传输的位(1字节=8)

  pps :定义每秒包数量

Switch4(config-if)#storm-control broadcast level pps50 40 ? 

定义广播每秒超过50/s个则端口阻塞(blocking)小于40/s个则端口恢复(下线值貌似没什么用,也可以只写一个上限值就可以)

Switch4(config-if)#storm-control action ?         

定义包超过定义的最大数量时采取的行为,不定义此项就默认为block而不是shutdown。当广播小于40/s的时候端口又恢复通信,但是当配置了actionshutdown时当端口广播超过50/s就会被shutdown,就只能用下面的errdisable的恢复方法来恢复端口了。

 

示例:

Switch4(config)#interfacef0/5

Switch4(config-if)#storm-controlbroadcast level 10 5

Switch4(config-if)#storm-controlaction shutdown 或者

Switch4(config-if)#storm-controlaction trap

Switch4(config-if)#nosh

Switch4(config-if)#dowr

 

查看广播风暴端口状态

 

Switch#showstorm-control      

Interface  Filter State  Upper        Lower        Current

---------  ------------- -----------  -----------  ----------

Fa0/2      Forwarding         50 pps       40 pps        0 pps

Fa0/3      Link Down          50 pps       40 pps        0 pps

Fa0/4      Link Down          50 pps       40 pps        0 pps

Fa0/5      Link Down          50 pps       40 pps        0 pps

Fa0/6      Forwarding         50 pps       40 pps        0 pps

Fa0/7      Forwarding         50 pps       40 pps        0 pps

Fa0/8      Forwarding         50 pps       40 pps        0 pps

Fa0/9      Forwarding         50 pps       40pps        0 pps

Fa0/10     Link Down          50 pps       40 pps        0 pps

Fa0/11     Forwarding         50 pps       40 pps        1 pps

Fa0/12     Link Down          50 pps       40 pps        0 pps

Fa0/13     Forwarding         50 pps       40 pps        0 pps

Fa0/14     Forwarding         50 pps       40 pps        0 pps

Fa0/15     Forwarding         50 pps       40 pps        0 pps

Fa0/16     Forwarding         50 pps       40 pps        0 pps

Fa0/17     Forwarding         50 pps       40 pps        0 pps

Fa0/18     Forwarding         50 pps       40 pps        0 pps

Fa0/19     Forwarding         50 pps       40 pps        0 pps

Fa0/20     Forwarding         50 pps       40 pps        0 pps

Fa0/21     Link Down          50 pps       40 pps       0 pps

Fa0/22     Link Down          50 pps       40 pps        0 pps

Fa0/23     Forwarding         50 pps       40 pps        0 pps

Fa0/24     Forwarding         50 pps       40 pps        0 pps

 

注:一个端口被策略down后会显示err-disable,恢复的方法有两个。一个手动一个自动,手动是到该接口下执行shutdown然后在执行noshutdown(直接noshutdown不行),自动是:

 

session 2 端口err-disable自动恢复

L3#showerrdisable detect                 查看SW端口安全关闭支持哪些安全策略

ErrDisableReason    Detection status

-----------------    ----------------

udld                 Enabled

bpduguard            Enabled

security-violatio    Enabled

channel-misconfig    Enabled

psecure-violation    Enabled

unicast-flood        Enabled

vmps                 Enabled

loopback             Enabled

unicast-flood        Enabled

pagp-flap            Enabled

dtp-flap             Enabled

link-flap            Enabled

l3pxguard            Enabled

sfp-config-mismat    Enabled

gbic-invalid         Enabled

dhcp-rate-limit      Enabled

storm-control        Enabled

inline-power         Enabled

arp-inspection       Enabled

community-limit      Enabled

invalid-policy       Enabled

 

L3#showerrdisable recovery   查看SW端口安全关闭策略开启了自动恢复功能,默认都没有开启

ErrDisableReason    Timer Status

-----------------    --------------

udld                 Disabled

bpduguard            Disabled

security-violatio    Disabled

channel-misconfig    Disabled

vmps                 Disabled

pagp-flap            Disabled

dtp-flap             Disabled

link-flap            Disabled

l3pxguard            Disabled

psecure-violation    Disabled

sfp-config-mismat    Disabled

gbic-invalid         Disabled

dhcp-rate-limit      Disabled

unicast-flood        Disabled

storm-control        enable

inline-power         Disabled

arp-inspection       Disabled

loopback             Disabled

Timerinterval: 300 seconds

Interfacesthat will be enabled at the next timeout:

Interface    Errdisable reason    Time left(sec)

---------    -----------------    --------------

Fa0/4        storm-control             1470  

看到f0/4口再过1470s自动恢复up

 

L4#showinterfaces f0/4

FastEthernet0/4is down, line protocol is down (err-disable)

  Hardware is Fast Ethernet, address is0022.916d.1e86 (bia 0022.916d.1e86)

  MTU 1500 bytes, BW 10000 Kbit, DLY 1000 usec,

     reliability 255/255, txload 1/255, rxload1/255

  Encapsulation ARPA, loopback not set

  Keepalive set (10 sec)

  Auto-duplex, Auto-speed, media type is10/100BaseTX

  input flow-control is off, outputflow-control is unsupported

  ARP type: ARPA, ARP Timeout 04:00:00

  Last input never, output 3w5d, output hangnever

  Last clearing of "show interface"counters never

  Input queue: 0/75/0/0(size/max/drops/flushes); Total output drops: 0

  Queueing strategy: fifo

  Output queue: 0/40 (size/max)

  5 minute input rate 0 bits/sec, 0 packets/sec

  5 minute output rate 0 bits/sec, 0packets/sec

    887508 packets input, 666054421 bytes, 0 no buffer

     Received 5177 broadcasts (0 multicasts)

     0 runts, 0 giants, 0 throttles

     2 input errors, 0 CRC, 0 frame, 0 overrun,0 ignored

     0 watchdog, 1970 multicast, 0 pause input

     0 input packets with dribble conditiondetected

     761562 packets output, 100518453 bytes, 0underruns

     0 output errors, 0 collisions, 5 interfaceresets

     0 babbles, 0 late collision, 0 deferred

     0 lost carrier, 0 no carrier, 0 PAUSEoutput

     0 output buffer failures, 0 output buffersswapped out

 

L4(config)#errdisablerecovery cause storm-control  

手工开启storm-control的自动恢复

L3(config)#errdisablerecovery interval 1800        

恢复时间为1800s,当端口被err-disable10分钟后自动恢复,如果再次检测到storm超标则自动被down然后再过10分钟再次自动恢复为up,这样循环。

3.5、其他功能配置

 配置SSH服务,使用VLAN 1的地址作为管理地址

 配置SSH服务的目的是可以远程管理到两台交换机。使用SSH协议比Telnet更安全,因为使用SSH,用户名和密码是以密文的方式在网络中传输的,而Telnet会将用户名和密码以明文的方式传输。

四、失败原因分析

  最终这次网络割接以失败回退而告终。因为资产管理区、办公局域网区的交换机数量较多,导致生成树无法正常收敛,所以这两个区域的网络业务一直不通。

后记

对于这种三层结构的网络环境,不建议单纯的为了节省IP地址而采用VLAN透传的方式进行组网。虽然说STP是一个很有效的二层防环协议,但毕竟该协议不是一个容易“受人控制”的协议。设备数量约多,STP收敛越慢。在实际的工作环境中,10台左右的交换机STP收敛大概需要5分钟左右。一般来说,在汇聚层和接入层之间使用STP,但是一旦到了核心层和汇聚层之间,就不能再把STP收敛区域弄到核心层了。

 


本文出自 “捷哥的IT小屋” 博客,谢绝转载!

十个网络优化改造案例之四--NAS区域网络第一次改造