大家好,欢迎来到IT知识分享网。
TTL字段是IP协议的一部分,存在于每个IP数据包中,而不仅仅是路由器中的。无论是路由器还是三层交换机,只要它们处理IP数据包,就会处理TTL字段。
传统的二层交换机没有内置的防环机制,因为它们仅在数据链路层工作,而路由器和三层交换机在网络层工作,可以使用路由协议(比如ospf、bgp等)来避免环路的产生。
根桥ID:0741,开销值20000
一、STP:
1、选举根桥
所有交换机在初始状态下都会认为自己是根桥,发送以自己为根的BPDU(报文中的root id字段为自己的BID 所有的交换机都会使用BPDU中的root id来进行PK,比较桥ID,谁的BID更优秀谁将成为根桥。 BID的比较原则:首先比较桥优先级,数值默认为32768,越小越优。如果优先级比较不出来,则继续比较桥MAC地址,越小越优先。
2、在每一台非根交换机上选举一个根端口
选举原则:非根交换机接收到最优BPDU的接口为根端口(RP) 最优BPDU的标准: 2.1 root id小的(RID) 根桥的桥ID 2.2 RPC根路径开销小的(报文中携带的RPC+该接口的RPC) 2.3 sender bid小的(BID) 由桥优先级(默认取值为32768,4096倍数)和桥MAC地址组成 如果为同一个交换机发出的两个条线路就有可能导致比较不出来mac地址(因为是同一个交换机) 2.4 sender pid小的(PID) 由端口优先级(默认取值128,16的倍数)和端口号构成 2.5 本地pid小的 即 接口id更小的
3、在每一条链路上选择一个指定端口
当非根交换机选举出根端口以后,将会默认其他端口为指定端口。那么就会将根端口接收到的BPDU进行一个加工,将自己的一些参数加工后,生成新的BPDU由这些指定端口向外发送 这个指定端口在向外发送加工后的BPDU时,同时也会受到对向发来的BPDU。这时就要进行PK: 3.1 收到对端发来的BPDU后,如果认为自己的BPD更优秀,那么DP端口不会改变,继续保持为DP角色收到 3.2 对端发来的BPDU后,如果认为对方的BPDU更优秀,那么DP端口将会被阻塞。 注意:根桥的所有端口默认为指定端口
STP小总结:
1、STP的端口角色:
RP:根端口 DP:指定端口 AP:预备端口(阻塞端口)(不属于STP的端口角色) 属于根端口(RP)的备份 BP:备份端口(不属于STP的端口角色) 属于指定端口(DP)的备份 所有:STP的端口角色只有两种
2、STP的端口状态:
2.1 disable(禁用) 端口down或者没有开启STP协议,这时该接口不处理任何BPDU 2.2 listening(倾听) 接收BPDU,发送BPDU,不学习MAC地址,不转发数据 2.3 learning(学习) 接收BPDU,发送BPDU,学习MAC地址,不转发数据(可以侦听业务数据帧,但不能转发) 2.4 forwarding(转发) 接收、发送BPDU,学习MAC地址,转发数据(可以正常收发业务数据帧) 2.5 blocking(阻塞) 接收、不发送BPDU,不学习MAC地址,不转发数据
如果在RSTP中,进入listening状态后,如果端口角色是DP或者RP的话,经过15s后会进入learning状态,如果端口角色是BP的话,则会返回上一个端口状态
一般情况下只看得到阻塞和转发
端口状态转换:
DP、RP、BP常见状态以及作用
DP通常处于转发(Forwarding)状态。因为它是负责转发数据帧和BPDU的端口。DP是每个网段上唯一的端口,它确保了BPDU能够从根桥顺利传递到整个网络。
RP通常处于转发(Forwarding)状态,可以转发数据流量和BPDU。(每个非根桥至少有一个根端口(RP))
BP通常处于丢弃(Discarding)状态,不转发数据流量,但可以接收并处理BPDU,用于在DP出现故障时迅速接管其角色。
}
3、拓扑改变(TC(TCN)和TCA置位)
在STP协议中,BPDU有两种类型,分别为配置TCA-BPDU和TCN-BPDU 当非根交换机网络拓扑发生改变时,会发送TCN-BPDU给根桥,沿路交换机会给原始交换机回复TCA,同时继续向根桥转发该TCN-BPDU 当根桥收到TCN-BPDU后,将会沿原路回复TC和TCA置位的配置BPDU,沿路收到TC置位的BPDU时将会把自己的MAC地址表老化时间强制修改为15s。
(mac地址默认的老化时间是5min)
如果配置为边缘端口了,当收到TC置位的BPDU,EP端口也不会清除MAC地址表
TC和TCA都置位为1代表要快速收敛了
4、STP的几个计时器
4.1 hello time:2s一次 4.2 老化时间max age:20s 4.3 message age:每转发一次会+1,默认最大不超过20跳 4.4 forwarding delay:15s
blocking->Listening很短暂就选出好了,其他两个就很久各自要15s才能到达
由于STP一收敛就断30s,所以当网络拓扑频繁发生变化时,网络也会随之失去连通性。所以2001发布了802.1w标准定义的RSTP(STP:802.1d,MSTP:802.1s)
二、RSTP:
1、端口角色的扩充
RP:根端口 DP:指定端口 AP:预备端口(阻塞端口),给RP做备份的 BP:备份端口(backup port),给DP做备份的
2、端口状态的优化
对于disable listening blocking状态来说结果都是不转发流量,不学习MAC,RSTP将这3个状态合并为一个:discarding状态(3合1状态)
3、P/A机制
4、根端口快速切换机制
5、次优BPDU立即处理,配合P/A机制
6、EP(边缘端口)
在华为设备中:A一直都是1,不会变成0
3:P/A机制:
P/A机制原理:两个交换机(1、2)都发送P置位的BPDU,比较两个桥ID哪个更优,更优的就继续发送以P置位的BPDU,2则发送A置位的BPDU,端口角色也从DP更换成RP。端口状态也直接变成Forwarding,这时候1收到2的A置位的BPDU,那么1的端口角色保持DP,端口状态会变成Forwarding状态,此时,交换机1发送的BPDU不再需要P置位,因为它已经是根桥。A置位用于确认收到的BPDU信息。
解析:即代表上述中的2发送A置位的BPDU,端口角色也变成了RP,端口状态变成Forwarding
解析:代表上述中的1收到2的A置位的BPDU,端口角色仍为DP,端口状态为forwarding。因为这时候它已经是根桥ID了,所以不用把P置位了
RSTP报文解析:
4:根端口快速切换机制
5:次优BPDU立即处理,配合P/A机制
AP会收到SWB发送的P置位的BPDU,同时也发送SWA发送给SWC的BPDU,两者进行PA协商,最后SWC的AP阻塞端口变更为DP,SWB的DP端口变更为RP。
如果在STP中,SWC就要等SWA给SWC的BDPU老化时间(20s),然后再等SWB与SWC的STP收敛,然后AP会变成DP(30s)
6:EP边缘端口
如果根桥发生改变,PC与交换机的收敛需要照着STP收敛速度等待30s(很久)为了不让PC与交换机的收敛还要照着STP收敛速度等30s 而设计的
6.1:当配置边缘端口,那么该端口默认不会进行STP收敛工作,而是直接进入forwarding(转发)状态 6.2:当边缘端口收到BPDU后,该接口变成普通端口,进行生成树收敛工作。 6.3:边缘端口每2s会发送一个BPDU,用于判断是否自环 6.4:当检测到自己发出的BPDU从其他边缘端口收进来时,会判断为自环,然后2个边缘端口都会变成普通端口,进行生成树收敛工作。 6.5:当收到TC置位的BPDU时,EP端口的MAC也不会被清空
交换机上的 stp mode rstp //配置rstp stp priority 0 //配置stp优先级 interface GigabitEthernet0/0/3 stp edged-port enable //将端口配置为边缘端口 [ISW8]stp edged-port default //全局边缘端口 stp disable //关闭stp stp enable //开启stp display bridge mac-address //比较桥MAC地址 eg:System bridge MAc address:4c1f-cc47-332e
LSW5配置了边缘端口,每2s发送BPDU,
解析:发送一个组播地址,(只有加入这个组播,才能处理这个BPDU),但是又因为它不支持生成树,即不在这个组里,所以无法处理。所以LSW5两个接口都收不到对方接口的BPDU,所以无法进行生成树的收敛了,所以就导致环路。
如果LSW6是一个物理层设备就可以直接作为转发设备。(交换机至少是2层设备,不能直接透传组播流量)所以会把BPDU转发给LSW5的另一个接口,所以会进行生成树的收敛,LSW5的g0/0/1接口就会进入Forwarding状态,g0/0/2接口就会进入discarding状态。
关于STP和RSTP的问题:
BPDU保护
1、针对对象:边缘端口
由于边缘端口存在一定风险,当外接支持生成树功能的交换机时会触发BPDU收敛,使得EP端口变成别的端口,为了防止网络拓扑发生非预期的变动。造成网络重新收敛,导致断网。
保护方法:针对边缘端口配置BPDU保护。
作用原理:当边缘端口配置了BPDU保护以后,边缘端口在收到BPDU以后,该接口会进入error-down状态。但是边缘端口属性不变
开启BPDU,只是为了保护自己生成树稳定, 为了避免收到BPDU变成别的端口,不是为了阻止接交换机的(一般情况下EP端口对端接口都是接PC主机)
[LSW1]stp mode rstp [LSW1]stp priority 4096 [LSW2]stp mode rstp [LSW2]stp priority 32768 [LSW2-GigabitEthernet0/0/2]stp edged-port enable //让2接口变成边缘端口就行 [LSW2]stp bpdu-protection //全局下配置BPDU保护功能,那么只要是边缘端口就会默认将开启BPDU保护功能 [LSW3]stp mode rstp [LSW3]stp priority 0
配置边缘端口的两种方法(全局配置和上述演示的单个接口配置)
stp edged-port default //全局配置该命令后,交换机的所有接口全部配置为边缘端口 如果需要改成普通端口stp edge-port disable
根保护(在根交换机上配置)
恢复:当接口不再收到更优的BPDU之后,将会进入正常的STP收敛过程。理论上这个恢复时间为2个转发时延
保护的目的都是为了不让根桥变动,从而发生网络动荡
环路保护(了解)
MSTP
华为中,STP和RSTP都跑在一颗生成树上(另外一颗会被阻塞掉),所以MSTP生成树随之诞生
[LSW3]stp mode mstp //stp调整为MSTP [SW1]stp region-configuration //进入MSTP域配置视图 [SW1-mst-region]region-name HUAWEI //配置MST的域名,如果没有配置,缺省会使用桥MAc地址代替 [LSW1-mst-region]revision-level 12 //配置修订级别 如果没有配置,缺省为0 [SW1-mst-region]instance 10 vlan 10 //将vlan10加入实例10 [SW1-mst-regionlinstance 20 vlan 20 //将v1an20加入实例20 [LSW1-mst-region]active region-configuration//激活以上配置(必须激活才会生效,每增加新配置,都要重新激活) 交换机都要加上以上配置 [SW1]stp instance 10 root primary //将交换机1配置为实例10的主根(作用就是实例10的优先级配置为0) [SW2]stp instance 20 root primary //将交换机2配置为实例20的主根(作用就是实例20的优先级配置为0) [SW2]stp instance 10 root secondary //将交换机2配置为实例10的备份根桥,一旦sw1挂了,sw2将成为实例10的根桥 [SW1lstp instance 20 root secondary //将交换机1配置为实例20的备份根桥,一旦sw2挂了,sw1将成为实例20的根桥 常用查看命令: 1、[SW1]display stp instance xx //查看当前实例详细信息 2、[SW1ldisplay stp region-configuration //查看当前MST域内的详细配置
这时候就可以解决阻塞问题,实现负载均衡
vrrp协议
但是如果一个交换机挂了的话,就不行了(因为vlanif三层挂了,vlan10无法通信),所以需要VRRP协议(虚拟路由器冗余协议(共有协议))
authentication-mode:发送Advertisement报文(两边都配置。如果密码一致,则是同一个vrrp组)
preempt-mode:抢占(自动开启)
priority:优先级(默认100,1-254,越大越优)
timer:控制报文的发送间隔(1s一次)
track:做联动的
version-3:版本(-3对应IPV6)
virtual-ip:VRRP(虚拟)的ip号
这时候要是还想把备份调整为主路由器,就只能调换二者的真实ip地址
//配置抢占延时60s,即故障60s后才恢复过来(给上游协议一些缓冲的机会,不然会导致短暂的流量黑洞) vrrp vrid 1preempt-mode timer delay 60
Advertisement报文:这是VRRP中最主要的报文类型,用于路由器之间的状态通告。Master路由器会定期发送Advertisement报文到组播地址224.0.0.18,以宣告其状态和优先级。Backup路由器通过监听这些报文来判断Master路由器的状态。Advertisement报文包含了虚拟路由器的优先级、虚拟MAC地址、虚 拟IP地址等信息。
track做联动的(常跟bfd链路检测和nqa):
一般用于联动一个设备,用于检测这条链路是否断了,如果断了的话,就把vrrp的主变成备份的路由器。就主备进行一个切换
[LSW1]int vlanif 30 [LSW1-vlanif30]ip ad 192.168.30.2 24 [AR1]ip ad 192.168.30.1 24 //在g0/0/0接口上配置ip地址 [LSW1]vrrp vrid 1 virtual-ip 192.168.10.254 [LSW1]vrrp vrid 1 priority 105 [LSW1]vrrp vrid 1 preempt-mode timer delay 60//配置抢占延时6es //配置链路检测 [SW1lbfd 1 bind peer-ip 192.168.30.1 source-ip 192.168.30.2 auto [SW1-bfd-session-1]commit [AR1]bfd 1 bind peer ip 192.168.30.2 source-ip 192.168.30.1 auto [AR-bfd-session-1]commit //查看bfd [SWl]display bfd session all [SWl]interface Vlanif 10 //与BFD进行联动,当BFD会话down以后,默认将优先级减少 [Swl-Vlanif10]vrrp vrid 1 track bfd-session 1 reduced //不写联动,默认值就是减10
increased:增加优先级
reduced:减少优先级
本来他是105,没必要增加了,所以只需要减少
让他变成备份交换机,让原先的备份成为主交换机
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/117025.html














