交换基础
文章目录
- 交换基础
-
- [MAC 地址:设备的 "全球唯一身份证"](#MAC 地址:设备的 “全球唯一身份证”)
-
- [MAC 地址的基本属性](#MAC 地址的基本属性)
- [MAC 地址的三类类型(按通信范围划分)](#MAC 地址的三类类型(按通信范围划分))
- 以太帧
-
- 以太帧的两个标准格式
-
- [1. Ethernet_II 格式(常用)](#1. Ethernet_II 格式(常用))
- [2. IEEE 802.3 格式(少用)](#2. IEEE 802.3 格式(少用))
- 以太帧的长度要求
- 数据帧的分类
- 交换机的核心工作机制
-
- 交换机的三个核心动作
- [MAC 地址表的生成与使用](#MAC 地址表的生成与使用)
-
- [学习源 MAC 地址(建表)](#学习源 MAC 地址(建表))
- [查询 MAC 地址表(查表)](#查询 MAC 地址表(查表))
- [维护 MAC 地址表(老化)](#维护 MAC 地址表(老化))
- [实验:通过 PC 间 ping 测试理解交换机转发](#实验:通过 PC 间 ping 测试理解交换机转发)
- 总结
在局域网中,交换机是连接终端设备(如电脑、打印机)的核心设备,它能高效转发数据,让不同设备之间实现通信。要理解交换机的工作原理,首先需要掌握两个关键概念: MAC 地址 (设备的 "身份证")和 以太帧 (数据的 "包装盒"),再结合交换机的转发逻辑,就能清晰理解局域网内数据的传递过程。
MAC 地址:设备的 "全球唯一身份证"
MAC 地址又称 "物理地址" 或 "硬件地址",是网卡出厂时固化的唯一标识 ------ 就像每个人的身份证号,全球不会有两块网卡的 MAC 地址完全相同。
MAC 地址的基本属性
- 格式与长度
- 长度:48 比特(bit),换算为 6 字节(Byte),用 16 进制表示(0-9、A-F)。
- 书写格式:通常用 "-" 或 ":" 分隔,比如
54-89-98-A0-56-56
或54:89:98:A0:56:56
。
- 地址结构
- 前 24 比特(前 3 字节):OUI(厂商识别码),由国际组织分配给网卡厂商,比如
54-89-98
代表某一厂商。 - 后 24 比特(后 3 字节):设备识别码,由厂商自行分配给每一块网卡,确保同厂商内不重复。
- 前 24 比特(前 3 字节):OUI(厂商识别码),由国际组织分配给网卡厂商,比如
MAC 地址的三类类型(按通信范围划分)
MAC 地址分为单播、组播、广播三类,对应不同的 "通信场景",核心区别在第 8 个比特(从左数第 2 个字符的第 1 位)。
类型 | 核心特征 | 通信场景(通俗理解) | 举例 |
---|---|---|---|
单播 MAC 地址 | 第 8 比特为 0(比如地址第 2 个字符是 0、2、4 等偶数,或 A、C、E 等) | 一对一通信("点对点聊天"),比如 PC1 给 PC2 发文件 | 00-1E-10-DD-DD-02 (第 2 个字符是 0,第 8 比特为 0) |
组播 MAC 地址 | 第 8 比特为 1(比如地址第 2 个字符是 1、3、5 等奇数,或 B、D、F 等) | 一对多通信("拉群聊"),比如给局域网内所有视频设备发直播流 | 01-80-C2-00-00-01 (第 2 个字符是 1,第 8 比特为 1) |
广播 MAC 地址 | 所有 48 比特全为 1,固定格式为FF-FF-FF-FF-FF-FF |
一对所有通信("在大厅喊口号"),比如 PC1 查询局域网内的打印机 | FF-FF-FF-FF-FF-FF (所有字符都是 F,对应比特全为 1) |
参考华为文档图例:

以太帧
在数据链路层,数据不是 "裸奔" 传输的,而是会被包装成 "以太帧"(简称 "数据帧")------ 就像寄快递时要把物品装进带地址的盒子,以太帧也包含 "收件地址""寄件地址" 和 "包裹内容"。
以太帧的两个标准格式
目前主流的以太帧格式有两种:Ethernet_II(常用,比如我们日常上网、传文件用的就是这种)和 IEEE 802.3(多用于工业控制等特殊场景),两者的区别主要在 "中间字段"。参考华为文档图例:

1. Ethernet_II 格式(常用)
字段 | 长度 | 作用(通俗理解) |
---|---|---|
D.MAC(目的 MAC 地址) | 6 字节 | 收件地址:数据要发给哪个设备的网卡 |
S.MAC(源 MAC 地址) | 6 字节 | 寄件地址:数据来自哪个设备的网卡 |
Type(类型字段) | 2 字节 | 说明 "盒子里装的是什么类型的数据",比如0800 代表 IP 数据(日常上网数据) |
用户数据 | 46-1500 字节 | 真正要传递的内容(比如微信消息、文件数据),最少 46 字节(不够会补零),最多 1500 字节 |
FCS(帧校验序列) | 4 字节 | 校验数据是否损坏:接收方会计算校验值,若与 FCS 不一致,说明数据传丢了,会丢弃该帧 |
2. IEEE 802.3 格式(少用)
比 Ethernet_II 多了 "LLC" 和 "SNAP" 字段,用于兼容早期设备,核心字段作用类似:
字段 | 长度 | 作用 |
---|---|---|
D.MAC | 6 字节 | 目的 MAC 地址 |
S.MAC | 6 字节 | 源 MAC 地址 |
Length(长度字段) | 2 字节 | 说明 "用户数据的长度"(区别于 Ethernet_II 的 Type 字段) |
LLC(逻辑链路控制) | 3 字节 | 兼容早期局域网协议 |
SNAP(子网访问协议) | 5 字节 | 包含 Org Code(3 字节,厂商码)和 Type(2 字节,数据类型),相当于把 Ethernet_II 的 Type 字段拆到这里 |
用户数据 | 38-1492 字节 | 核心数据(因多了 LLC 和 SNAP,比 Ethernet_II 少 8 字节) |
FCS | 4 字节 | 帧校验 |
以太帧的长度要求
无论哪种格式,整个以太帧的总长度必须在 64-1518 字节之间:
- 小于 64 字节:"短帧",可能是干扰或错误数据,交换机会直接丢弃。
- 大于 1518 字节:"长帧",可能是异常数据包,交换机会同样丢弃。
数据帧的分类
和 MAC 地址对应,数据帧也分为三类,直接决定交换机的转发方式:
- 单播数据帧:目的 MAC 是单播地址(比如 PC1→PC2 的帧)。
- 组播数据帧:目的 MAC 是组播地址(比如给多台设备发直播的帧)。
- 广播数据帧:目的 MAC 是
FF-FF-FF-FF-FF-FF
(比如查询局域网设备的帧)。
交换机的核心工作机制
交换机的核心功能是 "高效转发数据帧",它靠一张 "MAC 地址表" 实现 ------ 这张表记录了 "MAC 地址→交换机接口→VLAN" 的对应关系,就像 "小区快递柜对照表"(哪个快递对应哪个柜子)。
交换机的三个核心动作
交换机收到数据帧后,会根据帧的类型和 MAC 地址表,执行三种动作之一:
动作 | 适用场景 | 通俗理解 |
---|---|---|
单播转发 | 已知单播数据帧(MAC 地址表中有目的 MAC 的对应接口) | "精准投递":根据地址表,把帧从对应接口发给目标设备,不打扰其他设备 |
泛洪 | 1. 未知单播数据帧(地址表中没有目的 MAC) 2. 组播数据帧 3. 广播数据帧 | "群发找人":除了接收帧的接口,把帧从所有其他接口发出去,直到目标设备响应 |
丢弃 | 1. 帧长度小于 64 字节或大于 1518 字节 2. FCS 校验失败(数据损坏) | "拒收垃圾":直接扔掉无效或错误的帧,避免占用网络资源 |
MAC 地址表的生成与使用
默认情况下,交换机的 MAC 地址表是空的,它会通过 "学习→查表→转发→老化" 四个步骤,动态维护地址表并实现转发:
学习源 MAC 地址(建表)
当交换机收到一个数据帧时,首先会 "记住" 帧的源 MAC 地址和 "接收该帧的接口",并把这对关系写入 MAC 地址表。
- 例:PC1(MAC:54-89-98-A0-56-56)通过交换机的 GE0/0/1 接口发帧,交换机就会在地址表中添加一条记录:
5489-98a0-5656 → GE0/0/1
。
查询 MAC 地址表(查表)
接着,交换机会查看帧的目的 MAC 地址,并在地址表中查找是否有对应的接口记录:
- 若有记录(已知单播帧):执行 "单播转发",从对应接口发出去。
- 若没有记录(未知单播帧):执行 "泛洪",从所有其他接口发出去。
维护 MAC 地址表(老化)
为了避免地址表过大(浪费设备资源),交换机对动态学习的 MAC 地址表项设置了 "老化时间"------ 默认 300 秒(5 分钟)。
- 如果 5 分钟内,某条表项对应的设备没有再发数据,交换机会自动删除这条记录。
- 若设备继续发数据,老化时间会 "重置"(重新从 5 分钟开始倒计时)。
实验:通过 PC 间 ping 测试理解交换机转发
通过实际操作,我们可以观察交换机如何学习 MAC 地址、生成地址表,以及如何转发数据帧。
实验环境
实验拓扑:

设备 | 接口 | IP 地址 | MAC 地址 |
---|---|---|---|
PC1 | Ethernet 0/0/1 | 10.1.1.1/24 | 54-89-98-A0-56-56 |
PC2 | Ethernet 0/0/1 | 10.1.1.2/24 | 54-89-98-C9-64-22 |
交换机(SW1) | GE0/0/1(连 PC1)、GE0/0/2(连 PC2) | 无(二层交换机无需配置 IP) | 无 |
实验流程
- 配置 PC1 和 PC2 的 IP 地址(静态配置,确保同网段)。
- 用 PC1 ping PC2,触发数据帧传输,让交换机学习 MAC 地址。
- 查看交换机的 MAC 地址表,验证表项是否生成。
- (可选)等待 5 分钟后,再次查看地址表,验证老化功能。
操作步骤
配置 PC1 的 IP 地址(以ENSP模拟器 PC 为例)
- 打开 PC1 的 "基础配置" 界面,选择 "IPv4 配置" 为 "静态"。
- 填写参数:
- IP 地址:10.1.1.1
- 子网掩码:255.255.255.0
- 网关:0.0.0.0(同网段通信无需网关)
- 点击 "应用",完成 PC1 配置。
- 重复上述步骤,配置 PC2 的 IP 为 10.1.1.2,子网掩码 255.255.255.0。如图:

PC1 ping PC2(触发数据帧传输)
在 PC1 的 "命令行" 界面输入 ping 命令,测试连通性:
bash
PC1>ping 10.1.1.2 # 向PC2发送ping请求(ICMP协议数据包)
Ping 10.1.1.2: 32 data bytes, Press Ctrl_C to stop
Reply from 10.1.1.2: bytes=32 seq=1 ttl=128 time=1ms # 收到PC2的回复,连通成功
Reply from 10.1.1.2: bytes=32 seq=2 ttl=128 time=1ms
- 此时,PC1 和 PC2 之间会互发数据帧,交换机会自动学习两者的 MAC 地址。
查看交换机的 MAC 地址表
登录交换机(通过 Console 或远程登录),输入命令查看 MAC 地址表:
bash
# 1. 进入交换机的用户视图(默认登录后就是用户视图)
<SW1>
# 2. 查看MAC地址表(命令:display mac-address,简写dis mac-address)
<SW1>display mac-address
MAC address table of slot 0: # 插槽0的MAC地址表
-------------------------------------------------------------------------------
MAC Address VLAN/VSI/SI PEVLAN CEVLAN Port Type LSP/LSR-ID
-------------------------------------------------------------------------------
5489-98a0-5656 1 - - GE0/0/1 dynamic - # PC1的MAC,对应接口GE0/0/1,动态学习
5489-98c9-6422 1 - - GE0/0/2 dynamic - # PC2的MAC,对应接口GE0/0/2,动态学习
-------------------------------------------------------------------------------
Total matching items on slot 0 displayed = 2 # 共2条表项
- 结果说明:交换机已通过 ping 测试,学习到 PC1 和 PC2 的 MAC 地址,并记录了对应的接口(GE0/0/1 和 GE0/0/2),类型为 "dynamic"(动态学习)。
(可选)手动修改 MAC 地址表老化时间
默认老化时间是 300 秒,若需修改(不推荐,除非特殊需求),可在交换机的系统视图中执行命令:
bash
# 1. 进入系统视图
<SW1>system-view
[SW1]
# 2. 修改老化时间(单位:秒,范围10-1000000,0表示不老化)
[SW1]mac-address aging-time 600 # 将老化时间改为600秒(10分钟)
[SW1]quit # 退出系统视图
# 3. 验证修改结果(查看系统配置)
<SW1>display current-configuration | include aging-time # 查看老化时间配置
mac-address aging-time 600 # 确认已修改为600秒
总结
-
MAC 地址:48 比特全球唯一,分单播(第 8 比特 0)、组播(第 8 比特 1)、广播(全 1)三类。
-
以太帧:数据链路层的传输单元,总长度 64-1518 字节,有 Ethernet_II 和 IEEE 802.3 两种格式。
-
交换机转发 :靠 MAC 地址表工作,核心动作是 "单播转发(已知单播)、泛洪(未知单播 / 组播 / 广播)、丢弃(无效帧)"。
总结
-
MAC 地址:48 比特全球唯一,分单播(第 8 比特 0)、组播(第 8 比特 1)、广播(全 1)三类。
-
以太帧:数据链路层的传输单元,总长度 64-1518 字节,有 Ethernet_II 和 IEEE 802.3 两种格式。
-
交换机转发:靠 MAC 地址表工作,核心动作是 "单播转发(已知单播)、泛洪(未知单播 / 组播 / 广播)、丢弃(无效帧)"。
-
MAC 地址表:动态学习源 MAC 生成,默认老化时间 300 秒,确保地址表精简高效。
如涉及版权问题,请联系作者处理!!!!