
简介面向网络技术初学者与计算机专业学生这份PPT教案以交换机基础知识为主线系统讲解交换机的MAC地址识别原理、高带宽背板总线及内部交换矩阵的工作机制并配以清晰的章节划分逐一剖析存储转发、直通交换、碎片丢弃三种主流交换模式的优缺点与适用环境对CRC循环冗余校验、地址表学习等细节也做了说明便于对比记忆。资源还从延迟大小、端口数量、管理功能等维度对比交换机与网桥的差异再从工作层次、数据传输方式、带宽占用和传输模式等方面厘清交换机与集线器的本质区别帮助读者建立完整的网络互联设备知识框架为进一步学习VLAN划分、多层交换等内容做好铺垫。资源包共1个pptx文件大小912KB目前已有128人学习下载适合网络入门课程师生课堂教学、考前复习及日常自学参考。1. 交换机学习教案先立住从 MAC 地址表理解转发决策交换机可能是机房里最不起眼、却最容易被误会的设备。很多人把它当成“多口网线分配器”实际上交换机是一台基于 MAC 地址表做精确转发的网络设备。它不关心 IP 地址也不参与路由计算它只做三件事学习源 MAC、查表转发、广播未知单播。这也是整个交换机基础知识教案里最先要建立的心智模型——交换机很“笨”但正是这种简单的查表机制撑起了园区网和 IDC 的绝大部分流量转发。这篇文章面向的是刚接触数通、或者已经会配 VLAN 但没系统捋过原理的运维工程师。后面不会堆概念而是按“转发原理 → VLAN 隔离 → 环路防护 → 链路聚合与端口安全 → 上线验证”这条真实调试路径展开所有命令以华为 VRP 为主H3C 基本兼容思科用户对照着看差异即可。2. VLAN 划分为什么广播域要拆开以及华为命令怎么落2.1 VLAN 解决的根本问题是“吵”交换机默认关闭了 VLAN 隔离时所有端口都在一个广播域里。PC 开机发 DHCP Discover、ARP 请求、NetBIOS 名字广播这些帧会被复制到交换机的每一个接口。在 50 台机器以内的小型网络里这点广播不算什么。但当设备到了 200 台、或者有视频监控和语音流量混在里面时广播风暴会让 CPU 持续飙升交换机 MAC 地址表也可能被无效条目塞满。VLAN 的核心价值就是把广播域切小同时把不同业务、不同安全等级的设备从二层隔离开。教案里常举的“公司 5 个部门划分 5 个子网”就是标准场景A 部门 100 台主机、B 部门 50 台、C 部门 20 台各自独立网段。这里要区分两个概念VLAN 是二层隔离IP 子网是三层规划。同一个 VLAN 里建议只放一个网段否则 ARP 请求会跨网段广播等于白隔离了。2.2 华为交换机上创建 VLAN 并划接口以下命令在华为 S5720、S5730、S5735 系列上通用H3C 的 S5130 语法基本一致system-view vlan 10 description IT-Department quit vlan 20 description Finance-Department quit interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type access port default vlan 20 quit上面这段做了三件事创建 VLAN 10 和 20 并写了描述把 GE0/0/1 划入 VLAN 10把 GE0/0/2 划入 VLAN 20。port link-type access表示该接口只允许一个 VLAN 通过不带标签untagged这种模式适合接 PC、打印机、IP 电话这类终端设备。port default vlan的含义要记准它指定的是接口的PVIDPort VLAN ID。收到无标签帧时交换机会打上这个 VLAN 标签转发出去时又会剥掉标签保证终端看到的是普通以太网帧。很多刚入门的人把这条命令理解成“把接口放进某个 vlan”功能上没错但原理上实际是在改 PVID。2.3 Trunk 是交换机与交换机之间的“水管”如果两台交换机之间要同时传 VLAN 10 和 VLAN 20 的流量不能再用 access 口得用 Trunk 口。Trunk 口允许带标签的帧通过需要显式放行对应 VLANinterface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20port trunk allow-pass vlan 10 20里的allow-pass是关键不写这行Trunk 口默认只放行 VLAN 1。很多新手配完 trunk发现对端 VLAN 10 的主机 ping 不通八成就是忘了allow-pass。注意Trunk 口上的 PVID 默认是 VLAN 1也就是说收到不带标签的帧会被归入 VLAN 1。如果不希望 VLAN 1 在 Trunk 上透传可以加一行port trunk pvid vlan 100把 PVID 改到业务外的保留 VLAN避免 VLAN 1 的广播帧跨交换机传播。教案里通常会强调“Access 口和 Trunk 口的四种模式”那其实是把 802.1Q 的 tagged/untagged 概念复杂化了。真正的判断标准只有一条对面接的是终端就 access对面接的是交换机或路由器子接口就 trunk。2.4 VLAN 间通信用三层交换机但别一上来就配 Vlanif不同 VLAN 之间的通信必须经过三层设备。常见做法是用华为的三层交换机启用 VLANIF 接口做网关interface Vlanif10 ip address 192.168.10.1 255.255.255.0 interface Vlanif20 ip address 192.168.20.1 255.255.255.0配完这两个 VLANIF 后PC 的网关分别填 192.168.10.1 和 192.168.20.1交换机就能在 VLAN 间路由了。但需要注意交换机默认不会转发未知网段如果 VLAN 10 的主机要访问的不是 VLAN 20而是另一个三层网段需要写 ip route-static。这里有个教案里不常讲的坑VLANIF 接口默认不开启本地代理 ARP。如果两台主机的子网掩码配置不一致比如一台是 /24、另一台是 /16VLANIF 网关不会主动代答导致“网关能 ping 通但跨网段不通”。排查时可以先看两端的掩码是否一致再看交换机上dis ip interface brief里的 Vlanif 状态是否为 up。3. STP 防环广播风暴、MAC 漂移和 BPDU 的三角关系3.1 环路不是 bug是冗余设计的代价二层网络里加一条冗余链路本意是防止单点故障。但交换机没有 TTL 机制广播帧在环路里会无限复制最终形成广播风暴。而交换机学习 MAC 地址时有个特点收到源 MAC 的帧就会更新地址表在环路里同一个源 MAC 会从多个端口反复收到导致 MAC 地址表在两秒内来回漂移正常流量反而被错误转发。STPSpanning Tree Protocol就是为了解决这个问题通过选举根桥、根端口、指定端口逻辑上阻塞冗余链路让物理环路变成无环的逻辑树。RSTP 是 STP 的改良版收敛速度从秒级降到亚秒级MSTP 则能让不同 VLAN 跑不同生成树实现负载均衡。华为交换机默认是启用 STP 的但默认模式可能是 MSTP。这点和思科不同思科新交换机默认 PVST。华为用 RSTP 的场景建议全局指定模式system-view stp mode rstp stp enable在华为 VRP 上如果交换机只跑一个生成树实例用stp mode rstp比 MSTP 少一层实例映射的复杂度。如果设备需要同时区分业务 VLAN 走不同路径才需要 MSTP 并手动规划 instance。3.2 核心配置根桥、边缘端口、BPDU防止环路除了开 STP还要做两件事把核心交换机指定为根桥把接终端的口设成边缘端口。stp root primary interface GigabitEthernet0/0/1 stp edged-port enable stp bpdu-filter enablestp root primary让交换机优先成为根桥它的优先级会被自动设置为 0如果配置了 4096 倍数也是有效值。stp edged-port enable把接 PC 的口定义为边缘端口端口 up 后直接进入转发状态省去 Listening/Learning 的延迟PC 开机不用等 30 秒才能拿到 DHCP。stp bpdu-filter是教案里容易漏掉的一步边缘端口如果不加这个一旦收到 BPDU 就会自动失去边缘属性重新参与生成树计算。在接入层端口数量多的时候这种“意外回退”会导致个别 PC 开机后网络卡几秒甚至几十秒。更好的做法是全局配置stp edged-port default stp bpdu-filter default这两条让所有普通端口默认就是边缘端口再接上stp edged-port enable就是双保险。核心交换机之间的互联口不能这么设必须保留 STP 计算能力。3.3 BPDU 的四个参数排障时盯住这几个BPDU 是 STP 的“心跳包”每 2 秒发送一次。排障时最常用的查看命令是display stp brief display stp root display stp interface GigabitEthernet0/0/1dis stp brief能看到端口的角色和状态。正常网络里端口角色应该是 ROOT、DESI、或者 ALTE。状态只有 forwarding 和 discarding 两种。如果出现大量的BOUNDARY角色多半是 MSTP 实例映射或 region name 不一致导致跨设备 STP 计算失败。dis stp root看的是根桥 ID。如果根桥 ID 不是你预期的核心交换机说明上游还有优先级更高的设备参与了竞争。常见原因是新接入的傻瓜交换机默认优先级 32768又恰好 MAC 地址更小把根桥抢走了。这里插入一个常见现象“为什么从局域网中拿走一个交换机后网络很卡” 多数情况是这个交换机之前是 STP 的根桥或指定端口路径的一部分拿走之后生成树拓扑重新计算其余交换机要重新收敛。RSTP 理论上秒级收敛但如果网络里还有老交换机在跑 802.1D收敛时间可能长达 30~50 秒期间出现 MAC 表空转和流量丢包。拿走设备之前先手动把根桥指定到核心设备上能避免这类剧烈波动。4. 链路聚合 Eth-Trunk 和端口安全带宽与身份的双重管控4.1 为什么要把两根线捆成一根链路聚合Eth-Trunk是把多个物理接口捆成一个逻辑接口的技术目的有两个增加带宽和提高可靠性。两台核心交换机之间千兆口不够用与其换万兆板卡不如先跑 4 条千兆聚合有 4G 的理论带宽。华为的 Eth-Trunk 有两种模式手工负载均衡模式和 LACP 模式。手工模式靠静态配置两端必须手动加入成员口交互简单但没法检测对端是否故障——对端链路断了它也不会自动摘除这条链路流量会继续往黑洞里扔。LACP 模式开启了 LACP 协商两端通过 LACPDU 报文协商自动确定活动链路和备份链路故障时毫秒级切换。现在主流做法都是 LACP 模式。interface Eth-Trunk1 mode lacp-static trunkport GigabitEthernet0/0/1 to 0/0/4 load-balance src-dst-ipmode lacp-static在华为 VRP 里就是静态 LACP也叫 802.3ad 模式。“to” 是连续端口批量加入的简写注意要求这些端口属于同一块接口板。load-balance src-dst-ip指定哈希因子是源目 IP 对如果业务是大量大文件传输建议改成src-dst-mac按 MAC 散列更均匀。教案里常忽略一个参数lacp preempt enable和lacp timeout fast。前者让高优先级链路故障恢复后能抢占回流后者把 LACP 超时时间从 30 秒降到 3 秒适合双机热备下的快速收敛。4.2 链路聚合带宽不是简单相加两个千兆口聚合成 Eth-Trunk 后单流带宽仍然是 1G。这是很多人理解错的地方。Eth-Trunk 的负载均衡是基于流flow的同一条 TCP 连接会被哈希到同一条物理链路上转发。只有当网络里有足够多的并发流流量才能被相对均衡地打散到所有成员口上。如果只是两台服务器之间互传一个大文件跑不满聚合带宽。所以规划聚合链路时要看业务并发流数而不是只看带宽峰值。调试命令display eth-trunk 1 display load-balance eth-trunk 1dis eth-trunk 1能看到活动接口列表和 LACP 状态。里面有个关键信息是Local端口的Actor优先级默认 32768数值越小优先级越高。两台堆叠设备做跨设备聚合时需要通过lacp system-priority调整系统优先级让备份链路归属正常。4.3 端口安全IP、MAC、端口三绑定的实际配置端口安全的核心是限制“谁可以用这个口”。三层交换机最常用的是 IP-MAC 绑定华为的命令是interface GigabitEthernet0/0/5 port-security enable port-security max-mac-num 1 port-security mac-address stickyport-security mac-address sticky表示交换机第一次学到该端口的 MAC 后自动把它固化为安全 MAC不老化、不参与 MAC 表漂移。配合max-mac-num 1这个端口只允许一个 MAC 地址通信换一台设备插上来会直接触发安全违例。如果还要绑 IP用interface GigabitEthernet0/0/5 ip verify source ip-address mac-addressip verify source是华为交换机上做 IPMAC 过滤的命令和端口安全配合使用帧到达接口后检查源 IP 和源 MAC 是否匹配绑定表。这里的坑是它只查源地址不查目的地址。目的地址不在表里交换机会正常广播或转发。所以这套机制防的是“非授权设备接入网络”防不了内网 ARP 欺骗后者需要 DHCP Snooping 检测。4.4 环路检测 loopback-detection最后一道防线即便上了 STP也建议在接入交换机上开启环路检测防止用户自己拿一根网线把两个口环上interface GigabitEthernet0/0/1 loopback-detect enable quit loopback-detect packet vlan all华为 VRP 的loopback-detect会周期性发检测帧收到自己发出去的帧就认为存在环路然后阻塞该端口并上报日志。loopback-detect packet vlan all是对所有 VLAN 发检测报文代价是稍微增加 CPU 开销。对性能的影响实际测试中通常可忽略。但如果设备上联口也开了 loopback-detect并且对端是一台傻瓜交换机有可能把对方的上联口误判为环路。所以生产建议只在接入端口开核心互联口不要开。5. 设备上线后先做这三个验证查表、查协议、查历史5.1 验证 MAC 地址表的学习与老化配完 VLAN 和链路聚合第一件事不是看带宽而是验证 MAC 表是否正常display mac-address display mac-address aging-time display mac-address vlan 10dis mac-address看全部动态表项dis mac-address vlan 10只看 VLAN 10 的条目。判断标准接 PC 的端口应该有一条对应的动态 MAC并且显示在一个端口上。如果同一 MAC 同时出现在两个端口说明存在环路或端口配置错误。华为默认 MAC 老化时间是 300 秒如果网络里有频繁的主机上下线可以适当调小mac-address aging-time 180但注意别设太短小于 60 秒会让交换机频繁重新学习 MAC碰到广播多的网络会白增 CPU 开销。5.2 验证 STP 端口角色和链路聚合状态第二步把三张表对照着看display stp brief display eth-trunk 1 display logbuffer | include STP|ETH|VLANdis stp brief里如果接入端口出现了大量DESI角色说明生成树正常。如果出现ROOT角色出现在接入口上就说明这个口和核心相连检查一下连线是否插错。dis logbuffer过滤关键字能快速抓到 STP 拓扑变化、Eth-Trunk 成员口 down、端口安全违例等事件比肉眼翻终端靠谱得多。5.3 验证配置对比与回滚改配置前务必先把当前配置保存一份save save configuration to backup.cfg display current-configuration华为交换机默认配置文件是vrpcfg.zip保存前先save再备份成带日期的文件方便回滚。上过线的设备改完配置后重启前先加载软件版本和配置校验check configuration consistency这条命令可以检查当前配置与启动配置是否有未保存的差异。远程维护时强烈建议先把display current-configuration输出重定向保存到本地回滚直接startup saved-configuration backup.cfg然后重启即可。最后留一个小技巧如果你管理的交换机数量多记住display version和display device这两条命令必须在第一次登录时敲一遍。前者记录软件版本后者记录设备温度、电源和风扇状态。很多交换机故障不是配置问题是先例风扇停转导致温度升高引起端口误码率和 CRC 错误飙升。具体查错看display interface GigabitEthernet0/0/1里的 Run-time 部分CRC 增长和 input error 速增就是物理层问题的信号。把这两条命令养成立刻执行的习惯能少走一半弯路。本文还有配套的精品资源点击获取