实验拓扑
实验配置思路
- 链路聚合配置,做聚合建议先关闭接口,否则如果配置太慢可能导致问题
VLAN
- 有两个用户VLAN,100和200,在所有交换机上创建vlan100和200
- 连接用户的接口为asscee口,交换机相连的接口都为trunk口,允许通过所有vlan
STP
- 所有交换机配置MST域,vlan100放置在instance1,vlan200放置在instance2,SW1为instance1的根网桥,sw2为instance2的备份根网桥
- 我们期望instance最后生成的树状拓扑如图1,因为我计划将vlan100的网关放在SW3,vlan100的流量会直接来到SW3上,如果生图2的拓扑,vlan100的流量访问网关时就会经过SW4-SW1-SW3来到SW3上,在由SW3-SW1访问外界,造成流量路线不规整
- instance2同理,计划将VLAN200的网关放置在SW4上,期望的树状拓扑如下
VRRP
- 本次实验选择将网关配置在汇聚层,SW3和SW4互为主备,SW3为vlan100的主网关,SW4为vlan200的主网关
- 当SW3于接入层的链路故障,造成STP变动,instance1收敛完成后的拓扑,如下图所示,如果此时故障交换机上VLAN100的用户需要访问网关,它只能由二层交换经过sw4-sw1-sw3到达网关,网关回复也只能从sw1-sw4-接入层交换机,导致流量路线不规整
如果将网关配置在核心层,就不会串线上述问题
- 当出现上述的情况时,可以在SW3上配置链路检测,当于某条于接入层相连的接口故障时,自动降低优先级
[DEST-1-Vlanif100]vrrp vrid 1 track interface g 0/0/3 reduced 20
疑问?如果因为某条链路故障而降低优先级,会导致没有故障的接入层访问网关时流量路线不规整
当SW6链路故障导致SW3降低VLAN100网关的优先级,使SW4成为此网关,此时虽然SW5可以直接访问网关,但SW6\7\8都需经SW3-SW1-SW4才能访问网关
- 当VRRP开启了链路检测,当该条链路反复关开,导致VRRP优先级反复变化,由于VRRP是抢占式(当网络中出现优先级更大的变换主),如果SW3降低优先级由SW4成为主网关后,SW3恢复优先级就会抢占主,但SW3链路反复故障,SW3又会降低优先级,这样主网关就会摇摆不定,所以此时我们需要使SW3延缓抢占(优先级恢复后等一个时间在抢占主),这样就可以防止SW3优先级反复变化而引起的网关摇摆
[DEST-1-Vlanif100]vrrp vrid 1 preempt-mode timer delay 5 # 延迟5s开始抢占
- 为保证安全性,我们还可以加密VRRP数据包
[DEST-1-Vlanif100]vrrp vrid 1 authentication-mode md5 xa666
- 关于汇聚和核心间的链路是三层+二层还是只有三层。如果汇聚和核心间只是三层连接,导致STP在汇聚层终结,如下图:
- 当sw5访问网关时,需要经由sw4-sw6-sw3访问到网关,流量路线不规整,且使sw4承担了接入的功能,而sw6承担了汇聚的功能,但sw6的性能不足以支持汇聚的工作,虽然这也可以实现网关冗余,但VRRP可以使流量走向更合理
- 边缘接口配置
OSPF
- 在汇聚、核心、路由器间启动OSPF,核心与汇聚、和核心与核心间建邻,这时需要考虑sw3是只与sw1建邻还是与sw1和sw2建邻;如果只和sw1建邻,当1-3间的链路故障,sw3还可以从sw2处收到sw1的ospf数据包保持邻居关系,但如果sw1故障,sw3就无法学到路由信息,所以sw3需要和sw1和sw2同时建邻
- 既然sw3需要与sw1和sw2同时建邻,那sw3是使用同一个svi建邻还是不同svi建邻呢?如果使用同一个svi建邻,就相当一个MA网络,如果使用不同svi建邻,就相当两个p2p网络
1.如果四个交换机都是用一个svi建邻,由于核心认识两个汇聚,和汇聚只认识两个核心,认识不同,可能导致无法正常建邻,所以核心与汇聚间需要单独一个svi建邻
1是有问题的,因为stp的存在,一个svi只能在一个instance中,而一个instance中,汇聚的一个svi不可能直接和两个核心交流,但可以通过洪泛实现建邻
- 我创建5个VLAN用于交换机间建立OSPF邻居,每两个交换机间使用一个vlan建邻,分别是901、902、903、904、905,刚创建的VLAN默认处于instance0中,由于intance0的树状拓扑我并没有进行调整,所以将这些新建的VLAN添加到instance1和instanc2中
事实上核心交换机一般是不会挂掉的,所以汇聚层只需与一台核心建邻
- 901用于SW3-SW2间传递OSPF数据包,902用于SW3-SW1,903用于SW1-SW2,904用于SW2-SW4,905用于SW4-SW1,
由于STP导致某些端口阻塞,所以需要将这些VLAN分别放在nstance1和instance2中,instance1和instance2的树状拓扑如下
- 901用于SW3-SW2建邻,放在instance2中;902用于SW3-SW1建邻,放在1中;903用于SW1-SW2建邻,1和2都行;904用于SW2和SW4建邻,放在2中;SW5由于SW4-SW1建邻,放在1中
- 整个MST域的交换机VLAN于instance的映射必须相同,所以所有交换机都需新建这些vlan并添加到instance中
- 在核心和汇聚交换机上创建相应的SVI处理OSPF建邻,每个VLAN都对应着一个网段
- 启动OSPF,宣告所有网段,由于宣告后SVI会向所有允许通过该vlan的接口发送数据包,只在需要通过的地方添加允许列表
汇聚和核心之间的接口配置为允许所有,如sw3的901svi发出的数据包就会洪泛到其他所有链路,其他svi同此,901svi就会认识所有其他交换机上的svi,就像交换机的所有svi都连接在一个MA网络
关于区域划分,只做一个区域太low,可以做多个区域,然后做stub区域,核心之间区域0,汇聚-核心区域1,
- 由于SW3和SW4上的用户网段VLAN100和VLAN200都被宣告,SW3和SW4vlan100和vlan200的svi都会发出ospf数据包建邻,但这两个svi的网段信息不建邻也会被发送出去,所以需要将汇聚的两个网关svi进行沉默
- 汇聚可以从两个核心处学到路由,会形成负载均衡,如果不需要负载均衡,可以修改参数(接口开销)影响选路
- 由于网关冗余,SW3和SW4都存在用户网段,核心去往用户网段就会负载均衡,但我们期望的是去vlan100通过SW3,去vlan200通过SW4,这可以通过路由策略实现,在核心与SW4相连的接口抓取vlan100的路由提高开销值,与SW3相连的接口抓取vlan200的路由提高开销值
在第二次实验时,发现,如果核心去往vlan100负载均衡,并把流量发送给SW4,SW4按理说可以将流量由SW3-SW1-SW4然后到到vlan100用户,但在实验时发现SW4不会转发到vlan100用户的数据包
- SW1和SW2各创建一个vlan用于与R1建邻,与R1相连的接口设为acess
- 为加快OSFP收敛,可以将所有运行OSPF的接口模式改为P2P,节省了DR/BDR选举的时间,
- 当路由器与路由器如下图中所连时,当某个路由器故障,另一个路由器还需等待一个老化时间,才会删除从该邻居处学到的路由,如果这两个路由器直连,一端down,另一端会立刻down
[sw1-ospf-1]bfd all-interface enable
实验探讨
- 网关配置在汇聚层和核心层的优劣
网关配置在汇聚层的优:
将网关配置在汇聚层后,汇聚层与核心层的联系只限于三层,使得核心层可以专注于公私网流量交换
终端的MAC地址不会出现在核心层,节省核心层资源
同时将根网桥放在汇聚层,当某些接入层设备出现问题不会影响核心层转发数据,局部问题局部解决,不要影响
在超大型网络中网关建议配置在汇聚层,
网关配置在核心层的优:
不需要动态路由协议,只需要缺省指向边界路由器,边界路由器汇总指回来
配置简单不易出问题
工程知识
- 局域网中上行靠近外网,下行靠近终端
- 模块化:可插拔模块,固化:不可插拔模块
- 流量瓶颈:单个链路的数据期望通过量超过链路带宽
- 因为服务器的流量大,服务器一般会直接连接到核心
- 当核心层与汇聚层处于一个MST域中,如果某个设备频繁断连,导致整个交换网络的MAC表一直刷新,当业务流量来到交换机上,而MAC表是空的,导致大量洪泛,引发网路卡顿,甚至设备瘫痪
- 堆叠、SVF,因为以前的设备性能较低,所以需要三层结构分工,现在随着设备性能越来越好,交换配置越来越简单,一条静态打天下
实验总结
- 局部问题局部解决
- 技术根据情况选择