1.交换机
1.概念:
-
二层基于MAC地址转发设备,依靠MAC地址表进行数据的转发
-
启动过程:
-
RAM:随机存储(当前配置文件)
-
ROM:只读存储(自动程序)
-
NVRAM:非易失存储(保存配置)
-
Flash:闪存(操作系统)
-
-
MAC地址表:1,VLAN ID,2.MAC地址,3.端口编号
-
地址表:老化时间5min洪泛:指的是将数据包复制进行转发,且转发的是除接收端口以外的所有端口(广播帧,组播帧,未知单播帧)
-
广播域:一个数据包的洪泛范围
-
交换机的分类:
-
二层交换机:只能解封装到二层
-
多层交换机:只能解封装到某层,处理方式:1.进程转发,2.快速转发,3.FIB转发
-
-
二层交换机的工作方式:
-
存储转发:
-
贯穿转发:
-
无分片转发:
-
-
交换机的基本功能:
-
基于源MAC地址学习:针对源MAC地址与收到数据帧的接口和所属的VLAN加载到MAC地址表中
-
基于目的MAC地址转发:针对目的MAC地址将数据从对应的接口转发出去
-
数据过滤:收到数据出接口和入接口一致
-
防止环路:
-
-
洪泛:指的是将数据包复制进行转发,且转发的是除接收端口以外的所有端口(广播帧,组播帧,未知单播帧)
-
被洪泛的数据帧:
-
广播帧:IP地址255.255.255.255,MAC地址ff-ff-ff-ff-ff-ff
-
组播帧:IP地址224-239.0.0.X,MAC地址01-00-5E-
-
未知单播帧:MAC地址表中没有MAC地址的单播
-
-
交换机只为VLAN-ID相同的数据提供数据转发
-
查看MAC地址表:
display mac-table
2.VLAN虚拟局域网
-
VLAN 范围 :1-4094
-
802.1Q封装:也称为dot1Q, 对流量进行VLAN 标记的。
-
-
PVID : 端口VLAN 标识符 ,默认所有的接口PVID 为 VLAN 1 ;
-
接口类型: Access(连接终端),trunk(中继接口,传递标签),hybrid (混杂接口),802.1Qtunnel
-
Access接口类型:
-
数据进入接口时,根据接口设置的vlan标签打入vlan标签
-
数据出接口时,如果接口标签和数据帧中的标签一致,需要撕掉vlan标签;如果不一致无法通信
-
-
Trunk接口类型:
-
数据传出接口时,被发现帧中的vlan标签和tagged-list列表中的标签匹配,允许传出
-
数据传入接口时,被发现帧中的vlan标签和tagged-list列表中的标签匹配,允许传入
-
-
-
链路类型:
-
access:传递过程中不携带标签
-
trunk:传递过程中携带标签
-
-
华为所有的接口存在两个列表: tagged-list(打标签列表 ) untagged-list(移除标签列表)
-
配置:
-
交换机创建VLAN(在配置模式下):
vlan [num] # 用户范围1~4094,VLAN1已存在,默认所有的接口都存在VLAN1中
# 批量创建 vlan batch [num1] to [num2] vlan batch [num1] to [num2] [num3] to [num4] vlan batch [num1] [num2] .....
-
交换机查看VLAN
display vlan
-
批量的设置接口类型为access,并指定接口的PVID
port-group group-member [接口号] to [接口号] port-group group-member [接口号1] [接口号2] ..... port link-type access # 先将该接口修改为接入模式 port default vlan [num] # 指定接口的PVID
-
查看MAC地址表:
display mac-address
-
修改MAC地址条目老化时间:
mac-address aging-time [num] # 单位秒
-
查看MAC地址表的老化时间:
display mac-address aging-time
-
静态MAC地址条目:
mac-address static [mac地址] [接口号] vlan [num]
-
初始化接口所有配置: (初始化之后接口默认是关闭,需要手工开吭)
clear configuration interface [接口号] undo shutdown
-
3.Trunk中继协议:
-
使用一条物理链路传递多VLAN 的流量;
-
工作原理:
-
交换机1的PC端访问交换机的PC端,数据到达交换机1先打上标签,再查看MAC地址表
-
-
给交换机接口设置trunk模式,并设置允许通过VLAN(先进入接口模式下)
port link-type trunk # 将接口修改为trunk模式 port trunk allow-pass vlan [[num1] to [num2] / all] # 默认华为交换机仅允许VLAN1通过,需要定义允许列表
-
如果设置允许所有VLAN通过,仅仅是允许本设备所创建的VLAN通过
4.Hybrid混杂接口:
-
华为交换机默认模式 (access+trunk)
-
PVID : 端口VLAN 标识符 ,默认所有的接口PVID 为 VLAN 1 ;
-
在链路中传递数据包可以有标签可以没有标签,同时可以自定义打标签列表和移除标签列表自定义打标签列表和移除标签列表
-
配置:(不同VLAN之间通信)
-
先重置接口配置
-
hybrid连接主机的接口配置:
int [接口号] port hybrid pvid vlan [num] # 设置pvid值 port hybrid tagged vlan [num] # 设置要打上的标签;只有设置打上指定标签,才能查看对应VLAN的MAC地址表 port hybrid untagged vlan [num] # 设置要撕掉的标签
-
hybrid连接交换机的接口:
int [接口号] port hybrid tagged vlan [num1] [num2] ..... # 设置要打上的标签
-
查看接口打标签列表和移除标签列表:
display port vlan active
-
5.MUX VLAN :
-
相当于思科中私有VLAN (PVLAN )
-
用于定义组VLAN和隔离VLAN
-
从VLAN 分为:组VLAN 和 隔离VLAN
-
规则:
-
主VLAN 可以和所有的从VLAN 通信,组VLAN 之内可以通信
-
从VLAN 之间不能通信,隔离VLAN 之内不能通信。
-
-
配置MUX VLAN:
-
创建所有的VLAN
vlan batch [num1] [num2] ......
-
在主VLAN当中开启MUX-VLAN 功能,同时关联自身所有的从VLAN (幵且制定从VLAN 的 类型)
vlan [主num] mux-vlan # 开启MUX-VLAN 功能 subordinate separate [num] # 关联隔离从VLAN subordinate group [num] # 关联组从VLAN
-
查看主VLAN的表
display mux-vlan
-
-
将主接口划入VLAN:
-
设置接口类型为access
port link-type access # 先将该接口
-
指定接口的PVID值
port default vlan [num] # 先将该接口
-
开启MUX-VLAN 功能
port mux-vlan enable
-
-
将从接口以组的形式划分到VLAN中 :
-
划分接口进入组
port-group group-member [接口号1] [接口号2] ...... port-group group-member [接口号1] to [接口号5]
-
设置链路类型:
port link-type access
-
划分VLAN
port default vlan [num]
-
开启MUX-VLAN 功能
port mux-vlan enable
-
-
在一个普通的VLAN中配置隔离VLAN:(只在一个普通的VLAN中使用)
-
全局模式开启端口隔离功能:
port-isolate mode l2
-
划分接口进入组
port-group group-member [接口号1] [接口号2] ......
-
接口启用端口隔离幵指定相同的group ID (仅仅group ID 的接口相互隔离;相当于将所有的接口划入同一个隔离VLAN )
port-isolate enable group [num1]
-
查看:
display port-isolate group [num1]
-
6.Super VLAN :
-
超级VLAN ,聚合VLAN ,Super VLAN 之内的所有子VLAN 配置相同网段的IP地址(可以节约IP地址)
-
不同子VLAN 之间不能通信,不存在哪个接口存在super VLAN 中 ;
-
若子VLAN 之间要通信,必须在super VLAN 的三层接口开启ARP代理功能
-
配置:
-
先创建各从VLAN,并在接口修改链路类型和划分VLAN
-
开启ARP代理功能:
vlan [num] # 创建聚合VLAN aggregate-vlan # 设置为聚合VLAN access-vlan [num1] [num2] # 关联子VLAN
-
创建SVI(vlan-if)接口:(需要配置两个接口)
int vlanif[num] # num和VLAN-ID一致,相当于VLAN对应的子接口
-
在SVI接口中配置IP地址
ip address [IP地址] [子网掩码/网络地址长度]
-
在SVI接口里,开启ARP代理功能
arp-proxy inter-sub-vlan-proxy enable
-
7.VLAN mapping:
-
VLAN 映射 ,在数据的传输过程中进行VLAN 标记的改变,一般被用于城域网中
-
用于私有VLAN通信,相当于NAT地址转换
-
华为私有技术
-
配置VLAN mapping的交换机,数据进入交换机时先映射再查表,数据转出交换机时先查表再映射
-
配置:
-
接口修改为trunk模式
-
定义VLAN 的允许列表
port trunk allow-pass vlan all
-
启用QINQ 的VLAN 转换能力
qinq vlan-translation enable
-
定义VLAN 的映射列表
port vlan-mapping vlan [私有num1] map-vlan [公有num2] .....
-
8.QINQ技术:
-
双层或多层VLAN 标记来穿越二层的ISP技术
-
内层VLAN标签为私网传递标签,外层VLAN标签为公网传递标签
-
用于私有VLAN通信
-
配置:
-
接口封装为802.1Q的隧道模式
port link-type dot1q-tunnel
-
添加端口的PVID(接口接收到的所有数据帧都增加802.1Q的新标记)
port default vlan [num]
-
9.802.1Q堆叠技术
-
在VLAN标签上添加一层VLAN标签
-
华为私有技术
-
配置:
-
接口必须为hybrid接口
-
启用QINQ VLAN 映射功能
qinq vlan-translation enable
-
针对不同的VLAN 的 定义不同的堆叠VLAN
port vlan-stacking vlan [内层num1] stack-vlan [外层num2] # 给VLAN-num1添加一层VLAN-num2 ......
-
在接口的移除标签列表中增加对应的VLAN ID
port hybrid untagged vlan [num1] ....
-
10.VLAN 之间的通信:
-
使用VLAN 单臂路由(路由器中配置)
interface g[子端口] # 如:0/0/0.1,创建子接口 dot1q termination vid [num] # 定义其管理的VLAN ip address [IP地址] [子网掩码/网络地址长度] arp broadcast enable # 开启ARP功能
-
使用SVI接口(VLAN-if)
-
交换虚拟接口,代替路由器上的子接口进行VLAN'之间的通信;交换机上针对不同的VLAN 可以设置的接口(此接口为3层接口)
-
功能:
-
充当对应VLAN 之内的网关 ,为不同VLAN 之间通信提供可能
-
方便用户进行远程控制(telnet ssh)
-
-
SVI 存在条件:
-
交换机存在属于SVI接口对应VLAN ID 的活动接口
-
Trunk 链路,SVI对应VLAN id 存在于trunk链路的VLAN 允许列表之内
-
针对三层交换机,可以创建多个SVI --多个SVI可以同时工作,但对于二层交换机,启用多个SVI时,只有最后一个SVI 是up的
-
-
配置:
-
创建SVI(vlan-if)接口:(需要配置两个接口)
int vlanif[num] # num和VLAN-ID一致,相当于VLAN对应的子接口
-
在SVI接口中配置IP地址
ip address [IP地址] [子网掩码/网络地址长度]
-
查看:
display ip interface brief
-
主机需要配置网关,即SVI接口的IP地址
-
-
2.生成树:
1.概念:
-
为了保证交换网络高可用性,在交换机之间使用冗余链路(备用路线),由于网络中的泛洪机制可能造成二层的桥接环路,会导致
-
广播风暴
-
Mac地址表的不稳定
-
数据帧的重复拷贝
-
-
解决思路: 打破交换网络中的环路(针对交换网络的所有环路中,关闭其中的某个接口)
-
生成树协议( spanning tree protocol ,STP ):
-
所有的生成树协议都在通过收送比较信息进行选举
-
找到环路中应该被关闭的接口(接口阻塞)
-
-
收送的比较的信息称为BPDU,网桥协议数据单元
-
生成树的类型:
生成树的类型: 简称 别名 标准生成树协议 STP 802.1D 快速生成树协议 RSTP 802.1W 多生成树协议 MSTP 802.1S -
BPDU 网桥协议数据单元类型:
单元类型: 说明 配置BPDU config-BPDU,用于生成树的选举以及重收敛 拓扑变更BPDU TC-BPDU,通知交换网络出现了拓扑变更
2.BPDU 的数据结构:
字段 | 所占字节 | 说明 |
---|---|---|
Protocol ID:协议ID | 2 | |
Version:协议版本ID | 1 | 1:标准生成树,2:快速生成树,3:多生成树 |
Message type:类型 | 1 | 代表着BPDU 的类型 (0X00:配置BPDU;0X80:拓扑变更BPDU) |
Flags:标志 | 1 | 标记位,在802.1D 中,标识BPDU是拓扑变更,还是拓扑变更确认BPDU |
Root ID:根桥ID | 8 | 根标识符,RID,用于标记一颗树的树根。与网桥的BID 一致。 |
Cost of path:根路径开销 | 4 | 路径开销。在华为设备中,称作 root path cost (RPC)根路径开销 |
Bridge ID:网桥ID | 8 | 网桥标识符, BID , 用于标识本设备在本生成树的唯一性,组成:优先级+扩展ID+MAC |
Port ID:接口ID | 2 | 端口标识符, PID ,用于标识设备上某接口的唯一性,组成:优先级+端口标识符 |
Message age:消息寿命 | 2 | 思科默认300s,代表老化时间;华为默认0,过一台交换机+1,代表BPDU传递的跳数 |
Max age:最大寿命 | 2 | 最大时间,可以理解为hello包的超时时间默认20s |
Hellotime:hello时间 | 2 | 默认为2s ,BPDU 收送的间隔 |
Forward delay:转发延迟 | 2 | 转收延时,状态切换时间,默认为15s |
-
对于STP而言,最重要的工作就是在交换网络中计算出一个无环拓扑(生成树选路四字段)
-
在拓扑计算的过程中,一个非常重要的内容就是配置BPUDU的比较,STP按照如下顺序选择最优的配置BPDU
-
最小的根桥ID
-
最小的RPC(根路径开销)
-
最小的网桥ID
-
最小的接口ID
-
-
第一条原则主要用于在网络中选举根桥,后面的原则住哟啊用于选举根接口及指定接口
-
-
Max age:最大寿命 :
-
收到BPDU之后 将message age中的时间不max-hop进行比较
-
若小于,则正常使用该BPDU ;若大于,则忽略BPDU
-
3.BID与PID:
-
BID网桥标识符:本设备在本生成树的唯一性
-
构成:8字节
-
组成:
-
BID优先级字段:
-
4位,默认值为32768; 范围0-65535(实际范围0-61440)
-
越小越优
-
BID优先级单位为4096,调整BID优先级时 值必须为4096的倍数
-
-
扩展系统ID:12位,在802.1D和802.1W 无意义,在802.1S(快速生成树)中有用的
-
Mac地址:6字节,为交换机 背板地址池中所有MAC地址中最小的,MAC地址越小越优
-
-
BID 的使用:比较BID 优先级,比较MAC地址
-
-
PID端口标识符:设备上某接口的唯一性
-
构成:2字节
-
组成:
-
PID优先级:4位,默认值为128,范围0-255(实际范围0-240),单位为16
-
端口标识符:12位,标识唯一性
-
-
使用方法:比较PID优先级,Port number
-
4.RTC根路径开销:
-
COST: 开销值,不同带宽的链路使用不同的cost (该cost值是内部编码的),非线性过程。
5.端口角色和端口状态:
-
端口角色:
角色 说明 根端口 (RP) 存在于非根网桥之上,一个非根网桥仅有一个,用于接收来自于根的BPDU 指定端口(DP) 在一条链路中有且仅有一个,用于转收发BPDU 阻塞端口(NDP) 被逻辑上关闭的接口 -
端口状态:
状态 说明 disable关闭状态 1.关闭生成树协议 2.接口物理关闭 blocking阻塞状态 不能收送BPDU ,可以接收BPDU ,不能収送和接收数据,20秒后进入监听状态 listening监听状态 可以收送幵接收BPDU,不能收送和接收数据;(进行生成树选举的),15秒后进入学习状态 learning学习状态 可以收送幵接收BPDU,不能收送和接收数据;(学习MAC地址表),目的:限制未知单播帧的泛洪;15秒后进入转收状态 forwarding转收状态 可以收送幵接收 BPDU和数据
6.生成树选举:
-
802.1D生成树收敛时间:30s或50s
-
生成树选举:
-
选举 根网桥,选举规则: 最小的BID(BID由优先级+扩展ID+MAC地址组成)
-
选举端口角色
-
选举根端口RP:
-
接口最小的开销值(RPC+PC)
-
最小的BID(发送方的)
-
最小的PID(发送方的)
-
-
选举指定端口DP:(两个交换机之间的比较)
-
根端口的最小开销值
-
最小的BID(本设备)
-
最小的PID(本设备)
-
-
-
7.生成树的配置:
-
选择 / 修改生成树类型:
stp mode [stp/rstp/mstp] # 默认stp标准生成树(802.1D),rstp快速生成树(802.1W),mstp多生成树(802.1S)
-
修改BID优先级: 干涉根网桥选举
-
方式一:
stp priority [num] # 范围0-61440,值必须为4096的倍数,越小越优
-
方式二:设置主备根
stp root [primary/secondary] # primary等于修改优先级为0,secondary等于修改优先级为4096
-
-
修改接口的cost值:干涉端口选举
stp cost [num] # 范围1-200000000,先进入接口
-
修改接口的PID优先级:干涉端口选举
stp port priority [num] # 范围0-240,先进入接口
-
查看生成树:
display stp
-
查看生成树端口状态:
display stp brief
8.802.1D标准生成树协议:
-
连接终端的接口,启用之后进入转收状态需要30s,可以加速。(在cisco中使用portfast , 华为中可以使用边缘端口)
-
节约时间: 30 s
-
开启边缘端口:
stp edged-port enable # 先进接口
-
查看:
display current interface [接口号]
-
-
上行链路状态切换 ,切换时间为30s ,思科中可以使用uplink-fast 进行加速(节约30s)
-
骨干链路故障切换,思科中默认为50s(20+15+15;思科中可以使用backbone-fast进行加速,节约时间20s)华为切换时间默认为30s
-
802.1D 生成树的重收敛:使用拓扑变更BPDU
9.802.1W快速生成树协议:
-
802.1W 基于PA机制进行收敛(请求 同意),可以在2-3 s之内完成收敛。基于BPDU flags字段内容进行分布式收敛
-
生成树选举:与802.1D完全一致
-
端口状态:
状态 说明 Discarding丢弃状态 可以收送开接收BPDU,但是不能收送接收数据 Learning学习状态 可以收送幵接收BPDU,不能收送和接收数据;(学习MAC地址表),目的:限制未知单播帧的泛洪; Forwarding转收状态 可以收送幵接收 BPDU和数据 -
端口角色:
角色 说明 根端口 存在于非根网桥之上,一个非根网桥仅有一个,用于接收来自于根的BPDU 指定端口 在一条链路中有且仅有一个,用于转收发BPDU 替代端口 阻塞,同一个交换机上使用阻塞端口替代根端口,替换时间0s,相当于自劢集成uplink-fast 备份端口 阻塞,同一个交换机上针对同一条链路备份指定端口,备份端口切换时间30s,不能使用802.1W的机制 边缘端口 边缘端口 、非边缘端口 ,一般在连接终端的接口上实施(access) -
边缘端口:
-
配置:
stp edged-port enable # 先进接口
-
作用:
-
自动启用端口加速(节约30s)
-
若收到 proposal 置位的BPUD,边缘端口不会同步
-
若收到了TC位置位的配置BPDU,不通过边缘端口转收
-
若启用边缘端口的接口收到了BPDU,则边缘端口特性失效
-
若收到TC位置位的BPDU,边缘端口学习到的MAC地址时间不变化(依然为300s)
-
-
-
链路类型:
-
point-to-point 点对点类型(强制链路类型)
-
shared 共享型
-
10.802.1D与802.1W的区别:
802.1D | 802.1W | |
---|---|---|
收敛机制 | PA机制 | |
收敛时间 | 30s或50s | 2-3 s |
端口状态 | 3个 | 3个 |
端口角色 | 5个 | 4个 |
是否支持边缘端口 | 支持,但默认不启用的 | |
负载分担 | 不支持 | |
上行链路加速 | 不支持 | 自动集成,节约30s |
骨干链路加速 | 自动集成,节约50s | |
超时时间 | 20s | 6s |
配置 | 一致 | 一致 |
11.802.1S多生成树协议
-
配置:
-
启用MSTP
stp mode mstp
-
进入多生成树的配置模式:
stp region-configuration
-
域名 name
region-name [域名]
-
reversion leave 版本等级
revision-level [num]
-
instance 实例映射
instance [实例ID] vlan [num] to [num]
-
修改instance 1 的BID 优先级
stp instance [实例ID] priority [num] # 优先级范围0-61440
-
修改instance 1 的PID 或COST值
stp instance [实例ID] cost [num]
-
查看:
display stp instance [实例ID]
-
查看接口状态:
display stp instance [实例ID] brief
-
12.生成树的弹性(特性):
-
portfast:边缘端口
-
uplink fast:上行链路加速
-
backbone fast:骨干链路加速
-
BPDU 防护:若启用了BPDU防护的接口收到BPDU ,则会导致接口error-down;默认华为BPDU 防护只能全局设置,幵且仅仅针对边缘端口;思科中的BPDU guard 可以针对接口也可以针对全局
-
全局配置:
stp bpdu-protection
-
恢复由于BPDU 防护导致接口error-down
-
手工:先物理关闭接口 再重新开启
-
自动:开启自动恢复
error-down auto-recover causer bpdu-protection interval 30 display error-down recovery # 查看
-
-
-
BPDU-fitter:BPDU 过滤,开吭之后,该接口丌収送也丌接收BPDU信息,若接收到了BPDU ,则直接忽略
-
全局启用:全局启用同样仅仅针对边缘端口
stp bpdu-filter default
-
接口启用:
stp bpdu-filter enable # 先进入接口
-
-
root-protection:根防护,一般建议在连接新交换机的接口上启用,若该接口收到了优质根的BPDU信息,则接口进入discarding
-
接口上启动:
stp root-protection # 先进入接口
-
查看:
display stp instance [实例ID] brief
-
-
loop-protection:环路防护,防止当出现单向链路故障时,导致生成树出现转收环路,所以可以在阻塞端口上启用loop-protection ,使阻塞接口可以收送BPDU ,进行链路双向检测
stp loop-protection # 先进入接口
3.企业网三层架构:
4.Eth-Trunk以太中继:
-
通讯技术将多个物理接口逻辑的整合为一个接口,实现带宽叠加的作用
-
分类:
-
二层ether-trunk:提高链路的带宽,减少了阻塞端口的数量,增强网络稳定性
-
三层ether-trunk:提高链路的带宽,增强网络的稳定性
-
-
LACP:链路聚合控制协议,公有协议,发送LACPDU进行以太信道的协商,最大支持在16条链路上进行以太信道写协商,只能适用8条,当使用16链路进行协商,选择条为主链路,其余条为备份链路
-
配置:
-
前提条件:
-
通道内所有接口必须支持eth-trunk
-
通道内所有接口必须具有相同速率和双工
-
若接口为access,则必须全为access,并且属于同一VLAN
-
若接口为trunk,则必须具备相同的trunk VLAN 允许列表
-
若启动的三层ether0trunk,则IP地址配置在eth-trunk
-
通道内所有接口连接的是同一设备
-
-
创建以太网接口:
int eth-trunk [num]
-
将物理接口划入eth-trunk
eth-trunk [num]
-
5.冗余(备份):
-
分类:
-
链路冗余:
-
设备冗余:
-
电源冗余:
-
引擎冗余:
-
网关冗余:HSRP热备份网关冗余协议,VRRP-GLBP网关负载均衡协议
-
-
VRRP虚拟网关冗余协议:工业标准
-
一个VRRP中,
-
特点:
-
hello时间为1s,hold时间为3.6s
-
在选举过程中发送hello,若选举完成之后仅仅master发送hello,源MAC地址为VMAC,目标IP地址为224.0.0.18
-
选举一个master多个backup
-
-