*生成树协议用于实现二层的线路冗余
在网络中逻辑阻塞部分接口,来实现从源到目标仅 用于唯一的一条路径。
当最佳路径故障时,阻塞端口自动工作来实现备份的作用,所谓生成树,其实就是在二层的网络中构建一个树形结构
(唯一,最短,星型拓扑)
所有交换机间使用BPDU的数据帧来进行沟通
BPDU(桥协议数据单元,跨层封装到
二层
BPDU的两种类型
1.配置BPDU
只有根网桥可以发出,在最初无根网桥时,所有交换机均发出
2 次优BPDU --TCN-拓扑变更消息
hello time 2s
hold time 20s
IEEE802.1D算法
在根网桥的桥接环路中进行4中角色的选举:
1. 根网桥(一台交换机为一个单位)
2.根端口(一个接口为一个单位)
3指定端口(一个接口为一个单位)
4 非指定端口(一个接口为一个单位)
默认初始时,所有减缓及均认为本地是根网桥,均向外发送本地BPDU,其他交换机仅进行转发
根网桥(一台交换机)
在一棵生成树中有且仅有一台
对整个树进行管理和部署,通过发送BPDU来进行指挥和维护
选举参数:BPDU中存在BID-桥ID
网桥优先级默认32768
范围 0-65535
MAC地址 背板地址池中最小值的MAC地址
选举规则:先比较BID中网桥优先级,最小最优,若优先级相同,再比较MAC地址,小优
根端口(一个接口):在每台非根网桥上
有且仅有一个,根端口是非根网桥上离根网桥最近的接口,该接口可以转发用户的流量,用于接收来自根网桥的BPDU
选举参数:PID=端口 ID=接口优先级+接口编号
接口优先级=128 范围0-240
选举规则:
1.比较各个接口从根网桥发出到该接口进入时的最小cost值--进接口
2.若入口的cost值相同,变比较该接口对端的交换机BID,小优
3.若对端的BID相同, 便比较该接口对端接口的PID,先比较PID中的优先级,小优,若优先级相同比较编号
4.若接口的PID相同,比较本地的PID小优
指定端口(一个接口):在每段物理链路中有且仅有一个, 指定端口是用与转发用户的数据,以及转发来自根网桥的BPDU,默认根网桥所有的端口均为指定端口
选举规则:
1.比较从根网桥发出后,经过该接口再发出时的cost值,小优—出方向
2.若出向cost值相同,比较本地的BID。小优
3.若本地BID相同,再比较本地的ID,小优
4若本地PID相同,该接口直接阻塞
非指定端口:阻塞端口(一个接口)
逻辑阻塞,可以收到流量,但是不向人和接口进行转发
选举规则:当一个网络中将以上三种角色均选举完成后,剩余所有未分配任何角色的接口成为非指定端口
关于生成树协议的干涉,至少必须关注根网桥的位置,最合适的地点为汇聚层设备
在802.d算法中,端口除了角色外,还存在状态
down:默认所有交换机接口初始状态,指示灯不显示,一旦双up ,向外发出BPDU计入下一状态。
listening:帧听(15 s)
指示灯为橙色,进行生成树的选举,各个接口角色的生成
若接口角色为根端口或指定端口那么进入下一状态,若接口角色定义为非指定端口状态直接切换为阻塞,指示灯保持为橙色
学习(15s)
指数灯为橙色,学习PC发出的数据包中的原 MAC,生成MAC地址表,学习完成后进入下一状态吧
forward:转发 指示灯为绿色
阻塞状态–非指定端口的状态
1.初始收敛 30s
2.结构突变
1)30s 直连检测前提下,本地的阻塞启用需要15 s帧听+15 s 学习
2)50 s非直连检测的前提下,阻塞端口需要20 shold time+30s选举
任何借口在选举未完成前,均不能转发用户的流量
802.1 d算法的缺点:
1.收敛速度慢
2.链路利用率低
三、PVST+: cisco的技术;其工作原理同PVST完全一致;但可以基于isl和802.1q工作;
可以实现部分的加速;
干涉PVST+的生成树选举指令:
1、修改网桥优先级,可以起到干涉根网桥位置,包括各种端口;
Switch(config)#spanning-tree vlan 3 priority 28672 必须基于不同的vlan分开进行
2、直接干涉根网桥的位置
sw1(config)#spanning-tree vlan 2 root primary 本地成为vlan2的根网桥
sw1(config)#spanning-tree vlan 3 root secondary 本地成为vlan3的备份根
原理:修改为根,本地自动将网桥优先级下调2倍4096;修改为备份根下调1倍4096;
3、修改接口的优先级 默认128,范围0—240
sw1(config)#interface fastEthernet 0/24
sw1(config-if)#spanning-tree vlan 2 port-priority ?
<0-240> port priority in increments of 16 修改时必须为16的倍数
4、修改接口的cost值
CORE(config)#interface f0/1
CORE(config-if)#spanning-tree vlan 2 cost ?
<1-200000000> Change an interface’s per VLAN spanning tree path cost
PVST+的部分加速指令:
1、端口加速 ----用于access接口,连接pc;不需要进行生成树选举,直接进入转发状态;
Switch(config)#in f0/1
Switch(config-if)#spanning-tree portfast
CORE(config)#interface f0/35
CORE(config-if)#switchport host 接口默认修改为access,同时portfast功能激活
CORE(config)#spanning-tree portfast default 全局激活postfast,对trunk干道无效
2、上行链路加速 -----交换机在存在直连检测的前提下,本地阻塞端口需要15s侦听,15s学习才能进入
转发状态,开启上行链路加速后,这种接口将直接进入转发状态;
CORE(config)#spanning-tree uplinkfast 该指令只用于接入层设备;
因为接入层设备存在阻塞端口最佳,故uplinkfast开启后,该设备的网桥优先级和cost值将成倍增加;被强制固定为非根设备;
3、骨干加速----交换机在没有直连检测的前提下,需要20s的hold + 30s的收敛才能转发流量;开启骨
干加速后,可以省略20s的hold 但剩余30s,必须正常进行;
CORE(config)#spanning-tree backbonefast 所有交换机均可以正常使用
优点:1、可以将不同vlan的根网桥放置于不同的汇聚层设备上,然后实现流量的分担,提
高了链路的利用率;
2、可以部分的加速、兼容802.1Q
缺点:1、收敛速度慢 –加速不够彻底
2、树形结构多
RSTP/RPVST/802.1W:快速生成树(1-2s收敛完成)
RSTP/RPVST为私有协议基于每个VLAN一颗生成树,选举算法同PVST+一致;
802.1w为公有协议,整个交换网络为一棵树;
不依赖计时器,主动的切换接口状态;
sw1(config)#spanning-tree mode ?
mst Multiple spanning tree mode 802.1s
pvst Per-Vlan spanning tree mode pvst+
rapid-pvst Per-Vlan rapid spanning tree mode 802.1w
sw2(config)#spanning-tree mode rapid-pvst 建议所有交换机切换模式一致
注:不是所有的物理接口均支持RSTP;
点到点链路 RSTP
共享型链路 默认不支持RSTP,默认为PVST+
链路类型由接口的双工模式来决定:全双工 —点到点
半双工 ----sharde
sw2(config)#interface range ethernet 0/0 -1
sw2(config-if-range)#spanning-tree link-type point-to-point 修改链路的类型
优点:快速、分流、兼容
缺点:树多
MSTP/802.1S:多生成树
1、基于一个组一颗生成树,一个组中可以放置多个VLAN
2、快速收敛–同802.1W机理一致,故半双工接口需要修改链路类型
配置:
sw1(config)#spanning-tree mode mst 所有交换机上修改
默认存在0号组,所有VLAN均在该组
sw1#show spanning-tree
sw1#show spanning-tree mst 0
sw1(config)#spanning-tree mst configuration 进行组配置
sw1(config-mst)#instance 1 vlan 6-10,115 创建组号1,同时定义该组的VLAN
注:该命令必须在所有交换机上均配置;
sw1(config)#spanning-tree mst 1 root ? 修改根网桥的位置
primary Configure this switch as primary root for this spanning tree
secondary Configure switch as secondary root
sw1(config)#spanning-tree mst 1 priority ? 修改网桥优先级
<0-61440> bridge priority in increments of 4096
sw1(config-if)#spanning-tree mst 1 ? 修改接口优先级,或cost值
cost Change the interface spanning tree path cost for an instance
port-priority Change the spanning tree port priority for an instance
切记:在PVST以上的生成树协议中,均存在基于不同vlan或不同的组来实现多生成树;
若基于多vlan的生成树协议,要求本地必须存在这些vlan,同时本地存在这些vlan的活动用户或者存在活动的trunk干道;否则该交换机上不会出现该vlan的树;
基于组的生成树,原理一致;
CDP:cisco设备发现协议
sw#show cdp neighbors 通过CDP协议可以远程了解网络拓扑;默认开启60s周期向所有邻居告知本地信息;
但cdp协议携带目标敏感信息—VTP 域名 nativevlan id
建议接入层设备同用户相连的接口关闭CDP 协议
sw(config)#no cdp run 全局关闭,该设备上直接关闭CDP协议
sw(config)#interface e0/0
sw(config-if)#no cdp enable 关闭某个接口的CDP协议
SSH:安全外壳协议
安全的远程登录协议,自动对流量进行加密传输
IOS版本中携带K字母,标示安全性设备;
若一台设备需要基于SSH登录,需要该设备上存在秘钥库;
r1(config)#ip domain name haojian.com
r1(config)#crypto key generate rsa general-keys 默认生成512长度
r1(config)#crypto key generate rsa general-keys modulus 1024
可修改1024,SSH版本1.99支持
生成秘钥库后,开启远程登录即可
r1(config)#line vty 0 4
r1(config-line)#login local
r1(config-line)#exit
r1(config)#username ccna privilege 15 secret cisco123
默认此时telnet和ssh登录均可
r1(config)#line vty 0 4
r1(config-line)#transport input ssh 仅允许SSH登录
使用一台设备来SSH登录另一台设备
r2#ssh -l ccna 1.1.1.2
Password: