生成树协议是应用非常广泛的一种二层协议,它可以在二层网络中有效的防止广播风暴。但是,滥用生成树协议,或者是在很大规模的二层网络中使用生成树协议,不仅会使网络变得脆弱不堪,而且还有可能造成更严重的环路问题。本案例为大家讲述一个企业的非结构化存储区域的网络改造,让大家了解一个设计有严重缺陷的网络,是如何引发生成树问题的?到后来又用了什么技术才彻底消除了网络的缺陷的。
本文同步视频讲解已经发布到了51cto学员
这里是课程链接:http://edu.51cto.com/course/12603.html
某大型企业局域网建设了一张NAS(网络附属存储)存储区域的网络,该NAS区域网络有连接线全部连接到办公六个区域的汇聚交换机上。因为负责网络建设的技术团队技术能力薄弱,NAS区域网络从投运至今故障不断,非常不稳定。
NAS区域的拓扑图如下图所示:
如图所示:NAS区域网络有两台核心交换机,型号为ZTE-8982。有6个办公区域(资产管理区、NAS管理区、营销管理区、生产管理区、综合业务区、财务系统区)都连接在NAS核心交换机上。NAS机头服务器通过两台二层万兆的交换机直接就接在NAS网络核心交换机上。
NAS机头一共有6个(图上只画了一台NAS机头作为示意图),每个NAS机头为1个办公区域提供共享存储服务。每个区域只能访问自己的NAS机头服务器,不能访问其他区域的NAS机头服务器。
NAS机头详细网络示意图:
为了达到这一需求,负责建设网络的技术团队采用了使用二层VLAN隔离的方式。即把每个区域和NAS机头划入到一个VLAN,然后不做VLAN之间的路由。由于这6个办公区域投运的先后顺序不一样,所以每个区域与NAS网络的互联方式也不一样。总的来说,6个办公区域连接NAS的方式有三种。
第一种连接方式,NAS机头的网关地址配在NAS核心交换机上,在核心交换机上针对NAS网关配置VRRP。再在办公区的汇聚交换机上配置指向NAS机头的静态路由。
资产管理区就是这样一种情况。为该区域提供服务的NAS机头(简称资产NAS)接入VLAN 181,IP地址是10.220.181.4/28。它的默认网关位于NAS核心交换机,地址是10.220.181.1/28,这应该是一个VRRP的虚拟地址。在NAS核心交换机上的VLAN 181接口地址分别是10.220.181.2/28和10.220.181.3/28。
在每台资产管理区汇聚交换机上也分别配置了VLAN 181的接口地址,地址分别是10.220.181.5/28、10.220.181.6/28、10.220.181.7/28。关于资产管理区的IP地址图如下图所示:
第二种连接方式,NAS机头的网关位于办公区域的汇聚交换机上,NAS交换机只负责做VLAN二层透传功能。营销管理区、生产管理区、综合业务区、财务系统区这4个区域都是用该方式来连接的。按照建设该网络的技术人员的说法,这种方式可以免于在NAS核心交换机和办公区域汇聚交换机上配置路由。
下图以综合管理区为例来说明这种连接方式。
第三种连接的方式,NAS机头的网关和办公区域的网关位于NAS核心交换机,例如NAS管理区。
在这里我必须要说明一下:从上面几张图上来看,两台NAS核心交换机之间都画了心跳线,但实际上连接心跳线的接口是被手动shutdown了,所以可以理解为心跳线没有连接。另外,ZTE-8982-2与所有业务区域汇聚交换机的接口也是手工shutdown的。现在所有办公业务区域访问NAS机头-Server,实际上都是从ZTE8982-1去访问的。
在网络建设的时候,由于公司经费问题,6个办公区域的汇聚交换机都是从之前的项目中剩下的设备,所以型号都不统一。下表中列出了6个办公区域的交换机型号和NAS核心交换机的型号:
办公区域 | 交换机型号 | 主机名 | 管理IP地址 |
NAS核心交换机 | ZTE-8982 | NAS-Core-8982-1 NAS-Core-8982-2 | 10.221.143.25 10.221.143.26 |
资产管理区 | Cisco 6509 | BG-ZCGL-6509-1 BG-ZCGL-6509-2 | 10.192.33.1 10.192.33.2 |
营销管理区 | Cisco 6509 | BG-YXGL-6509-1 BG-YXGL-6509-2 | 10.192.33.3 10.192.33.4 |
综合业务区 | H3C 9512 | BG-ZHYW-9512-1 BG-ZHYW-9512-2 | 10.192.33.5 10.192.33.6 |
财务系统区 | DELL Force 10 C300 | BG-CWXT-C300-1 BG-CWXT-C300-2 | 10.192.33.7 10.192.33.8 |
生产管理区 | Cisco 6509 | BG-SCGL-6509-1 BG-SCGL-6509-2 | 10.192.33.9 10.192.33.10 |
NAS管理区局域网 | DELL Force 10 C300 | BG-WG-C300-1 BG-WG-C300-2 | 10.192.33.11 10.192.33.12 |
由于设备厂商不统一,就存在着一些协议兼容性的问题(当然,这可能是扯蛋的)。例如ZTE-8982设备与Force 10的STP就无法兼容,所以使用Force 10设备的办公区域就只能和NAS区域跑单机。现在ZTE-8982之间互联的心跳线也没有连接,如果一边出了故障,只能是手动切换主用和备用通道。即使是使用H3C、Cisco的区域,与ZTE-8982的STP兼容,但是因为广播区域较大,设备中也会有广播流量过大的情况,当一个VLAN出现广播流量过大的时候,会影响NAS核心交换机的性能,从而影响其他VLAN的正常访问。
所以,本次网络改造的需求如下:
1、更换NAS区域核心交换机为Cisco 6509,消除STP不兼容的问题;并连接心跳线,将原ZTE设备上存在的网关地址改为HSRP。
2、在NAS区域核心交换机连接业务交换机的接口上配置广播流量抑制。
生成树协议(Spanning Tree Protocol,简称STP)就是把一个环形的结构改变成一个树形的结构。它用来将物理上存在环路的网络,通过一种算法,在逻辑上阻塞一些端口,来生成一个逻辑上的树形结构。如图所示:
对于三台交换机构成环路的网络,在使用STP协议后,交换机SW2与SW3连接链路的一个端口被协议从逻辑上阻塞,这条链路也不能再传输数据了。当正常的通信链路发生故障时,被逻辑阻塞的链路被重新激活,使得数据能从这条链路正常传输。所以说:使用生成树协议是在物理环路上防止广播风暴的唯一可靠协议。
那么,到底是以什么依据来判断端口阻塞的呢?
生成树的算法比较复杂,但归纳起来,大体分为三点:
1、选举根网桥(根交换机)
只有网桥ID最小的交换机会成为根交换机,网桥ID有两部分构成:优先级+交换机自身MAC地址。先比较优先级,最低者将成为根桥;如果通过优先级无法选举出根桥,就比谁的MAC地址十六进制的数值最小。
2、在非根交换机上选举根端口
选举出来根网桥以后,就开始选举根端口。通常情况下,与根桥直接连接的端口将成为根端口,如图所示:
根端口是不会被阻塞的端口。
3、选举指定端口
指定端口也是不会被阻塞的端口。如果是根网桥,则根网桥上的端口全是指定端口,换句话说就是根网桥上的端口都不会被阻塞。如果是非根网桥,则按照如下顺序选举指定端口:
l 根路径成本较低
l 所在的交换机的网桥ID的值较小
l 端口ID的值较小
如图所示:
不过从图上来看,即使非根网桥SW3选举出了指定端口,但也没有什么实际意义,因为它对端的SW1的端口被阻塞,这条链路仍然无法转发数据。
通过上面的描述我们可以看出来:生成树的所有算法都是围绕着根桥展开的。所以,在实际工作中,必须要对根桥进行严格的规划。而且我们也能够得出一个结论:根桥上的端口和非根桥上与根桥直接连接的端口都不会被阻塞,所以数据流量一定会到达根桥。通常情况下:根桥都选择在汇聚层或者核心层设备上。
普通的生成树协议算法是以交换机为单位,但通常情况下考虑网络中划分了多个VLAN,所以在选择生成树类型的时候,都要考虑为每个VLAN拥有一个生成树。常用的协议有PVST+和MSTP,不过前者是Cisco的私有协议,后者才是IEEE通用协议。
当端口接收到大量的广播、单播或多播包时,就会发生广播风暴。转发这些包将导致网络速度变慢或超时。借助于对端口的广播风暴控制,可以有效地避免硬件损坏或链路故障导致的网络瘫痪。默认状态下,广播、多播和单播风暴控制被禁用。
配置交换机端口广播抑制的命令如下:
Switch(config)#interface <interface-id> Switch(config)#storm-control { broadcast | multicast | unicast } level/bps/pps |
各命令的具体描述:
? level:指定阻塞端口的带宽上限值。当广播、多播或单播传输占到宽带的多大比例(百分比)时,端口将阻塞传输。取值范围为0.00 ~ 100.00。如果将值设置为100%,将不限制任何传输;如果将值设置为0%,那么,该端口的所有广播、多播和单播都将被阻塞。
? level-low:指定启用端口的带宽下限值。该值应当小于或等于下限值,当广播、多播或单播传输占用带宽的比例低于该值时,端口恢复转发传输。取值范围为0.00 ~ 100.00。
? bps:bps可表示为bit/s。指定端口阻塞的传输速率上限值。当广播、多播或单播传输达到每秒若干比特(bps)时,端口将阻塞传输。取值范围为0.0~10 000 000 000.0。
? bps-low:指定端口启用的传输速率下限值。该值应当小于或等于下限值,当广播、多播或单播传输低于每秒若干比特(bps)时,端口将恢复传输。取值范围为0.0 ~ 10 000 000 000.0。如果数值较大,也可以使用k、m或g等词头来表示。
? pps:指定端口阻塞的转发速率上限值。当广播、多播或单播传输速率达到每秒若干包(pps)时,端口将阻塞传输。取值范围为0.0 ~ 10 000 000 000.0。
? pps-low:指定端口启用的传输速率下限值。该值应当小于或等于下限值,当广播、多播或单播转发速率低于每秒若干包(pps)时,端口将恢复传输。取值范围为0.0 ~ 10 000 000 000.0。如果数值较大,也可以使用k、m或g等词头来表示。
当广播风暴发生的时候,默认处理的方式是过滤外出的传输,并不发送SNMP陷阱。选择shutdown关键字,在风暴期间将禁用端口;选择trap关键字,当风暴发生时,产生一个SNMP陷阱,向网络管理软件发出警报。
配置命令如下:
Switch(config-if)#storm-control action { shutdown | trap } |
在IGP网络中,通常情况下可以使用前缀列表和分发列表来执行路由过滤。前缀列表是可以在不同的厂商之间通用的技术,而分发列表是Cisco、Force 10设备专用技术。如果是H3C、华为等设备,可以用route-policy来代替分发列表。
1、设置前缀列表
前缀列表的设置命令如下:
ip prefix-list <list-name> [node node-seq] permit/deny network/ length <option> length |
各个参数解释如下:
n list-name:设置前缀列表的名称,必须设置;
n node:列表中各个规则的排列顺序,如果不设置,则列表中第一个规则的顺序的node值为5,步长也为5;
n permit/deny:如果使用permit,则设置列表为白名单;如果使用deny,则设置列表为黑名单。通常情况下,permit比deny常用得多;
n network:设置需要调整的网段和子网掩码长度。
在设置前缀列表的时候,要特别注意一个问题,那就是:你到底是需要对单个网段还是对这个网段下的子网也进行匹配。如果只需要单独匹配一个网段,例如你只需要匹配10.112.20.0/24,则设置前缀列表的命令如下:
ip prefix-list Permit_112 permit 10.112.20.0/24 |
那么,这个前缀列表就只能匹配10.112.20.0/24,它下面的子网都无法匹配。即10.112.20.0/25、10.112.20.0/26等都不能匹配。
ip prefix-list Permit_112 permit 10.112.20.0/24 le 32 |
如果需要匹配它的子网,则应该这样设置前缀列表:
在前缀列表中加上“le”选项,就可以表示匹配的子网掩码长度范围,如果是 24 le 32,则表示匹配的子网掩码长度是从 /24到/32。
2、设置分发列表
分发列表(distribute-list)是用于控制路由更新的一个工具,只能过滤路由信息,不能过滤LSA。(所以说对距离矢量路由协议比较适用,如:RIP、EIGRP。像OSPF 链路状态路由协议,IN方向(影响本地路由表,但LSDB里是有的),OUT方向不起作用; 但对本地始发路由可以过滤,原因是通过路由的重分发,而不是LSA传递)。
配置分发列表的命令是,先定义一个ACL,匹配需要传递或禁止传递的网段,再在路由进程下配置分发列表,调用之前的ACL。具体的使用方式见第5.3小节。
根据要求,该网络现在健壮性不足,而且并没有能从实质上有热备份的功能。因为两台ZTE-8982之间的心跳线尚未连接,所以VRRP、STP实际上并没有发挥功能。该方案的设计思路是:更换ZTE-8982为Cisco 6509,让HSRP、STP发挥作用,做到真正热备份的功能。
另外,为了防止广播流量过大或者是广播风暴影响设备性能,进而影响到其他业务区域,所以,要在交换机的所有接口上配置交换机端口广播抑制,设置广播的最大通过量。
备份原ZTE交换机的配置
使用SecureCRT软件登录到ZTE设备的CLI界面,同时在SecureCRT上设置记录日志,然后使用Show run命令将ZTE设备的配置命令保存在文本文件中。此举一方面是为了分析ZTE交换机中原有的配置构成,另一方面也是为了割接失败的时候方便回退操作。
测试两台待更换的交换机
只有确保设备能够正常工作了以后,才可对设备进行上架操作。所以,必须对两台Cisco 6509E设备进行前期测试,保证设备电源、引擎板卡、数据业务板卡没有故障,运行完全正常以后才可进行设备的更换。测试的方式已经在案例1里面讲过了,同样的就是Cisco 6509E。
还有,在正式割接开始之前,必须要保证所有业务区域的网络业务是完全正常的。如果发现网络业务有问题,必须把故障完全排除以后才能开始割接,否则出了问题到底是谁的责任就说不清楚了。
所有的业务区域汇聚交换机与NAS核心交换机之间的连接用的都是千兆的多模光纤,所以本次Cisco 6509E上面也不需要准备太多功能板卡。保证每台Cisco 6509上各有一块24口的光纤板卡即可。
新规划的Cisco 6509E-1互联接口如下:
接口编号 | 接口类型 | 允许穿越的VLAN | 描述 |
Gi 2/1 | Trunk | 181 | 连接资产管理区汇聚A |
Gi 2/2 | Trunk | 158 | 连接综合业务区汇聚A |
Gi 2/3 | Trunk | 161 | 连接生产管理区汇聚A |
Gi 2/4 | Trunk | 162 | 连接营销管理区汇聚A |
Gi 2/5 | Trunk | 157 | 连接财务系统区汇聚A |
Gi 2/6 | Trunk | 163 | 连接NAS管理区汇聚A |
Gi 2/7 | Trunk | 158、161、162、157、163、247 | 连接NAS万兆交换机A |
Gi 2/23 | Trunk | All | 心跳线 |
新规划的Cisco 6509E-1互联接口如下:
接口编号 | 接口类型 | 允许穿越的VLAN | 描述 |
Gi 2/1 | Trunk | 181 | 连接资产管理区汇聚B |
Gi 2/2 | Trunk | 158 | 连接综合业务区汇聚B |
Gi 2/3 | Trunk | 161 | 连接生产管理区汇聚B |
Gi 2/4 | Trunk | 162 | 连接营销管理区汇聚B |
Gi 2/5 | Trunk | 157 | 连接财务系统区汇聚B |
Gi 2/6 | Trunk | 163 | 连接NAS管理区汇聚B |
Gi 2/7 | Trunk | 158、161、162、157、163、247 | 连接NAS万兆交换机B |
Gi 2/23 | Trunk | All | 心跳线 |
考虑到该网络环境中设备来自不同的厂商,所以应该考虑使用IEEE通用的生成树协议,即MSTP。在配置生成树协议的时候,将Cisco 6509E-1设置为根桥,将Cisco 6509E-2设置为备份根桥。
Cisco设备、Force 10设备上配置MSTP的命令如下:
spanning-tree mode mst spanning-tree mst configuration instance 1 vlan 158,161,162,157,163,247 |
H3C设备上配置MSTP的命令如下:
stp region-configuration regin-name NAS_Area instance 1 vlan 158 161 162 157 163 247 active region-configuration |
在NAS核心Cisco 6509E-1上设置为根桥,Cisco 6509E-2上设置未非根桥:
NAS-Core-6509-1(config)#spanning-tree mst 1 priority 0 NAS-Core-6509-2(config)#spanning-tree mst 1 priority 4096 |
广播风暴主要发生NAS核心交换机与各个业务区域的汇聚交换机上,所以在NAS交换机上所有连接汇聚交换机的接口上配置端口广播抑制。
Cisco 6509-A、B使用相同的命令,配置命令如下:
interface gi 2/1 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/2 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/3 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/4 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/5 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/6 storm-control broadcast level 30.00 storm-control action shutdown
interface gi 2/7 storm-control broadcast level 30.00 storm-control action shutdown |
在生成树协议都配置好以后,综合业务区这一个区域的广播风暴仍然是无法避免,导致Cisco 6509-B上连接综合业务区汇聚交换机的接口因为广播风暴过大而被shutdown。经过查看拓扑图才发现,综合业务区内部的交换机数量较多,使用这种常规的方式配置生成树是无法正常收敛的。
而且当综合业务区发生广播风暴的时候,其他几个业务区域仍然会受到风暴的影响,所以也没有达到本次改造的目的。
整个网络环境中,只要你把一个VLAN在全网打通,那么这个VLAN内的所有交换机都要参与生成树。特别是营销管理区、生产管理区、综合业务区、财务系统区这4个区域。其中以综合业务区的交换机数量最多。在当初割接的时候,只考虑了综合业务区的汇聚层和核心层设备,没有考虑综合业务区内的接入层交换机。在这种情形下,想要让STP协议正常工作,就需要规划好生成树,比如使用多级生成树等技术。但是这种方式难度有点大。
另外,综合业务区、营销管理区、生产管理区、综合业务区、财务系统区这5个区域的网关全部做在了NAS核心交换机上,二层广播域的范围从接入层直达核心层。从网络设计的原则上来讲,这个设计本身就是有缺陷的。
本来是想重新规划一下生成树的,但是怕二层自计算的这种协议稳定性不好,所以这一次方案采用了二层改三层的设计。设计思路如下:
1、把每个NAS-Server的网关全部转移到NAS核心交换机上;一共6个区域的NAS-Server,就配置6个网关;
2、每个业务区域汇聚交换机与NAS核心交换机之间的链路改为三层IP互联链路,并与NAS核心交换机运行OSPF路由协议;
3、在每个业务区域汇聚交换机上配置策略把路由过滤了,只收互联网段和自己区域的NAS-Server网段。
把NAS核心交换机与汇聚交换机之间的链路改为三层链路以后,由于第三层(网络层)自带隔离广播功能,就可以把广播完全限制在各个业务区域内部。让它们自己的汇聚交换机和接入交换机去处理生成树。NAS核心就可以完全和生成树绝缘,同样达到了控制广播的效果。
在每个业务区域配置路由过滤,不收取其他业务区域NAS-Server的地址,也同样可以达到隔离网络业务的作用。
为6个办公区域分配的NAS-Server的网段和网关如下表所示:
区域名称 | NAS VLAN | NAS 网段 | NAS 网关 |
资产管理区 | 247 | 10.220.247.0/28 | 10.220.247.1 |
综合业务区 | 248 | 10.220.247.16/28 | 10.220.247.17 |
生产管理区 | 249 | 10.220.247.32/28 | 10.220.247.33 |
营销管理区 | 250 | 10.220.247.64/28 | 10.220.247.65 |
财务系统区 | 251 | 10.220.247.96/28 | 10.220.247.97 |
NAS管理区 | 252 | 10.220.247.112/28 | 10.220.247.113 |
NAS-Server的网关仍然配置在核心Cisco 6509E上。
各个区域到核心Cisco 6509E之间的互联地址。这里需要把二层接口改为三层接口。对于H3C设备,使用Access接口,因为对端Cisco 6509是三层接口,仍然可以达到阻断广播的效果。
NAS核心交换机Cisco 6509E-1与各区域交换机互联接口与互联地址规划表:
本端接口 | 对端设备 | 对端接口 | 本端IP | 对端IP |
Gi 2/1 | 资产管理区 Cisco6509E-1 | GigabitEthernet 2/1 | 10.220.128.189/30 | 10.220.128.190/30 |
Gi 2/2 | 综合业务区 H3C 9512-1 | GigabitEthernet 2/1 | 10.220.128.193/30 | 10.220.128.194/30 |
Gi 2/3 | 生产管理区 Cisco6509E-1 | GigabitEthernet 3/0/48 | 10.220.128.197/30 | 10.220.128.198/30 |
Gi 2/4 | 营销管理区 Cisco6509E-1 | GigabitEthernet 4/1 | 10.220.128.201/30 | 10.220.128.202/30 |
Gi 2/5 | 财务系统区 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.205/30 | 10.220.128.206/30 |
Gi 2/6 | NAS管理区 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.209/30 | 10.220.128.210/30 |
NAS核心交换机Cisco 6509E-2与各区域交换机互联接口与互联地址规划表:
本端接口 | 对端设备 | 对端接口 | 本端IP | 对端IP |
Gi 2/1 | 资产管理区 Cisco6509E-1 | GigabitEthernet 2/1 | 10.220.128.213/30 | 10.220.128.214/30 |
Gi 2/2 | 综合业务区 H3C 9512-1 | GigabitEthernet 2/1 | 10.220.128.217/30 | 10.220.128.218/30 |
Gi 2/3 | 生产管理区 Cisco6509E-1 | GigabitEthernet 3/0/48 | 10.220.128.221/30 | 10.220.128.222/30 |
Gi 2/4 | 营销管理区 Cisco6509E-1 | GigabitEthernet 4/1 | 10.220.128.225/30 | 10.220.128.226/30 |
Gi 2/5 | 财务系统区 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.229/30 | 10.220.128.230/30 |
Gi 2/6 | NAS管理区 Force 10 C300 | GigabitEthernet 3/1 | 10.220.128.233/30 | 10.220.128.234/30 |
对于NAS的核心交换机来说,首先要为NAS-Server配置默认网关,在这里使用HSRP路由协议配置。调整生成树,让根桥和HSRP的活跃设备位于Cisco 6509E-1。由于核心交换机与NAS接入交换机都是Cisco交换机,所以生成树协议直接使用Rapid-PVST。
NAS-Core-Cisco6509E-1配置命令如下:
spanning-tree node rapid-pvst spanning-tree vlan 1-1005 prio 0
interface Vlan247 ip address 10.220.247.2 255.255.255.240 standby 247 ip 10.220.247.1 standby 247 priority 105 standby 247 preempt standby 247 track 1 decrement 20 ! interface Vlan248 ip address 10.220.247.18 255.255.255.240 standby 248 ip 10.220.247.17 standby 248 priority 105 standby 248 preempt standby 248 track 1 decrement 20 ! interface Vlan249 ip address 10.220.247.34 255.255.255.240 standby 249 ip 10.220.247.33 standby 249 priority 105 standby 249 preempt standby 249 track 1 decrement 20 ! interface Vlan250 ip address 10.220.247.66 255.255.255.240 standby 250 ip 10.220.247.65 standby 250 priority 105 standby 250 preempt standby 250 track 1 decrement 20 ! interface Vlan251 ip address 10.220.247.98 255.255.255.240 standby 251 ip 10.220.247.97 standby 251 priority 105 standby 251 preempt standby 251 track 1 decrement 20 ! interface Vlan252 ip address 10.220.247.114 255.255.255.240 standby 252 ip 10.220.247.113 standby 252 priority 105 standby 252 preempt standby 252 track 1 decrement 20 ! |
NAS-Core-Cisco6509E-2配置命令如下:
interface Vlan247 ip address 10.220.247.3 255.255.255.240 standby 247 ip 10.220.247.1 standby 247 preempt ! interface Vlan248 ip address 10.220.247.19 255.255.255.240 standby 248 ip 10.220.247.17 standby 248 preempt ! interface Vlan249 ip address 10.220.247.35 255.255.255.240 standby 249 ip 10.220.247.33 standby 249 preempt ! interface Vlan250 ip address 10.220.247.67 255.255.255.240 standby 250 ip 10.220.247.65 standby 250 preempt ! interface Vlan251 ip address 10.220.247.99 255.255.255.240 standby 251 ip 10.220.247.97 standby 251 preempt ! interface Vlan252 ip address 10.220.247.115 255.255.255.240 standby 252 ip 10.220.247.113 standby 252 preempt |
配置连接资产管理区汇聚设备的互联地址,并配置OSPF。
NAS-Core-Cisco6509E-1配置命令如下:
interface GigabitEthernet2/1 no switchport ip address 10.220.128.189 255.255.255.252 router ospf 100 router-id 10.221.143.15 passive-interface Vlan248 passive-interface Vlan249 passive-interface Vlan250 passive-interface Vlan251 passive-interface Vlan252 network 10.220.128.189 0.0.0.0 area 0 network 10.220.247.2 0.0.0.0 area 0 network 10.220.247.18 0.0.0.0 area 0 network 10.220.247.34 0.0.0.0 area 0 network 10.220.247.66 0.0.0.0 area 0 network 10.220.247.98 0.0.0.0 area 0 network 10.220.247.114 0.0.0.0 area 0 network 10.221.143.15 0.0.0.0 area 0 |
NAS-Core-Cisco6509E-2配置命令如下:
interface GigabitEthernet0/2 no switchport ip address 10.220.128.213 255.255.255.252 router ospf 100 router-id 10.221.143.16 passive-interface Vlan248 passive-interface Vlan249 passive-interface Vlan250 passive-interface Vlan251 passive-interface Vlan252 network 10.220.128.213 0.0.0.0 area 0 network 10.220.247.3 0.0.0.0 area 0 network 10.220.247.19 0.0.0.0 area 0 network 10.220.247.35 0.0.0.0 area 0 network 10.220.247.67 0.0.0.0 area 0 network 10.220.247.99 0.0.0.0 area 0 network 10.220.247.115 0.0.0.0 area 0 network 10.221.143.16 0.0.0.0 area 0 |
其他区域的互联地址配置和OSPF发布路由与资源管理区类似,在这里就不再赘述了。
以资产管理区为例,我们来看一下各个业务区域应该如何配置。
在业务区域的汇聚交换机上,首先要配通与NAS核心交换机的互联地址,然后配置OSPF,把业务区域的网段和互联地址网段发布到OSPF中。最后,Cisco、Force 10交换机配置ACL与分发列表(Distribute-List)过滤路由;H3C交换机使用Prefix-List和Route-Policy过滤路由。
资产管理区Cisco 6509E-1配置命令如下:
interface GigabitEthernet2/1 no switchport ip address 10.220.128.190 255.255.255.252
//配置ACL,包含本机允许接收的网段(本区域NAS-Server网段与Cisco 6509E的1、2号机与NAS核心交换机的互联地址网段) access-list 1 permit 10.220.247.0 0.0.0.15 access-list 1 permit 10.220.128.188 0.0.0.3 access-list 1 permit 10.220.128.212 0.0.0.3 access-list 1 permit 10.192.0.0 0.0.255.255
router ospf 100 router-id 10.192.33.1 network 10.220.128.190 0.0.0.0 area 0 network 10.220.181.0 0.0.0.255 area 0 distribute-list 1 in //在分发列表中调用序号为1 的ACL |
资产管理区Cisco 6509E-2配置命令如下:
interface GigabitEthernet2/1 no switchport ip address 10.220.128.212 255.255.255.252
//配置ACL,包含本机允许接收的网段(本区域NAS-Server网段与Cisco 6509E的1、2号机与NAS核心交换机的互联地址网段) access-list 1 permit 10.220.247.0 0.0.0.15 access-list 1 permit 10.220.128.188 0.0.0.3 access-list 1 permit 10.220.128.212 0.0.0.3 access-list 1 permit 10.192.0.0 0.0.255.255
router ospf 100 router-id 10.192.33.2 network 10.220.128.212 0.0.0.0 area 0 network 10.220.181.0 0.0.0.255 area 0 distribute-list 1 in //在分发列表中调用序号为1 的ACL |
对于综合业务区使用的是H3C 9512设备,不支持在OSPF中使用分发列表,应该使用前缀列表过滤路由。
interface Vlanif1001 ip address 10.220.128.194 255.255.255.252 # interface GigabitEthernet3/0/48 port link-type access port access vlan 1001
//配置前缀列表,包含允许接收的网段 ip ip-prefix NAS index 10 permit 10.220.247.16 28 28 less-equal 32 ip ip-prefix NAS index 20 permit 10.192.0.0 16 16 less-equal 32 ip ip-prefix NAS index 30 permit 10.220.128.192 30 30 less-equal 32 ip ip-prefix NAS index 40 permit 10.220.128.216 30 30 less-equal 32
ospf 100 filter-policy ip-prefix NAS import //调用列表过滤路由 area 0.0.0.0 network 10.220.128.192 0.0.0.3 network 10.220.161.0 0.0.0.255 network 10.192.33.5 0.0.0.0 # |
在这里,其他区域的配置都与上述两个区域类似,就不再赘述了。
每个区域只能收取到各自区域的NAS-Server网段和与NAS核心交换机互联地址的网段,不能收到其他区域NAS-Server的网段。
下表显示资产管理区收到的OSPF路由
ZCGL-C6509-1#show ip route ospf ……
Gateway of last resort is not set
10.0.0.0/8 is variably subnetted, 6 subnets, 4 masks O 10.220.128.212/30 [110/21] via 10.220.128.189, 00:01:49, Ethernet0/1 O 10.220.247.0/28 [110/11] via 10.220.128.189, 00:01:49, Ethernet0/1 |
该业务区域可以收到资产管理区Cisco 6509-2与核心之间的互联网段10.220.128.212/30和NAS-Server网段10.220.247.0/28,其他区域的路由都收不到,所以资产管理区满足需求。
下表显示综合业务区收到的OSPF路由
<ZHYW-9512-1>dis ip routing-table protocol ospf Public Routing Table : OSPF
Destination/Mask Proto Pre Cost NextHop Interface 10.192.33.0/24 O_ASE 150 1001 10.220.128.193 vlan 1001 10.220.128.216/30 O_ASE 150 1001 10.220.128.193 vlan 1001 10.220.247.16/30 O_ASE 150 1001 10.220.128.193 vlan 1001 |
本次网络改造中,除了资产管理区以外,其他5个区域的NAS-Server更换了IP地址,所以与ISCSI、DFS相关的服务需要重新挂载,当然,这个也就不属于网络工程师管理的范围了。但是网络割接完成以后,ping测试和Tracert测试是必要的,不但要保证网络ping通,在Tracert的时候也要保证来回路径一致。
本案例把失败的经验拿出来讲,实际上就是为各位同行们提一个醒:在针对这种大型网络的时候,一定要把广播域的范围控制得越小越好。这张网络在最开始的设计就是有问题的,那就是太注意“节约”IP地址了,而把几个业务区域的二层广播范围直接泛洪到了核心交换机。如果广播域太大,单纯使用常规的生成树配置是无法控制住广播风暴的;而配置CST,多级生成树,不但概念难以理解,而且配置起来效果恐怕也不好。
所以,只要设备性能支持,该做三层的地方,你还得做。本来嘛,三层上的东西本来就比二层上的东西更容易控制。
在该案例中,将各个区域汇聚交换机的与核心交换机之间的链路改为了三层链路,就可以从根本上把广播域“关”在各个业务区内部。即使某个区域有广播风暴,它也不会影响到其他的区域。我在想啊,可能当时设计这张网的人也想到了汇聚与核心之间应该用三层链路,但那个“每个区域只能访问自己区域的NAS-Server”让那群设计者犯难了,因为他们认为:“如果是路由打通了,你就必须在汇聚设备上写大量的ACL来做访问控制。”但是他们忘了一点:ACL不仅是可以控制节点之间的访问,还能控制路由的收发呢。你不让这个区域访问其他区域的NAS-Server,那就把其他路由过滤掉就OK了,比你写一大篇的ACL轻松得多。
原文地址:http://blog.51cto.com/wzjxzht/2086788