配置局域网交换
1_MAC地址表
记录交换机每个端口和所连接的设备的MAC地址的映射关系
交换机学习MAC地址时,需要遵守:
- 一个MAC地址只能被一个端口学习
- 一个端口可以学习多个MAC地址
老化时间:300秒
1.2_工作机制
- 交换机学习数据帧的源MAC地址,来获得端口和设备MAC地址的映射关系,写入MAC地址表中
- 交换机检查数据帧的目的MAC地址,从MAC地址表中的映射关系来判断把数据帧从哪个端口发出
- 交换机对于目的MAC地址不存在于MAC地址表中的数据帧进行广播处理
2_交换机对数据帧的转发和过滤
2.1_数据的传输模式
- 单播:接收者是某一种设备
- 广播:接收者是所有设备
- 组播:接收者是某一部分设备
2.2_数据帧的转发方式
- 对于目的MAC地址已知的单播帧,交换机查询MAC地址表进行转发
- 对于目的MAC地址未知的单播帧,交换机进行广播处理
- 对于广播帧,交换机继续广播处理
- 数据过滤:接收到帧时,交换机查找MAC地址表,发现帧的目的关联到接收端口上,则丢弃此帧
2.3_广播域
- 网络中所能接收到的同样广播信息的设备的集合
- 默认情况下,交换机的所有端口属于统一广播域
3_VLAN
3.1_VLAN技术
- 广播风暴:设备发出的广播帧在广播域中传播,占用网络带宽,降低设备性能
- 路由器隔离广播:但是价格比交换机搞,提高了部署成本,大部分中低端路由用软件转发,性能不高,任意造成性能瓶颈
- VLAN隔离广播:虚拟局域网,用来在二层网络中隔离广播域,把一个LAN划分多个逻辑的LAN----VLAN,每个都是单独的广播域,不同VLAN之间不能直接通信,只能通过路由器等三层设备互通
- VLAN的优点
- 有效控制广播范围
- 增强局域网的安全性
- 灵活构建虚拟工作组
- VLAN的优点
3.2_VLAN类型
3.2.1_基于端口的VLAN
- 端口固定属于某个VLAN
- 是最简单最有效的VLAN划分方法,按照设备端口来定义vlan成员
- 指定端口加入指定的vlan之后,该端口就可以转发指定vlan的数据帧
3.2.2_基于协议的vlan
- 三层协议绑定到vlan,统一协议的报文,无论从那个端口接收,vlan归属不变
- 根据端口接收到的报文所属的协议(族类型来给报文分配不同的vlan id
- 可用来划分vlan的协议族有ip,ipx
- 主要用于将网络中提供的协议类型与vlan绑定,方便管理和维护
- 端口类型需要配置为Hybrid
3.2.3_基于MAC地址的vlan
- MAC地址绑定到vlan,同一mac地址的设备,无论在那个端口,vlan归属不变
- 端口类型需要配置为Hybrid
3.2.4_基于子网的vlan
- IP网段绑定到vlan,同一ip子网的设备,无论连接在那个端口,vlan归属不变
- 主要用于将指定网段或IP地址发出的数据在指定的vlan中传送
- 端口类型需要配置为Hybrid
3.2.5_vlan的优先级
MAC地址 >>> ip子网 >>> 协议 >>> 端口
3.3_vlan的工作原理
3.3.1_802.1Q
- 带vlan标签的帧:添加了4个字节的802.1Q标签
- 未打标签的帧:没有携带802.1Q标签
802.1Q标签头包含两个字节的标签协议标识(TPID)和2个字节的标签控制信息(TCI)
TPID是IEEE定义的新的类型,封装了一个802.1Q标签的帧,包含一个固定值0x8100
TCL包含的是帧的控制信息
- Priority:着3位指明数据帧的优先级,一共有8种优先级,0一7
- CFI(Canonical Format Indicator):CFI值为0说明是规范格式,1为非规范格式,它被用在令牌环/源路由FDDI介质访问方法中来指示封装帧中所带地址的比特次序信息
- VLAN ID(VLAN Identifier):共12比特,指明VLAN的编号,VLAN编号一共4096个,每个支持802.1Q协议的交换机发送出来的数据帧都会包含这个域,以指明自己属于哪一个VLAN
3.3.2_单交换机vlan标签操作
- 在进入交换机端口时,附加缺省vlan标签
- 出交换机端口时,去掉vlan标签
3.3.4_Access链路类型端口
- 必须加入到一个vlan,且只能加入一个vlan中
- 从access端口收到的帧,会打上该端口所属的vlan的tag
- 从access端口发出的帧,会剥离tag
- 对终端主机透明,所有通常用在连接不需要识别802.1Q协议的设备,一般用来连接PC或路由器
- H3C交换机默认的所有端口都是access类型属于vlan1,华为的是hybrid
3.3.5_跨交换机vlan标签操作
- 带有vlan标签的以太网帧在交换机间传递
- valn跨越交换机时,需要 交换机之间传递的以太网数据帧带有802.1Q标签
3.3.6_Trunk链路类型端口
- 可以允许多个vlan的数据通过
- 从trunk端口发出的帧保留vlan tag,但是缺省vlan除外
- trunk端口收到未打tag的帧,会重新打上缺省vlan的tag
- 一般在交换机之间互联
3.3.7_Hybrid链路类型端口
- 可以允许多个vlan的数据通过,可接受和发送多个vlan的数据帧
- 可以手动配置从Hybrid端口发出的帧,哪个vlan保留tag,哪个vlan剥离tag
- 缺省vlan必定剥离tag
- Hybrid收到未打tag的帧,会重新打上缺省vlan的tag
- 既可以连接PC/路由器,也可以连接交换机
3.3.8_PVID
- 定义:
- 表示某个端口的缺省vlan
- 任何类型的端口转发tag中vlan id和pvid一致的帧,都会剥离tag
- 特征:
- Access端口所属的vlan就是pvid,不用配置,默认是vlan1
- Trunk端口需要手动配置pvid,默认是 vlan1
- Hybrid端口需要手动配置pvid,默认是vlan1
- 总结:
- 任何端口收到未打tag的帧,都会被打伤缺省vlan的标签
- 任何端口转发携带缺省vlan标签的帧,都会剥离标签
3.4_vlan的基本配置
- 在系统视图下创建vlan并进入:
vlan [vlan-id]
- 是vlan视图下更改vlan的名字:
vlan [name]
- 在vlan视图下将指定端口加入到vlan中:
port [interface-list]
- 在以太网端口下指定端口链路类型为Trunk/access/hybrid:
port link-type {trunk/access/hybrid}
- 默认情况下,trunk只允许vlan1的数据通过,需要在以太网端口下指定通过当前trunk端口的数据帧:
port trunk permit vlan [vlan-id | all]
- 在以太网端口视图下配置trunk的缺省vlan:
port trun pvid vlan [vlan-id]
- 默认情况下,所有的Hybrid端口只允许vlan1通过,所以在以太网端口视图下指定通过Hybrid的数据帧:
port hybrid vlan [vlan-id-list] {tagged | untagged}
- 在以太网端口视图下配置Hybrid的缺省vlan:
port hybrid pvid [vlan-id]
- 注:Trunk端口不能直接设置为Hybrid端口,只能先设置为Access端口,再设置Hybrid
- 任意视图查看当前vlan:
display vlan
- 具体某个vlan所包含的端口:
display vlan [vlan-id]
- 具体端口的vlan信息:
display interface [interface-type interface-number]
4_生成树协议
一个局域网通常由多台交换机互连而成,所以为了避免广播风暴,为了保证网络中不存在路径回环,交换机上的STP(生成树协议)就实现了这个功能
桥接网络中,网桥不会对以太网数据帧做任何修改,帧中也不会记录经过几个网桥,所有存在环路的话,会不断循环和增生,从而造成网络拥塞
STP作用
- 通过阻断冗余链路来消除桥接网络中可能存在的路径回环
- 当前路径发生故障时,激活冗余备份链路,恢复网络连通性
4.1_STP定义
- STP:是用在局域网中消除数据链路层物理环路的协议
- 通过在桥之间交换BPDU(Bridge Protocol Data Unit桥协议数据单元)来保证设备完成生成树的计算过程
- BPDU分类:
- 配置BPDU:用来进行数生成计算和维护生成树拓扑的报文
- TCN BPDU:当拓扑结构发生变化时,用来通知相关设备网络拓扑结构发生变化的报文
4.1.2_配置BPDU的生成和传递
- 配置BPDU包含以下重要信息,完成生成树计算
- 根桥D(RootID):由根桥的优先级和MAC地址组成
- 根路径开销(Root Path Cost):到根桥的路径开销
- 指定桥ID(Designated Bridge ID):根端口选举时,所连接桥ID最小的端口被选举为根端口
- 指定端口ID(Designated Port ID):根端口选举时,所连接端口ID最小的端口被选举为根端口
- 各台设备的各个端口在初始时生成以自己为根桥(RooCBridge)的配置消息,向外发送自己的配置消息
- 网络收敛后,根桥向外发送配置BPDU,其他的设备对该配置BPDU进行转发
4.2_STP的选举机制
- 在所有交换机中选举一台作为根网桥(Root bridge):
- 选举规则:Bridge-id小的优先
- Bridege-id
- 定义:桥ID,BID,用来标识交换机身份
- 格式
- 优先级+Mac地址
- 优先级默认为32768,必须是4096的倍数
- 每台非根网桥(交换机)选举出一个根端口(Root port):
- 选举规则
- 到达根网桥开销小的优先
- 对端交换机BID小的优先
- 端口ID小的优先
- 开销:Cost,代表路径耗费的代价和成本,带宽越大,开销越小
- 选举规则
- 每个物理段上选举出一个指定端口(Designated port)
- 选举规则
- 到达根网桥开销小的优先
- 本机BI小的优先
- 端口ID小的优先
- 选举规则
- 剩下没有角色的端口就是闭塞端口(Blocked Port)
4.3_端口状态
- disable:禁用状态,被关闭的端口
- blocking:闭塞状态,接受BPDU,但不发送BPDU,不学习mac地址,不转发数据
- listening:监听状态,接受并发送BPDU,不学习mac地址,不转发数据,持续15秒
- learning:学习状态,接受并发送BPDU,学习mac地址,不转发数据,持续15秒
- forwarding:转发状态,接受并发送BPDU,学习mac地址,转发数据
4.4_STP计时器
- Hello time:2秒,配置BPUD的发送周期
- Max age:20秒,判断链路故障的时间,10个Hello time周期
- Forwarding delay:15秒,状态切换延迟
4.5_STP拓扑变更机制
- Max age超时/有接口变更为转发状态,判断为拓扑发生变更,向根网桥发起TCN BPDU
- 收到TCN BPDU的交换机继续向根网桥转发TCN BPDU,到达根网桥为止
- 根网桥收到TCN BPDU后,向所有端口发起TC置位的配置BPDU
- 交换机收到TC置位的配置BPDU后,Mac地址表的老化时间缩短到15秒
4.6_STP的问题
- 收敛速度慢,故障切换时间长
- 网络中大量主机频繁上下线,会导致TCN BPDU大量发送
4.7_RTSP
RTSP(Rapid Spanning Tree Protocol快速生成树协议)是STP协议的优化版,能实现树的所有功能,不同之处在于,某些情况下,当一个端口被选为根端口或指定端口后,RSTP减小了端口从阻塞到转发的时延,尽可能快的恢复网络连通性,提供更好的用户服务
- 端口状态减少到三种
- 端口角色增加到四种:
- 根端口和指定端口不变
- 闭塞端口细分两种
- 替代端口(Alternata port)
- 备份端口(Backup port)
- 边缘端口机制
- 当链路激活,边缘端口立即进入转发状态,不参与STP计算
- 边缘端口UP/DOWN不会触发拓扑变更
- 建议把连接PC的端口配置为边缘端口
4.8_STP、RSTP的不足
- Trunk链路上实际运行着多个vlan
- 所有vlan共用一课生成树
- 无法实现不涂vlan在多条trunk链路上的负载分担
4.9_PVST
4.10_MSTP
4.11_四种协议书的比较
4.11_生成树协议的基本配置
- 在系统视图开启STP:
stp global enable
- 在系统视图关闭STP:
undo stp global enable
- 系统视图开启生成树,所有端口都默认参加,端口视图关闭STP:
undo stp enable
- 系统视图配置STP工作模式:
stp mode {stp | rstp | pvst | mstp}
- 视图视图设置当前设备优先级:
stp [instance instance-id] priority [priority]
- 设置端口位边缘端口:
stp edged-port
5_端口隔离技术
5.1_802.1x
- 定义:起源于vlan协议802.11,解决局域网终端的接入认证问题
5.1.1_端口认证
- 认证方式
- 本地认证:由设备内置本地服务器对客户端进行认证
- 远程集中认证:由远程的认证服务器对客户端进行认证
使用802.1X的系统为典型的客户端/服务器体系结构,包括三个实体,分别为:客户端(Supplicant System)、设备端(Authenticator System)以及认证服务器(Authentication Server System)
- 客户端:安装有802.1X客户端软件的用户终端设备
- 用户通过客户端软件发起802.1X认证。客户端必须支持EAPOL(Extensible Authentication Protocol over LANs,局域网上的可扩展认证协议)
- 设备端:通常为支持802.1X协议的网络设备,它为客户端提供接入局域网的端口,如支持802.1X协议的交换机
- 认证通过后,设备端开放端口,客户端能够访问网络
- 认证服务器:能够对用户实现进行认证、授权和计费功能
认证服务器可分为本地认证服务器和远程集中认证服务器,分别适用于不同场合:
- 本地认证服务器通常集成在设备端上
- 设备端内置的认证服务器对客户端进行认证,认证通过后开放端口,本地认证方式适用于网络规模小
- 客户端数量不多的情况下:但用户信息数据库分散在设备本地上,维护管理不便
- 远程集中认证服务器通常是一台专门的认证服务器
- 设备端把客户端信息发送到远程认证服务器,由服务器查找用户信息数据库后返回消息给设备端
- 在远程集中认证方式下,用户信息数据库能够集中管理,维护管理方便,适用于较大规模网络中
5.2.2_端口接入控制方式
- 基于端口的认证方式
- 基于MAC的认证方式
5.2.3_基本配置
- 开启全局的802.1x特性:
dot1x
- 开启端口的802.1x特性:
在端口视图下输入dot1x
5.3_端口隔离技术及其配置
- 用于在vlan内部隔离用户
- 统一隔离组端口不能通讯,不同隔离组端口可以通讯
- 创建隔离组:
port-isolate group 1
- 指定端口加入隔离组,端口称为隔离组的普通端口:
port-isolate enable grpup 1
6_链路聚合
定义:将多个以太网链路聚合在一起形成一个逻辑上的聚合端口组
- 增加链路带宽:避免了STP计算,聚合组内物理端口不会被闭塞
- 提供链路可靠性:聚合组内只要还有物理端口存活,链路就不会中断
负载分担:也称负载均衡,聚合后的链路会基于流自动负载分担
6.1_链路聚合的分类
- 静态聚合:双方不会协商聚合参数
- 动态聚合:双方通过LACP协议聚合参数
- LACP(Link Aggregation Control Protocol,链路聚合控制协议)是一种基于IEEE802.3ad标准的、能够实现链路动态聚合与解聚合的协议
- LACP协议通过LACPDU(Link Aggregation Control Protocol Data Unit,链路聚合控制协议数据单元)与对端交互信息
6.2_链路聚合的基本原理
- 在系统视图模式下创建聚合端口:
interface bridge-aggreation [interface-number]
- 在接口视图下把物理端口加入到创建的聚合组中:
port link-aggregation group [number]
- 查看链路聚合状态:
display link-aggreation summary
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)