本文总结了思科CCNP认证交换知识点。分享给大家供大家参考,具体如下:
2.2.4 配置VLAN间路由选择(子接口(单臂路由)、SVI、物理接口)
6.2.2 Rspan配置(从SW1的f0/1口映射到SW3的f0/1口)
一、BCMSN、组建cisco多层交换网络
1.1 交换机的存储硬件
组件 |
描述 |
RAM(随机存取存储器) |
读写速度快,断电后数据易失 |
ROM(只读存储器) |
用于启动和维护思科IOS,其中存储了POST、引导程序和微型IOS |
Flash闪存 |
基于NVRAM(非易失RAM),重启时数据不会消失,用于取代硬盘 |
1.2 交换机的转发方式
1.2.1 分布式工作原理
接口仅负责收发电流信息
1.2.2 集中式工作原理
接口存在独立的缓存空间和运行芯片,将对流量进行查表和转发
1.3 交换机的基本功能
1.基于mac地址学习
2.基于目标mac地址转发
3.防止环路
4.基于目标mac地址过滤
ARP:正向、反向、逆向、无故、代理
交换机具有学习MAC地址的功能,一个接口可以学习多个MAC地址,一个MAC地址只能通过交换机的某一个接口学习
定义宏指令:
进入宏接口:
1.4 交换机的具体转发过程
数据正进入交换机后,先将该流量识别为二层流量;查看数据帧中的源MAC地址,将其记录到MAC地址表中;再查看目标MAC地址,基于目标MAC再本地查询MAC地址表,若表中存在该MAC的映射关系,将流量按该映射接口转发即可;若表中没有映射关系,将洪泛该流量
1.5 CAM表
MAC地址表是管理员看的,交换机真正识别的是CAM表;CAM表是将MAC地址表中的信息(MAC地址、接口编号、VLAN ID号)全部转化为哈希值(不等长的输入,等长的输出)
1.6 数据交换方式(如何路由,针对三层设备)
1.6.1 原始的交换方式
流量进入三层设备后,将在三层设备查询路由表和ARP表,若为三层交换机还需要再二层设备查询CAM表
1.6.2 传统的交换方式快速交换
一次路由,然后交换(或一次路由,多次交换或一次路由,多次转发)
当一个数据包来到三层设备上时,设备将为该数据包进行原始交换。过程结束后,设备假设该包为一段数据流的第一个包,为其生成cache;然后记录出接口,新的MAC封装;之后数据流的第二个包开始仅基于cache转发;当数据流转发完成后,cache表超市被刷新;在三层交换设备上二层依然需要基于CAM表
1.6.3 特快交换(cef)
无需路由,直接转发
路由表变为FIB(转发信息数据库),已经完成了递归;并且可以被芯片直接使用
ADJ表将FIB表中的出接口信息,与ARP表进行结合,生成转发列表
当流量进入三层设备后,设备将基于目标IP地址,直接在ADJ表中查找对应的记录;表内存在流量的出接口和新的二层封装参数;若为三层交换设备,在二层还需要查看CAM表
FIB表和CAM表的查看:
R2#show ip cef #查看FIB表
R2#show adjacency detail #查看ADJ表的详细信息
注:若设备支持CEF,默认开启
开启的命令
R2(config)#ip cef
1.7 交换机破解登录密码
按住mode键供电,进入最小IOS
Switch:flash_init #初始化flash
Switch:rename flash:config.text flash:xxx.text #修改配置文件名
Switch:reset #重启
Switch:rename flash:xxx.texxt flash:config.text #还原文件名
Switch:copy flash:config.text system:running-config #将配置加载到运行文档中
注:之后不能推出,通过删除或新增用户名密码来完成破解
路由器破解登录密码
路由器存在配置寄存器值,用于控制路由器的启动方式。在命令show version的输出中,最后一行为配置寄存器的值,默认为0x2102,让路由器从犯闪存加载IOS并从NVRAM中加载配置;若为0x2142,则不加载配置
加电时,按ctrl+C进入最小IOS
rommon 1 > confreg 0x2142 #修改寄存器值
rommon 2 > reboot 重启
对于26以下的系列:
> O/R 0x2142
> boot
Router#copy startup-config running-config 还原配置
删除用户名、密码;然后保存,在修改回寄存器值
R1(config)config-register 0x2102
二、VLAN以及VLAN间路由选择
2.1 作用
二层交换机和三层设备协同工作,将一个广播域逻辑的划分为多个
2.2 配置VLAN
2.2.1 交换机上创建VLAN
1.分类
1)基于编号分类0-4095,其中1-4094可用
分类(基于编号) |
范围 |
使用条件 |
标准的VLAN |
1-1005 |
任何条件下均可以 |
扩展的VLAN |
1006-4094 |
在VTP模式为透明时才能使用 |
默认交换机存在vlan1;且所有接口属于vlan1;vlan1同时作为默认的管理vlan和native vlan;默认交换机存在vlan1002-1005,预留该非以太网技术使用
2)基于工作特点分类
分类(基于工作特点) |
描述 |
静态vlan |
交换机上的某个接口固定划分到某个vlan中 |
动态vlan |
交换机+服务器,针对不同用户的流量转发到不同的vlan中 |
3)基于结构分类
分类(基于结构) |
描述 |
End to end vlan |
处于同一个交换网络内的相同vlanID,通讯时仅基于二层(同一个广播域) |
Local vlan |
处于不同交换网络内的相同vlanID,通讯时需要基于三层进行(不同广播域) |
2.创建vlan
1)在全局模式下创建vlan
Switch(config)#vlan 2 #创建
Switch(config-vlan)#name ccna #命名
Switch(config-vlan)#exit
Switch(config)#no vlan 2
#删除
Switch(config)#vlan 2-10,30-40 #批量创建或删除
2)进入vlan database创建vlan
Switch#vlan database
Switch(vlan)#vlan 3 name ccnp
注:若删除某个vlan,该vlan内的接口仍然处于该vlan,但不能工作了;必须转移接口到其他vlan,或者恢复创建该vlan
2.2.2 将交换机上的各个端口划分到相应的VLAN中
Switch(config)#int f0/1
Switch(config-if)#switchport mode access #先定义模式为接入
Switch(config-if)#switchport access vlan 2 #再划分到对应的vlan
Switch(config-if)#int range f0/1-2,f0/4-5 #批量划分
Switch(config-if-range)#switchport mode access
Switch(config-if-range)#switchport access vlan 2
2.2.3 配置中继接口(SW与SW间和SW与Router间)
1.trunk干道
不属于任何一个vlan,承载所有vlan的流量,可以标记和识别不同vlan的信息
2.封装规则
ISL |
IEEE802.1Q(dot1q) |
Cisco私有 |
公有 |
封装 |
标记 |
30bytes |
4bytes |
15bytes用于vlan ID,但 5bytes保留 |
12bytes标记vlan ID |
1024个vlan |
4096个vlan |
支持所有数据链路层协议 |
仅支持以太网 |
/ |
Native VLAN |
注:Cisco的二层交换机仅支持802.1Q的技术,只有cisco的三层以上交换机才支持ISL
3. trunk建立
1)手动建立
二层交换机仅支持802.1q,故可以直接配置trunk干道
Switch(config)#int f0/24
Switch(config-if)#switchport mode trunk
由于多层交换机支持多种封装方式,故在设置trunk干道前需要先修改封装类型
Switch(config)#int f0/7
Switch(config-if)#switchport trunk encapsulation dot1q
Switch(config-if)#switchport mode trunk
2)DTP(自动形成trunk)
DTP(Cisco私有)动态trunk协议,交换机之间自动协商成为trunk干道,该协议在cisco产品中默认开启
SW1(config)#int e0/1
SW1(config-if)#switchport mode dynamic desirable
是否形成trunk |
auto |
desirable |
access |
auto |
不能形成trunk干道 |
形成 |
不能形成trunk干道 |
desirable |
形成 |
形成 |
不能形成trunk干道 |
access |
不能形成trunk干道 |
不能形成trunk干道 |
不能形成trunk干道 |
注:手动=主动
查看trunk是否建立:
SW1#show interfaces trunk
4. Native VLAN
在802.1q中存在native vlan,默认为vlan1,独一无二,在trunk干道上默认对native vlan的流量不标记
配置:
SW1(config)#int e0/3
SW1(config-if)#switchport trunk native vlan 2
默认native vlan对流量不进行标记,但也可以对其进行标记
SW1#show vlan dot1q tag native
dot1q native vlan tagging is disabled
SW1(config)#vlan dot1q tag native #修改为标记
5. 附属vlan
配置:
Switch(config)#vlan 2
Switch(config-vlan)#vlan 3
Switch(config-vlan)#ex
Switch(config)#int f0/7
Switch(config-if)#switchport mode access
Switch(config-if)#switchport access vlan 3
Switch(config-if)#switchport voice vlan 2
6. 配置trunk干道允许列表
默认trunk干道允许所有vlan通过
Switch(config)#int f0/3
Switch(config-if)#switchport trunk allowed vlan 1-10,20-30 #仅允许这些vlan通过
Switch(config-if)#switchport trunk allowed vlan remove 2 #从允许列表中排除某个vlan
2.2.4 配置VLAN间路由选择(子接口(单臂路由)、SVI、物理接口)
1.单臂路由(子接口)
单臂路由是为实现 VLAN 间通信的三层网络设备路由器,作用是允许一台路由器允许多个vlan互相通信。
优点:实现不同vlan之间的通信,有助理解、学习VLAN原理和子接口概念。
缺点:容易成为网络单点故障,转发受中继链路带宽配置稍有复杂,现实意义不大。
配置:
IOU1(config)#vlan 2-3 #先创建vlan
IOU1(config-vlan)#int e0/1 #接口划入相应vlan
IOU1(config-if)#sw mo a
IOU1(config-if)#sw a v 2
IOU1(config-if)#int e0/2
IOU1(config-if)#sw mo a
IOU1(config-if)#sw a v 3
IOU1(config-if)#int e0/0
IOU1(config-if)#sw tr en do
IOU1(config-if)#sw mo tr #注意,与路由器相连的接口须手动改为trunk
R1的接口F0/0上创建两个子接口,分别是F0/0.2对应的vlan2、F0/0.3对应的vlan 3
每个子接口必须封装dot1Q协议,并且标记相应的vlan id号,dot1Q协议主要是标记vlan的id号.每个子接口必须配置ip地址,而且该接口的ip地址必须和相应的vlan的在同一个网段
R1(config)#int f0/0
R1(config-if)#no sh #激活该物理接口
R1(config-if)#int f0/0.2
R1(config-subif)#encapsulation dot1Q 2 # 将vlan2封装在F0/0.1接口
R1(config-subif)#ip add 192.168.1.254 255.255.255.0
R1(config-subif)#no sh
R1(config-subif)#int f0/0.3
R1(config-subif)#encapsulation dot1Q 3 ## 将vlan3封装在F0/0.2接口
R1(config-subif)#ip add 192.168.2.254 255.255.255.0
2.SVI
交换机虚拟接口是一种三层接口,它是为在多层交换机上实现vlan间路由而配置的接口。SVI是一种与vlan ID相关联的虚拟VLAN接口,其目的在于启用该vlan的路由选择能力
通过三层交换机实现vlan间的通信:为三层交换机创建vlan,设置交换机的两个SVI,并配置IP地址。(在二层交换机上只能配置一个SVI端口,用来实现交换机交换机远程管理,在三层交换机上可以配置多个SVI端口)
IOU1(config)#vlan 2-3 #创建vlan
IOU1(config-vlan)#int e0/1
IOU1(config-if)#sw mo a
IOU1(config-if)#sw a v 2 #接口划入相应的vlan
IOU1(config-if)#int e0/2
IOU1(config-if)#sw mo a
IOU1(config-if)#sw a v 3
IOU1(config-if)#int vlan 2 #创建虚拟接口vlan2
IOU1(config-if)#ip add 192.168.1.254 255.255.255.0#配置虚拟接口vlan2的IP地址
IOU1(config-if)#no sh #激活该端口
IOU1(config-if)#int vlan 3
IOU1(config-if)#ip add 192.168.2.254 255.255.255.0
IOU1(config-if)#no sh
3.物理接口(三层交换机)
采用集成了路由功能的交换机(三层交换机)完成vlan间路由,既有速度高、无冲突影响等优点
配置:
IOU1(config)#int e0/1
IOU1(config-if)#no switchport #转变为三层接口
IOU1(config-if)#ip add 192.168.1.254 255.255.255.0
IOU1(config-if)#no sh
IOU1(config-if)#int e0/2
IOU1(config-if)#no switchport #转变为三层接口
IOU1(config-if)#ip add 192.168.2.254 255.255.255.0
IOU1(config-if)#no sh
IOU1(config-if)#ex
IOU1(config)#ip routing #开启路由功能
2.2.5 配置vlan时的注意点
1.子网划分,是用于标记管理员用设备切分好的广播域;若能收到对方设备的广播包,那么即使两台设备在不同IP网段,实际也为一个广播域
2.access接口默认不会对数据包进行标记
3.若交换机的access接口,接收到一个数据包存在标签;若该标签号与本接口vlan编号一致,将取消该标签但转发该数据;若标签号不一致,将直接丢弃该流量
4.若一条trunk干道的两端若native vlan不同,那么会导致流量进入到错误的vlan中
2.3 三层交换机
三层交换机也就是路由器+交换机功能的集合,标准的三层交换机不支持NAT功能,NAT由核心层来完成。三层交换机集合了两种设备的功能后,将出现新的功能,该功能最适合汇聚流量
1.管理vlan
默认vlan1为管理vlan和native vlan;
二层交换机作为接入层,处于不同的地理位置,为了便于管理,建议可远程登录配置;
但正常的二层设备不能配置IP地址,故二层交换机上默认存在一个SVI(交换虚拟接口),该接口可以配置IP地址,出场就存在MAC地址,该MAC地址还用于STP的选举
又因为交换机上存在vlan技术,该SVI接口处于那个vlan,该vlan就被称为管理vlan;
将SVI转移到其它的vlan中
注:二层交换机仅存在一个SVI口,故在开启新的SVI接口时,原来的SVI口被自动关闭
所希望其他网段的设备可以访问给二层交换机的SVI口,那么该交换机上需要定义本广播域的网关地址。
SVI接口双UP的条件
1.该交换机存在该vlan
2.该交换机连接该vlan的用户,或存在活动的trunk干道
2.如何让三层交换机成为网关设备
1.物理接口
默认三层交换机工作在二层,所有接口为二层接口且属于vlan1,可以将二层接口转换为三层接口
交换机默认并没有开启路由功能,需要手动开启
2.三层交换机可以使用SVI接口开作为网关接口;三层交换机存在多个SVI,多个MAC地址
三、VTP(VLAN Trunk协议)
3.1 作用
统一分发管理vlan信息。在同一个交换网络内(不一定直连),在一台交换机上修改、创建、删除vlan信息后,其他交换机可以自动同步、学习;前提是交换机间必须为trunk干道,因为同步信息为交换机上的vlan.dat文档(周期(5min一次)+触发(修改就会触发));该信息只能基于trunk干道的native vlan传输
3.2 配置
3.2.1domain(域)
所有交换机必须在同一个域内
SW1(config)#vtp domain ccna
当一台交换机没有加入域时,那么会自动加入广播过来的第一域名
3.2.2 mode(模式)
SW1(config)#vtp mode ?
client Set the device to client mode. #客户端
off Set the device to off mode. #
server Set the device to server mode. #服务端
transparent Set the device to transparent mode. #透明
注:
模式 |
是否可以被同步 |
是否同步别人 |
是否能创建、修改、删除vlan信息 |
Client |
可以被同步 |
可以同步别人 |
不能 |
Server |
可以被同步 |
可以同步别人 |
能 |
Transparent |
不能 |
不能 |
能 |
3.2.3 password(加密)
SW1(config)#vtp password 12345 #同一域内所有设别密码必须一致
3.2.4 版本(版本必须一致)
3.3 同步规则
Client和server模式才会同步域被同步;谁同步谁由配置版本号决定
1.每修改、删除、创建一次vlan,配置版本号加1
2.谁的配置版本号高,就可以同步其他人
3.修改域名或将该模式改为透明导致配置版本号归0
Switch#show vtp status
VTP Version : 2
Configuration Revision : 2
Maximum VLANs supported locally : 255
3.4 VTP的同步条件
1.版本相同
2.domain相同
3.password相同
4.配置版本号高的同步低的
5.非透明模式
6.必须为trunk干道
3.5 VTP修剪
修剪不必要的扩散流量,减少资源的占用;仅仅在server模式下可以生效
SW1(config)#vtp pruning #全局开启,宏观修剪
SW1(config)#int e0/2
SW1(config-if)#switchport trunk pruning vlan 2 #在该trunk干道上,专门针对某个vlan的流量进行修剪
四、STP(生成树协议)
4.1 线路冗余
一旦在交换机上使用链路冗余,那么将出现二层的桥接环路;因为CAM是流量触发交换机生成的, 该表默认并没有被管理
4.1.1造成的影响
- 广播风暴
- CAM表记录翻滚(MAC地址表不稳定)
- 数据帧的重复拷贝
4.1.2 解决方案
逻辑性阻塞某个接口
4.2 STP(Spanning Tree生成树)
树根设备到每台交换机仅存在一条链路(默认选择最佳);逻辑的阻塞部分链路;当最佳路径故障时,阻塞端口被打开,来恢复通讯
4.2.1 生成树类型
公有生成树:STP(802.1D生成树)、RSTP(802.1W生成树)、MST(802.1S多生成树)
私有生成树:PVST(基于VLAN的标准生成树)、PVRST+(基于VLAN的快速生成树)
4.2.2 802.1D
1.BDPU
交换机间沟通时使用的数据帧:BPDU(桥协议数据单元)
跨层封装到二层--BPDU数据帧默认不属于任何一个vlan,故在存在与vlan的设备上,该数据帧基于native vlan发送
2.BPDU分类
1)配置BPDU
拓扑收敛完成后,仅根网桥周期(2s)发送(目的保活);在没有根网桥的时候,所有设备仅发送BPDU;
2)拓扑变更BPDU(TCN-BPDU)
拓扑变更消息,包中不包含任何具体信息,也不会导致网络重新收敛
当一台交换机的阻塞端口链路被断开,那么将标记位中第7位置1,标记拓扑已经改变,该BPDU将发送到根网桥处,根网桥使用标记位为第6位,来表示确认;若没有收到ACK,那么2s周期发送TCN;根网桥在确认后,将使用BDPU告诉所有的非根网桥,刷新CAM表,默认CAM的保存周期为300s
3)次优BPDU
非根网桥上的根端口断开--或接受不到根网桥的BPDU了,同时本地断开的已不是阻塞端口;那么本地将自己定义为根网桥,发出BPDU,由于该BPDU次于根网桥的,故称为次优BPDU
总结:根网桥发送配置BPDU,包含拓扑信息
非根网桥的阻塞端口被断开,当依然可以与根网桥沟通,那么发送TCN,不包含拓扑信息,不会使网络重新收敛
非根网桥上断开了根端口后,若不能在与根网桥沟通,将本地定义为根网桥发送次优BPDU,包含本地的拓扑信息;也是配置BDPU,但不是根网桥的
3.BDPU主要字段
Bytes |
Filed |
2 |
Protocol ID |
1 |
Version |
1 |
Message Type |
1 |
Flags |
8 |
Root ID |
4 |
Cost of path |
8 |
Bridge ID |
2 |
Port ID |
2 |
Message age |
2 |
Max age |
2 |
Hellotime |
2 |
Forward delay |
4.生成树选举
选举过程:根网桥---根端口(RP)---指定端口(DP)---非指定端口(NDP)
开始整个交换网络没有根网桥,所有设备均认为本地为根网桥,发送本地BPDU;
当收集到整个交换网络的BPDU后,根网桥被选出;之后由根网桥基于所有的BPDU,生成拓扑,使用配置BPDU来告知其他的交换机;
1).根网桥
整个交换网路的中心;通过BPDU来控制整个网络收敛
选举条件:协议ID(PID)=网桥优先级(BID)+MAC地址
网桥优先级:0-65535(默认32768)
正常的透明交换机不拥有mac地址,不能实现stp技术;非透明交换存在--SVI接口,出厂将被烧录mac地址;若有多个,将选择数字最小的来参选
选举规则:先比较优先级,数值越小越优先;若优先级一致,比较MAC地址,数值越小越优先
2).根端口
只能存在于非根网桥上,并且一个交换机只有一个;离根网桥最近的接口;作用是接收来自根网桥的BPDU,正常转发用户的数据流--非阻塞
不同带宽时的cost值:
Bandwidth |
Cost |
10M |
100 |
100M |
19 |
1000M |
1 |
10000M |
2 |
>10000M |
1 |
选举规则:
(1)比较从该接口进入时的cost值,越小越优先(Cost值实在进入交换机时,才叠加该段链路的开销)
(2)若接口cost值相同,比较接口上级设备的BID,BID最小设备对应的接口为根端口,因为给设备为备份根网桥
(3)若接口cost值相同,上级设备的BID也相同,再比较上级设备的PID(端口ID)=优先级+接口编号
优先级:0-255(默认为128); 先比较优先级,越小越优先;再比较接口编号,越小越优先
(4)若以上参数全部一致,比较本地的PID,越小越优先
3)指定端口(DP)
每条链路上有且仅有一个;转发来自根网桥的BPDU;根网桥上全部为指定端口,根端口的对端一定是指定端口
选举规则:
- 必须从根网桥发出的BPDU,通过该端口向外(出项)转发时消耗的cost值,越小越优先
- 若出向cost值相同,比较本地的BID,越小越优先
- 本地BID相同,比较本地的PID,越小越优先
(4)本地PID相同,直接阻塞该端口
4).非指定端口(NDP)
又称为阻塞端口,以上所有角色选举完成后,剩余的全部接口为非指定;其状态为阻塞
注:阻塞端口并不是关闭接口,依然可以接收到数据帧,但不转发数据帧;可以正常识别BPDU
注:生成树协议,cisco产品默认运行,个别厂商需要手工开启-例:H3C
5.802.1D的端口状态
端口状态 |
端口能力 |
Disabled |
不收发任何报文 |
Blocking |
不接收或者转发数据,接收但不发送BPDU,不进行地址学习 |
Listening(15s) |
不接收或者转发数据,接收并发送BPDU,不进行地址学习 |
Learning(15s) |
不接收或者转发数据,接收并发送BPDU,开始进行地址学习 |
Forwarding |
接收或者转发数据,接收并发送BPDU,进行地址学习 |
结论:802.1D必须在指示灯为绿色时,才开始转发用户流量
6.802.1D算法的收敛时间
1.初次收敛为30s
2.结构变化
(1)存在直连检测,本地的根端口断开后,之后仅一条阻塞端口连接于其他交换机;本地不能发出TCN或也发不出次优BPDU;那么只能本地的阻塞端口,总的收敛时间30s
(2)没有直连检测,本地根端口断开后,可以向其他交换机的阻塞端口发送次优BPDU;对端交换机在收到次优BPDU后,将忽略该数据帧,而是进行20shold time;之后再收敛该接,总的收敛时间:20s hold time+30s收敛=50s
7.STP控制
一旦运行将自动选择出所有的角色,当默认可能不是最佳结构,需要管理员手工干预,尤其根网桥一定放置在汇聚层或核心层的交换机上,产生上层blocking端口的数量
方法一:修改设备的网桥优先级(4096的倍数)
方法二:设置主根和备份根
方法三:控制根端口位置,修改链路Cost值
方法四:修改发送方的PID优先级
9.802.1D生成树的优缺点
优点:树少、简单
缺点:1.收敛速度慢
2.链路利用率低---备份链路正常始终不工作
4.2.3 PVST(基于VLAN的生成树)
每个vlan一棵树;因为cisco存在独立的vlan运行芯片,故可以支持很多的树;
每棵独立的树,依然使用802.1d算法收敛
不同vlan的网桥优先级不同,优先级=32768+vlan id;人为可修改32768的部分,且只能以4096的倍数来进行修改;
切记:一台设备若希望加入某棵vlan的树,条件是该交换机存在该vlan;该交换机存在该vlan的活动接口或者存在trunk干道;
1.PVST优缺点
优点:简单、支持负载分担
缺点:私有、树多较难管理、收敛慢、trunk干道仅支持ISL封装
4.2.4 PVST+
在PVST的基础上进行了部分的升级优化;兼容802.1q trunk干道封装,可以做部分的加速优化
1.PVST+优缺点
优点:1.一个VLAN一棵树,提高连理的利用率
2.部分加速
3.兼容802.1Q
缺点:1.树多,不好管理
2.加速不够彻底
4.2.5 RSTP
RSTP:也叫RPVST(快速的PVST协议),思科私有
802.1w(802.1D的快速版),公有
1.RSTP和802.1w的异同
相同点:两种协议均为快速收敛1-2s完成收敛,提速的原理一致
区别:RSTP有基于vlan的运算芯片,故RSTP依然一个vlan一棵树;802.1w整个交换网络一棵树
2.RSTP的端口状态
- Discarding:丢弃状态
- Learining:学习状态
3)Forwarding:转发状态
3.RSTP的端口角色
1、根端口(RP):同802.1D
2、指定端口(DP):同802.1D
3、替代端口(AP):如果一个端口收到另外一个网桥的 BPDU,但不是最好的,那么这个端口成为替换端口
4、备份端口(BP):在如果一个端口收到同一个网桥的更好 BPDU,那么这个端口成为备份端。当两个端口被一个点到点链路的一个环路连在一起时,或者当一个交换机有两个或多个到共享局域网段的连接时,一个备份端口才能存在
注:无论AP还是BP其实就是802.1D中的阻塞端口,AP为对端设备,BP为本端设备
4.802.1w中端口角色
1、边缘端口:edge Port,非trunking,access接口
2、非边缘端口:非edge Port,trunking接口
5.RSTP快速的原理
1、取消了计时器,而是在一个状态工作完成后,直接进入下一状态
2、分段式同步,两台设备间逐级收敛;使用请求和同一标记;依赖标记位的第1和第6位
3、BPDU的保活为6s;hello time 2s
4、将端口加速(边缘接口)、上行链路加速、骨干加速集成了
5、兼容802.1d和PVST,但802.1d和PVST没有使用标记位中的第1-6位,故不能快速收敛;因此如果网络中有一台设备不支持快速收敛,那么其他开启快速收敛的设备也不能快速
6、当TCN消息出现时,不需要等待根网桥的BPDU,就可以刷新本地的cam表
启动快速生成树,所有交换机全部需启动
注:所有干涉选举的命令和上面一致
切记:
默认接口为半双工(10M)时,接口类型为共享;全双工时为点到点;
共享型接口依然运行慢速生成;只有点到点接口可以快速;
故建议将共享型接口修改为点到点型
4.2.6 MST
MST,思科私有
802.1S多生成树,公有
1.MST的原理
将多个vlan放置在一个组内,为每个组生成一个树,树型算法为802.1w;将不同组的根网桥放置到不同的汇聚层设备处,可以进行流量的分栽,提供链路利用率;不同组发出的BPDU,使用网桥优先级(=优先级+组ID)区分
优先级默认为32768,只能以4096的倍数来进行修改
切记:整个交换机需要所有的设备均正常MST协议,才进行部署
2.MST的配置
修改封装为802.1q(SW1-SW3同配置):
创建vlan(SW1-SW3同配置):
#修改生成树协议
默认存在组0,且默认所有vlan处于组0
修改连接类型为点到点(SW1-SW3同配置):
SW1#show spanning-tree mst 0
SW1-SW3同配置:
切记:所有运行MST协议的设备,分组内容必须完全一致,否则可能出现问题
定义根网桥,备份根网桥
SW1(config)#spanning-tree mst 1 root primary #降2个4096
SW1(config)#spanning-tree mst 2 root secondary #降1个4096
SW2(config)#spanning-tree mst 1 root secondary
SW2(config)#spanning-tree mst 2 root primary
#修改参选接口的参数
4.2.7 STP增强
1.端口加速(portfast)
针对交换机的access接口,连接的是终端用户这些不需要运行生成树的端口,切记不得配置于连接trunk干道的接口。默认进入listening状态,等待30s进入转发状态
节约时间:30s
位置:接入层交换机的access接口
2.上行链路加速(uplinkfast)
在设备上运行上行链路加速后,若该设备满足直连检测条件;那么将阻塞端口直接变为根端口,进入forwarding状态
节约时间:30s
位置:所有的接入层交换机上
注:开启后,该交换机的网桥优先级和cost值,将倍增;迫使该设备在默认情况下不会成为根网桥,且阻塞端口处于该设备;故该命令只敢在接入层设备配置
3.骨干加速(backbonefast)
若一个阻塞端口收到次优BPDU时,将20s hold time+30s收敛,开启骨干加速后;省略20s的hold time
节约时间:20s
位置:所有交换机
4.3 STP的安全
4.3.1 BPDU Guard(BPDU保护)
接入层接口默认为DP(指定端口),该端口连接的是PC。若该接口的PC被更换或者被用户模拟,成为一台交换机,那么可能导致网桥转移,最终迫使网络结构发生变化。因为根网桥最佳设置应该在汇聚层,而新的结构可能改变该特性,导致网络运行不佳,流量集中于接入层设备
1.errdisable
可以将这些接口开启BPDU保护功能;被保护接口若收到BPDU,那么将进行错误关闭状态;进入该状态的接口状态和协议均down。
(1)重新唤醒该接口的方法
- 手工重启:先关闭(shutdown)再开启(no shutdown)
- 自动启动:需要人配置,配置后若该接口再300s内没有收到BPDU了,那么将自动开启
(2)配置位置
在接入层连接用户的接口上,开启BPDU保护功能
若接口出现了错误关闭,可以查看导致原因
(3)查看各种错误关闭的原因
针对BPDU保护出现的错误关闭,可以通过手工重启,或设置自动重启
SW1(config)#errdisable recovery cause bpduguard #当BPDU保护出现后的自动重启
SW1(config)#errdisable recovery interval ? #默认300s收不到BPDU将自动重启
<30-86400> timer-interval(sec) #修改计时器,最小30s
SW1(config)#spanning-tree portfast bpduguard #在接入层接口的接口上,开启所有接口的端口加速和所有接口的BPDU保护,全局开启后,还需要到上行链路上进行BPDU保护的关闭
SW1(config)#int e0/0
SW1(config-if)#spanning-tree bpduguard disable #关闭单个接口的BPDU保护
SW1#show spanning-tree summary totals #查看各种全局协议的配置
2.BPDU过滤
开启BPDU过滤后,若接入层接口收到BPDU信息,将仅丢弃BPDU数据帧,正常转发用户流量
注:全局开启后,需要在上行链路手动关闭
3.保护和过滤的区别
保护和过滤除了对接口的处理方式不同,还存在一个区别:保护是拒绝接收BPDU,但可以发送;过滤是收发均拒绝
4.3.2 根网桥保护
若网络中增添了新的交换机,其BID最优;那么将可能抢占网络的根网桥,导致拓扑结构发生变化。在接口开启根桥保护后,若交换机的接口接收到了更优BPDU时,将该接口阻塞,直到该接口不再收到更优BPDU才恢复
SW2(config-if)#int e0/0
SW2(config-if)#spanning-tree guard root #接口开启根桥保护
开启根桥保护的接口,在接收到更优BPDU时,将阻塞,进入broken状态,显示与根不一致
SW2#show spanning-tree interface e0/0 detail
Port 1 (Ethernet0/0) of MST0 is broken (Root Inconsistent)
不一致接口在生成树中的显示:
SW2#show spanning-tree
Et0/0 Desg BKN*2000000 128.1 P2p *ROOT_Inc
查看出现不一致的接口
接入层接口---保护、过滤·、收到BPDU
根网桥保护---新连接的交换机的接口
总结:BPDU保护和过滤配置在所有的接入层连接PC的接口;
根网桥保护建议配置在新连接交换机的接口,来避免网络的重新收敛
4.4 STP的环路保护
单向链路故障,尤其在光纤网络,很有可能出现可以接收但不能发送;一旦出现单向链路故障,网络及时存在STP,也依然可能出现环路
1.UDLD
当一根网线出现单向链路故障时,直接关闭该接口
IOU1(config)#udld enable #全局开启所有接口的UDLD
IOU1(config)#int e0/0 #在接口上开启UDLD
IOU1(config-if)#udld enable
IOU1(config-if)#no udld enable #关闭
IOU1(config-if)#udld disable #关闭
2.LOOP GUARD
开启后,仅针对BPDU包,识别为单向链路故障,先对该接口进行阻塞,然后自动恢复
3.UDLD与LOOP GUARD的区别
1)UDLD被触发后,接口被err-disable;然后需要手工重启或自动重启
Loop Guard被触发后,自动阻塞然后恢复接口
2)UDLD用于处理硬件的单向问题,Loop Guard被用户处理软件问题(接口拥塞,CPU过载),建议两种技术均配置
注:在一个网络中,根网桥和网关最好放置在汇聚层设备上,且两种角色最好在一处;因为两种角色都算一个广播域的中心点
将多个(2-8,2-16)接口,逻辑的整合为一个接口,来转发流量,减少了阻塞端口的数量,提高了链路带宽,增加了网络的稳定性
5.1 封装模式
5.1.1 PAGP
端口聚合协议,cisco私有,通过发送慢速hello(30s),协商成为echerchannel,最大支持在8条链路的协商,链路数量必须为2^x,2 4 8
desirable:主动模式
auto:auto模式包含了silent模式(安静模式),可以进行etherchannel协商
链路聚合控制协议(仅支持全双工接口),公有协议。发送LACPDU进行以太信道的协商,最大支持在16条链路上进行以太信道协商,2 4 8 16,默认仅仅使用8条。当使用16条链路进行协商,选择8条为主链路,其余8条为备份链路。选择方法:1.较小优先级(优先级默认32768),2.最小的PID
模式:
active(主动)passive(被动)
5.1.3 on模式
手工模式,on模式不能与任何动态PAgP或LAGP建立ethechannel。被动与被动不能形成
5.2 Ethechannel配置
5.2.1 二层ethechannel配置
SW1(config)#int range e0/1-2
SW1(config-if-range)#channel-group 1 mode on
SW1(config-if-range)#interface port-channel 1 #对逻辑接口进行管理
SW1(config-if)#switchport trunk encapsulation dot1q #修改trunk封装模式
SW1(config-if)#switchport mode trunk
5.2.2 配置指南
1.通道内所有端口必须支持ethechannel;同时注意必须连接相同设备(同一设备,同本地类型相同)
2.这些物理接口必须具有相同的速率和双工模式(LACP必须为全双工)
3.通道内不得使用span;若为三层通道,IP地址必须配置到逻辑接口上(channel-group)
4.三层通道内的所有物理接口必须为三层接口,然后再channel口上配置IP地址
5.若为二层通道,这些物理接口应该属于同一vlan或者均为trunk干道,且封装的类型一致,vlan的允许列表必须一致
6.通道的属性改变将同步到物理接口,反之也可;若物理没有全部down,通道依然正常同时配置所有物理接口,或者之恶配置channel口,均可修改接口的属性
5.2.3三层ethechannel配置
在没有三层ethechannel时,三层链路依然可以使用负载均衡来进行通信;建立三层ethechannel后,可以节省IP地址网段,间路路由条目的编辑(一般配置在核心层)
SW1(config)#int range e0/1-2
SW1(config-if-range)#no switchport
SW1(config-if-range)#channel-group 1 mode on
SW1(config-if-range)#exit
SW1(config)#int port-channel 1 #在通道接口上配置IP地址
SW1(config-if)#ip add 192.168.1.1 255.255.255.0
5.3 配置channel时的注意点
二层通道基于负载分担转发流量,三层通道基于负载均衡转发流量
负载均衡:访问同一目标时,将流量按为单位分割后,沿多条路径同时传输
负载分担:访问不同目标时基于不同链路,或者不同元在访问目标时基于不同链路
基于不同源MAC(src-mac)为默认规则
六、SPAN(便于抓包的技术)
在一台交换机上将一个接口的流量(源端口)映射到另一个接口(目的端口),在另一个接口开启抓包工具
6.1 Span配置
在同一台交换机的同一个会话号内定义源、目端口
SW1(config)#monitor session 1 source interface fastEthernet 0/1
SW1(config)#monitor session 1 destination interface fastEthernet 0/2
6.2 Rspan
在同一个交换网络内进行抓包
6.2.1 Rspan的条件
1.同一交换网络内
2.存在trunk干道
3.所有交换机创建一个rspan专用vlan
6.2.2 Rspan配置(从SW1的f0/1口映射到SW3的f0/1口)
SW1(config)#monitor session 1 source interface fastEthernet 0/1
SW1(config)#monitor session 1 destination remote vlan 113
SW1(config)#vlan 113
SW1(config-vlan)#remote-span
SW(2config)#vlan 113
SW2(config-vlan)#remote-span
SW(2config)#vlan 113
SW2(config-vlan)#remote-span
SW1(config)#monitor session 1 souorceremote vlan 113
SW1(config)#monitor session 1 destination interface fastEthernet 0/1
七、交换安全
7.1 MAC地址攻击
攻击者不断修改择机的MAC地址,交换机进行大量学习,导致交换机mac地址表缓存溢出,不能再学习其他的MAC地址信息,此时交换机将工作再HUB状态
解决方案
7.1.1 静态MAC地址写入
7.1.2 端口安全
1.必须先定义为接入层接口,然后开启端口安全服务,设置MAC地址的获取方式(手写或粘连)
注:此时最大地址数量为1,处理方案为逻辑关闭;逻辑关闭的接口必须先关闭再开启
设置支持的MAC地址数量
2.设置违约的处理方案
保护:接口出现非法MAC时,仅丢弃流量不关闭接口,合法MAC流量可以通过
限制:处理同保护基本一致:区别在于,非法MAC出现后,会向网路中的SNMP服务器发送警告信息
关闭:逻辑关闭,默认的机制
7.1.3 基于MAC地址过滤
7.2 VLAN间攻击
默认交换机接口模式为auto或desirable,主机模拟交换机发送DTP协商帧,建立trun干道。学习交换网络中的某些重要信息,发送VTP/BPDU等信息干涉交换网络工作
解决方案
将连接用户的接口设置为access接口;在trunk链路中针对Nativeda标记
Private vlan |
私有 |
混杂接口 |
|
Primary vlan |
主vlan |
|
|
Secondary vlan |
辅助vlan |
团体vlan |
团体主机接口 |
孤立vlan |
鼓励主机接口 |
配置:
创建主、辅助vlan,并在主vlan中映射包含辅助vlan
SW1(config)#vlan 100
SW1(config-vlan)#private-vlan primary
SW1(config-vlan)#private-vlan association 501-502
SW1(config)#vlan 501
SW1(config-vlan)#private-vlan isolated
SW1(config)#vlan 502
SW1(config-vlan)#private-vlan community
将接口划入主VLAN:
将接口划入辅助VLAN:
7.3 DHCP欺骗攻击(spoofing)
解决方案:DHCP spoofing
信任接口:接收offer ack;发送discover request
非信任接口:接收discover request;发送offer ack
将连接DHCP server接口设置为信任端口
配置:
开启DHCP spoofing
针对某些vlan开启spooling
设置接口为信任接口
在DHCPserver上针对某些DHCP中继信息信任
查看:
7.4 ARP欺骗攻击
主机发送大量IP地址变化的无故ARP,使网络中所有主机学习大量IP地址的ARP映射都为攻击者,导致网路瘫痪
解决方案:
1.静态ARP映射
2.DAI(Dynamic ARP Intercept)动态ARP截取
必须依赖DHCP snooping中所产生DHCP Snooping binding表
全局使用ARP截取
连接网关、server等设备设置为信任接口
查看:
SW1#show ip dhcp snooping binding
查看
定义NTP服务器
再定义要同步的NTPserverIP
九、基于时间的ACL
先创建时间范围列表,在定义整个列表总的工作时间
十、CDP(Cisco设备发现协议)
默认开启,但很危险
CDP存在敏感信息(VTP域名、管理VLAN地址、native编号),建议所有的接入层连接用户的接口关闭CDP
IOU1#show cdp neighbors #可以查看到本地所有接口连接的设备型号
IOU1#show cdp neighbors detail
CDP存在敏感信息(VTP域名、管理VLAN地址、native编号),建议所有的接入层连接用户的接口关闭CDP
IOU1(config)#no cdp run #全局关闭
IOU1(config)#int e0/0
IOU1(config-if)#no cdp enable #关闭单个接口
十一、网关冗余
冗余的类型
1、链路冗余
2、线路冗余
3、设备冗余
4、网关冗余
5、电源冗余(USP)
6、引擎冗余
11.1. 最原始的网关冗余
PC的操作系统在WIN95系列以下,没有配置网关地址时,若需要PC访问非本地直连网段的目标IP,那么将对该IP地址进行ARP请求,默认路由器存在代理ARP机制,将返回MAC地址(选择最新记录);之后即可访问目标。当默认选择的网关设备上行链路Down掉时,ICMP重定向会帮助PC寻找到最佳路径的网关设备来实现网关冗余;当默认选择的网关设备下行链路Down掉或者网关设备瘫痪,那么将等待2h,PC的ARP表刷新后重新ARP请求
若操作系统版本高于95,可以将网关地址配置为直接广播地址(该网段的IP,主机位全为1),来事项以上规则
11.2HSRP(热备份网关协议,Cisco私有)
11.2.1 原理
在两台路由器或三层交换机上虚拟一个网关IP地址,再虚拟一个网关MAC地址。虚拟网关IP地址由管理员定义(在该网段内不得和主机IP冲突),MAC地址自动生成
路由器的hello time:3s;hold time:10s,组播地址:224.0.0.2
11.2.2 特点
1.使用hello包进行active standby选举,hello时间3s,hold time时间10s,更新地址224.0.0.2
2.抢占默认关闭
3.接口启用了HSRP,接口ICMP重定向失效
4.切换速度快,可以使网关的IP网关和MAC地址不再变化;网关的切换对主机是透明的,可以实施上行链路追踪
11.2.3 HSRP生成MAC地址的规则
0000.0c 07.ac 01
Cisco专用 HSRP专用 组号
11.2.4 HSRP选举规则
1.先比较优先级,优先级越大越优先(默认100)
2.再比较接口物理IP地址,越大越优先
11.2.5 HSRP配置
R1(config)#int f0/0
R1(config-if)#ip add 13.1.1.1 255.255.255.0 #接口真实的IP地址
R1(config-if)#standby 1 ip 13.1.1.254 #邻居间组号和地址必须相同,地址为虚 拟网关
R1(config-if)#standby 1 priority 105 #修改优先级,默认100
R1(config-if)#standby 1 preempt #抢占默认关闭,利用修改优先级来定 义网关位置不可控,需开启抢占
R1(config-if)#standby 1 track s1/0 #当被追踪的接口down时,本地优先级 自动默认下调10(减10)
查看:
11.2.6 抢占时的注意点
在网关冗余技术中,ICMP重定向(针对真是IP和MAC)是失效的;故当上行链路Down时,网关将不会切换;可以定义上行链路追踪(该配置必须在抢占开启的情况下生效),且两台设备间的优先级差值小于下调值;若本地存在多条上行链路或下行链路,建议上行链路追踪配置时的总的下调值之和大于优先级差值(即所有上行链路全down时,才让standby抢占);若下行链路大部分down时,可以让standby抢占
11.2.7 HSRP总结
1.抢占默认被关闭,需手动开启
2.仅支持两台设备
3.Cisco私有
4.较慢
11.3 VRRP(虚拟路由冗余协议,公有)
原理同HRP一致
11.3.1 区别
1.VRRP支持多台设备
2.仅master发送hello
3.可以使用物理接口的IP地址来作为网关地址
4.抢占默认开启
5.hello time时间1s,hold time时间3s
11.3.2 VRRP选举规则
1.先优先级,默认100,越大越优先
2.再比较物理接口IP地址,越大越优先
11.3.3 特点
VRRP在一个组内可以存在多台3层设备,存在一个master和多个backup正常产生一个虚拟IP(可以为真实接口IP)和一个虚拟MAC,默认1s来检测一次master是否活动,hold time时间3s,组播地址224.0.0.18
11.3.4 VRRP生成MAC地址的规则
0000.5e00.01 01
VRRP专用 组号
11.3.5注意点
若使用某个接口的真实IP地址作为虚拟网关IP地址,那么依然使用虚拟的MAC地址;且当真实IP地址所在接口未down之前,其他设备不能作为master,否则将可能出现错误的ARP应答,导致选路不佳;故该地址所在的接口优先级为255(在设置了上行链路追踪的环境下,不建议使用真实的IP地址来作为网关地址,因为上行链路down后,被对端抢占主状态,导致PC对网关地址进行ARP时,收到两个应答,最终导致选路不佳
11.3.6 VRRP配置
VRRP配置与HSRP基本一致
查看:
上行链路追踪
1.先定义追踪列表
2.再在协议中调用
R1(config)#track 1 interface f0/1 line-protocol #定义追踪列表1,追踪接口为f0/1
R1(config-track)#int f0/1
R1(config-if)#vrrp 1 track 1 decrement 156
组号 表号 下调的优先级
11.4 GLBP(网关负载均衡协议,cisco私有)
11.4.1 特点
该协议在应用时,考虑到生成树在3层架构中的存在,需要相应的改变拓扑结构。AVG:优先级最大,再IP地址最大;响应所有对网关地址ARP请求后,根据网关设备的数量(最大4个)回应不同MAC给PC,同时将这些MAC分配给对应的AVF。AVF根据AVG分配的MAC地址来转发流量hello time 3s,组播地址224.0.0.102。
AVG:虚拟活动网关,抢占默认关闭
AVF:虚拟活动转发,抢占默认开启
11.4.2 GLBP生成MAC地址的规则
0007.b4 00.01 01
GLBP专用 组号 AVF编号
11.4.3 GLBP配置
R1(config)#int f0/0
R1(config-if)#glbp 1 ip 13.1.1.254
R1(config-if)#glbp 1 priority ?
<1-255> Priority value
上行链路追踪:
1.先定义追踪列表
2.再在协议中调用
R1(config)#track 1 interface f0/1 line-protocol #定义追踪列表1,追踪接口为f0/1
R1(config-track)#int f0/1
R1(config-if)#vrrp 1 track 1 decrement 156
组号 表号 下调的优先级
企业三层架构(内网结构)
1.接入层---常使用二层交换机,就近提供接口密度,用于用户的接入;
2.汇聚层(分布层)----集合所有接入层流量(星型),对流量实施管理和策略;
3.核心层---路由转发,高速转发,nat,QOS;
BCMSN--交换技术主要应用于汇聚和接入层(VLAN/TRUNK/VTP/DTP/STP/CHANNEL/HSRP../VPC等)
三层架构中最重要的思想为冗余(备份)--线路冗余---设备冗余---网关冗余---USP(电源冗余)