STP:生成树;
三层架构-----冗余----线路冗余—二层的桥接环路
导致的现象:
1、广播风暴
2、MAC地址表翻滚
3、同一数据帧的重复拷贝
生成树协议用于实现二层的线路冗余,在网络中逻辑的阻塞部分接口,来实现从源到目标仅拥有唯一的一条路径;当最佳路径故障时,阻塞端口自动工作来实现备份的作用;
所谓生成树,其实就是在二层的网络中构建一个树形结构;-----唯一、最短、星型拓扑;
所有交换机间使用BPDU的数据帧来进行沟通;
BPDU====桥协议数据单元,跨层封装到二层;
BPDU存在两种类型:
1、配置BPDU----只有根网桥可以发出;在最初无根网桥时,所有交换机均发出;
2、次优BPDU----TCN—拓扑变更消息
Hello time 2s hold time 20s
一、IEEE802.1D算法:
会在二层的桥接环路中进行4种角色的选举:
1)根网桥(一台交换机为一个单位)
2)根端口(一个接口为一个单位)
3)指定端口(一个接口为一个单位)
4)非指定端口---阻塞端口(一个接口为一个单位)
默认初始时,所有交换机均认为本地是根网桥,均向外发送本地BPDU,之后根网桥被选出;导致今后仅根网桥发出BPDU,其他交换机仅进行转发;
根网桥(一台交换机):在一颗生成树实例中有且仅有一台;对整个树进行管理和部署,通
过发送BPDU来进行指挥和维护;
选举参数:BPDU中存在 BID—桥ID;
桥ID的构成===网桥优先级+MAC地址
网桥优先级默认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相同,再比较本地的PID,小优
4、若本地PID相同,该接口直接阻塞
非指定端口—阻塞端口(一个接口):逻辑阻塞,可以接收到流量,但是不向任何接口进行
转发;
选举规则:当一个网络中将以上三种角色均选举完成后,剩余所有未分
配任何角色的接口成为非指定端口;
Cost值:
10M =100
100M=19
1000M=4
10000M=2
大于10000M为1;
关于对生成树协议的干涉,至少必须关注根网桥的位置,最合适的地点为汇聚层设备;
在802.1D中,端口除了角色外,还存在状态:
Down:默认所有交换机接口初始状态,指示灯不显示;一旦双up,向外发出BPDU进入下
一状态;
Listening:侦听(15s)----指示灯为橙色;进行生成树的选举,各个接口角色的生成;
若接口角色为根端口或指定端口那么进入下一状态;
若接口角色定义为非指定端口,状态直接切换为阻塞,指示灯保
持为橙色;
Learning:学习(15s)-----指示灯为橙色;学习PC发出的数据包中的源MAC地址,生成MAC
地址表;学习完成后,进入下一状态;
Forward:转发---------------指示灯为绿色
阻塞状态-------非指定端口的状态
802.1d算法的收敛时间:
1、初始收敛---30s
2、结构突变--------1)30s 直连检测前提下,本地的阻塞端口启用需要15s侦听+15s学习
2)50s 非直连检测的前提下,阻塞端口需要20s hold time+30s选举
注:任何接口在选举未完成前,均不能转发用户的流量;
802.1d算法的缺点:
1、收敛速度慢
2、链路利用率低
二、PVST:cisco私有;基于vlan的生成树协议;特点为使用了同802.1d完全一致的算
法,但每个vlan独立使用一颗生成树;仅能基于ISL的trunk干道封装技术进
行工作;基于每个vlan发出不同的BPDU,各自进行各自的选举;选举规则
为802.1d规则;默认所有vlan发出的BPDU中网桥优先级为32768+vlan的ID;
管理员手工修改网桥优先级,只能修改32768的部分,且该部分的修改必须
以4096的倍数来进行;
优点:可以将不同vlan的根网桥放置于不同的汇聚层设备上,然后实现流量的分担,提高
了链路的利用率;
缺点:1、收敛速度慢 2、树形结构多 3、仅能基于ISL的封装进行工作;
注:一台设备若希望存在某个vlan的生成树,必须存在该vlan,
同时存在该vlan的用户或者存在trunk干道;
三、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: