6.1思科实验:STP生成树实验 实验准备:将SW1、2、 3的链路接口做中继接口 SW1:启用VTP,修改域名为CCIE,vtp版本2,模式为server,开启VTP pruning来做一个优化 现在做好之后SW2 SW3已经同步了,模式都为server,把SW3改为client客户端模式, SW1:创建2个vlan,vlan 10的流量通过左边走,vlan 20通过右边走,实现负载均衡 SW2: VTP Server模式 SW3: Client Server模式 SW1的接口配置 SW2的接口配置 SW3的接口配置 SW1验证trunk信息 SW1创建VTP sw1(config)#vtp domain CCIE 域名CCIE sw1(config)#vtp version 2 版本2 sw1(config)#vtp mode server VTP模式改为server模式 sw1(config)#vtp pruning 开启vtp修剪 SW2 创建VTP,因为需求上sw2也是server模式。 SW3创建VTP SW3的VTP模式为客户端模式 VTP配置完成,在SW1创建两个VLAN,vlan100 vlan200 SW3验证:VLAN已经同步。 现在在SW1上面查看一下STP生成树中有哪些进程(思科交换机默认开启stp) SW1#show spanning-tree 上图信息: 一共是3个进程 vlan 1 vlan 10 vlan 20 (没有截图下面的,太长了哈哈) Spanning tree enabled protocol IEEE 表示使用的哪个版本STP协议 为STP 802.1D 802.1D 显示IEEE,802.1w显示 RSTP,802.1S显示MSTP(图上显示的是IEEE) Root ID Priority 32769 Address aabb.cc00.1000 Address 背板MAC地址, This bridge is the root 根桥 Hello Time 2 sec Max Age 20 sec Forward Delay 15 sec 根桥的一系列参数,Priority BID优先级为32769,默认是32768+扩展系统ID 1. This bridge is the root 说我这台switch就是关于这个实例的根桥,既然我是根桥,那么Bridge ID是一样的。如果不是根桥 上面就是根桥的 BID信息 下面就是我自身BId信息, Interface : 包含接口的所有信息 role : 端口信息为 desg 指的是指定端口 STS 工作状态: 是FWD Cost :100: 100代表该接口为10M (万兆 是2 千兆是4 百兆是 19 十兆 是 100) Proi.nbr : 为port ID, 前面为优先级值 后面为接口编号 Type : 接口所连接的链路的类型 ,P2P为全双工,shr 为半双工。 802.1d中没有这个概念,在802.1W出现的,用于描述交换机的双工模式 默认情况下交换机的默认参数一致。 根桥选举:在所有参数一样的情况下,比的是背板MAC地址。SW1的背板MAC地址比别人小,在默认所有进程中肯定是根桥,正常情况下组网,应该让高配性能较好的交换机来做根桥。 每台交换机启用STP SW1启用STP,开启所有vlan 上图发现STP可以设置三个版本,mst为802.1S pvst 为802.1D rapid-pvst为802.1W 我这台Switch默认是1D 所以不用配置,如果你们的交换机默认不是,执行下列命令更改 SW1(config)#spanning-tree mode pvst ——·扫描下方微信二维码,回复“实验手册”。即可领取资料或为你答疑解惑。·——
现在咱们做一个小操作:将 ① vlan 100进程 SW1做主根 SW2做备份根 ② vlan 200 进程 SW2做主根 SW1做备份根 修改SW1的VLAN100 的BID。 sw1(config)#spanning-tree vlan 100 priority 4096 将BID优先级改为4096 比的是BID 上图可以看到,已经更改完毕,但是为什么不是4096呢?这里是因为扩展系统ID为10,最终结果加上咱们修改的4096,得出结果等于4196 去SW2看一下,VLAN100进程中是否认可SW1为根桥。发现已经承认SW1的为根桥。 show spanning-tree vlan 100 查看stp生成树中vlan信息 SW3也已经认可SW1的根桥,下一步将SW2作为VLAN100的备份根桥 SW2(config)#spanning-tree vlan 100 priority 8192 修改sw2的BID仅次于根桥,但是要优于其他交换机 第一个小操作完成。 vlan 100进程 SW1做主根 SW2做备份根 来分析下vlan100的根端口和指定端口有哪些? 现在是SW1为根桥所有端口为指定端口,SW2为备份根桥,4个接口收到BPDU、RID都一样 cost值,上面100,下面100+100=200,上面2个小,再比较转发者Bid都是sw1,比不出来,再比P ID,由于SW1的2口优于3口,所有SW2的0/2口为根端口。 SW3 的0/0端口为根端口。 SW1的端口都为指定端口,SW3的0/1肯定是非指定端口,SW2的0/3是非指定端口。 需要选举的是SW3和SW2之间的两根链路两端,到底谁来做指定端口, 第一步比较发送方的router ID,在这里肯定是一样的,比较不出来,开始比较第二步。 第二步比较cost值都是100,第三步比较发送的BPDU由携带的BID,这个BID由于sw2是备份根桥肯定比SW3要小,所以sw2的0/2端口为DP。SW3的0/2接口为NDP, 现在是默认的结果 现在让SW2、SW3的0/3接口关于vlan100做根端口,是port ID比较出来的,我们修改发送端DP SW1的0 /3接口把 port ID改小或者将0/2改大,默认是128,所以修改的时候必须是64的倍数 SW1(config)#int e0/3 进入E0/3接口 SW1(config-if)#spanning-tree vlan 10 port-priority 64 在这改小,现在查看一下SW2的接口 发现已经改过来了。 现在是R2的0/3端口为根端口,通过修改portID的优先级来影响根端口的选举 修改的优先级必须是发送BPDU的DP接口的优先级,因为比较的是接口接收到的BPDU中包含的portID 现在让SW3的0/3端口做根端口, 通过修改cost值。 在比cost值的时候,0/0 0/1 是100,而 0/2 0/3 是200 ,0/0优选,0/3在第二步已经淘汰,所以 把0/0 0/1接口cost值改大,改为210 比200大 大家一定要知道这么一点,在生成树的环境中,根桥始发的BPDU cop的字段恒为0,是根据接收接口的带宽来增加对应的度量值,再把BPDU发走,是在入接口增加的 发现已经切换到E0/2了,因为上面的端口的COST值非常大。 Cost 为210 现在根端口是0/2 ,0/0和0/1在比较第二步到时候,0/2 0/3接口为200,为0/0和0/1我们修改了为了210,所以0/2和0/3优选,第三步比较转发者BID 都是 SW2 ,比不出来,所以比较第四步,就是比较SW2 0/0 0/1 port ID, 0/0 比0/1小,所以SW2 0/0对用的SW3 0/2就是根端口, 现在SW3 0/3做根端口 可以把SW3 0/2接口cost值改大,或者把0/3 cost 改小 或者修改SW2接口的优先级 把0/0改大 或者把0/1改小,尽量改大。 SW3(config)interface range Ethernet 0/2 SW3(config-if)#spanning-tree vlan 10 cost 110 0/2接口cost值改110 第二个小操作: vlan 200 进程 SW2做主根 SW1做备份根 再来做vlan200根桥和SW1备份根桥 SW2(config)#spanning-tree vlan 20 root primary 是一条宏命令,他会分析判断域内其他交换机bridge ID的值,根据其他交换机的bridge ID的值 ,来自动修改自己的值,把自己的值改为其他交换机的最小值在减去8192 而华为的直接优先级是0 SW1(config)#spanning-tree vlan 20 root secondary 会根据根桥的信息 来判断bridge ID优先级值,要比其他交换机小,但是要比根桥大,一般根据其他交换机bridge ID减去4096. 以上实验完成后,可以配 bridge ID优先级 、接口port ID的优先级以及cost值,影响选举绰绰有余了 ——·扫描下方微信二维码,回复“实验手册”。即可领取资料或为你答疑解惑。·——
|