外观
都在同一台交换机上,怎么让财务部和研发部的电脑彻底互相看不见?
阶段 2 · 数据链路层 · 第 12 课
一家科技公司有财务部和研发部。如果两边的电脑都插在同一台 24 口交换机上,由于在同一个局域网,研发部员工只要运行抓包软件或发送广播(Broadcast),财务部电脑的每一笔报销单据都有可能被窥探到,甚至某台电脑中毒发出的广播风暴会连累全公司断网。
在没有虚拟化技术的年代,唯一的解决办法是为财务部单独买一台交换机、为研发部再买一台,拉两条独立的物理网线——这种做法成本高昂且扩展极其死板。
今天,现代企业交换机全部标配 虚拟局域网(VLAN)(Virtual Local Area Network,虚拟局域网)。它像一把锋利的手术刀,在同一台物理交换机内部,轻巧地划出多个互不相通的逻辑广播域!
学完本课后,你将能够:
- 画出 IEEE 802.1Q 标签(VLAN Tag)的 4 字节位结构,说出 TPID 取值与 VLAN ID 的有效取值范围(1~4094)。
- 推导普通数据帧在穿过 Access 端口 端口与 Trunk 端口 端口时的“打标签(Tag)”与“剥标签(Untag)”全流程。
- 解释华为交换机特有的 Hybrid 端口 端口与 端口缺省 VLAN ID(PVID) 的运行机制,并写出基础 VRP 配置命令。
1. 先看图:给以太网帧插上一面“小彩旗”
正如上一节课所学,普通的以太网帧是无色透明的。为了区分“这个帧属于财务部(VLAN 10)还是研发部(VLAN 20)”,国际标准化组织制定了 IEEE 802.1Q 标准。
802.1Q 标准在传统以太网帧的源 MAC 地址和**协议类型(Type)**之间,硬生生插入了 4 个字节 的额外首部,称为 VLAN 标签(802.1Q Tag)(VLAN Tag)(如上图上半部分):
| 字段名称 | 位宽与字节 | 固定取值与作用 | 零基础深度解读 |
|---|---|---|---|
| TPID(标签协议标识符) | 固定为 0x8100 | 像一面招牌,告诉网卡与交换机芯片:“注意!这不是普通的以太网帧,我插入了 802.1Q 标签!” | |
| PRI(优先级) | 802.1p 服务质量(QoS)优先级。数字越大优先级越高(如语音流为 5,普通流量为 0),拥塞时优先排队转发。 | ||
| DEI(丢弃资格指示器) | 过去称为 CFI。为 1 时表示网络严重拥塞时可以优先把该帧丢弃。 | ||
| VLAN ID(虚拟局域网标识符) | 全课最核心字段! 标明该帧属于哪一个 VLAN。0 和 4095 保留,用户可配置的范围是 1 到 4094。 |
2. 交换机端口的三大家族:Access、Trunk 与 Hybrid
电脑网卡通常是“傻瓜型”的,它只认得标准的无标签普通帧;如果突然给电脑网卡送来一个带 0x8100 标签的怪帧,大部分电脑网卡会直接当成错包扔掉。
交换机内部要带着 VLAN 标签做隔离,而外部的主机又不能带标签——这矛盾怎么化解?答案全在交换机端口的**打标签(Tagging)与剥标签(Untagging)**规则里。
在华为交换机中,端口主要分为三种类型:
① Access 端口 端口(门卫保镖:连终端主机)
- 适用场景:专门用来连接 PC 电脑、打印机、IP 电话或服务器等终端设备。一个 Access 端口只能属于一个 VLAN。
- 端口默认 VLAN(端口缺省 VLAN ID(PVID),Port Default VLAN ID):每个端口都有一个默认的归属 ID(如配置
port default vlan 10,其 PVID 就是 10)。 - 收帧规则(入方向):收到电脑发来的普通无标签帧时,强行给它贴上本端口的 PVID 标签(打上 VLAN 10 标签),送入交换机内部交换。
- 发帧规则(出方向):从交换机内部发往电脑时,把 VLAN 10 标签一把撕掉(剥离 Tag),还原成普通干净帧再推给电脑。
- 效果:电脑终端对 VLAN 毫无感知,体验完全透明!
② Trunk 端口 端口(物流专列:连交换机互联)
- 适用场景:用于交换机与交换机之间、或交换机与路由器之间的互联跳线。
- 核心能力:允许多个不同 VLAN 的数据帧带着标签同时跨越这一根跳线!
- 收帧规则:收到带标签帧时,如果其 VLAN ID 在
allow-pass放行列表中,原样放行进交换机。 - 发帧规则:
- 如果该帧的 VLAN ID 属于放行列表且不等于本端口的 PVID,原样带着标签发送出去,让对端交换机继续识别。
- 特殊情形:如果该帧的 VLAN ID 正好等于 Trunk 口的 PVID(华为缺省通常为 VLAN 1),发送时会剥除标签(发送无标记帧)。
③ Hybrid 端口 端口(华为特有:超级灵活混合口)
- 华为交换机接口的出厂默认工作模式就是 Hybrid!
- 它既可以接电脑也可以接交换机。最强的地方在于:管理员可以手工指定该端口在发送哪些 VLAN 时保留标签(tagged),在发送哪些 VLAN 时剥离标签(untagged)。这在多部门灵活共享公共打印机或特殊二层隔离场景中极为强大。
3. 极简实战:华为 VRP 交换机 VLAN 配置速成
让我们在华为 VRP 命令行里,亲手为财务部搭建 VLAN 10,为研发部搭建 VLAN 20,并通过一条 Trunk 骨干级联两台交换机:
text
[Switch-A] vlan batch 10 20 // 批量创建 VLAN 10 和 VLAN 20
// 1. 配置连接财务部 PC1 的端口 GE0/0/1 为 Access
[Switch-A] interface GigabitEthernet 0/0/1
[Switch-A-GigabitEthernet0/0/1] port link-type access
[Switch-A-GigabitEthernet0/0/1] port default vlan 10
[Switch-A-GigabitEthernet0/0/1] quit
// 2. 配置连接研发部 PC2 的端口 GE0/0/2 为 Access
[Switch-A] interface GigabitEthernet 0/0/2
[Switch-A-GigabitEthernet0/0/2] port link-type access
[Switch-A-GigabitEthernet0/0/2] port default vlan 20
[Switch-A-GigabitEthernet0/0/2] quit
// 3. 配置连接隔壁楼交换机 Switch-B 的骨干级联口 GE0/0/24 为 Trunk
[Switch-A] interface GigabitEthernet 0/0/24
[Switch-A-GigabitEthernet0/0/24] port link-type trunk
[Switch-A-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20
[Switch-A-GigabitEthernet0/0/24] quit验证命令: 输入 display vlan,即可看到 VLAN 10 绑定了 GE0/0/1(Untagged)与 GE0/0/24(Tagged);VLAN 20 绑定了 GE0/0/2(Untagged)与 GE0/0/24(Tagged)。
此时,PC1 发送的广播帧只会在 VLAN 10 内部泛洪,PC2 的接口电平纹丝不动——二层广播域彻底实现物理共享、逻辑隔离!
4. 小结与下一步
- 802.1Q 标签:4 字节长度,插入在源 MAC 与 Type 之间,由
0x8100TPID 和 12 位的 VLAN ID()组成。 - 端口收发行为:Access 口“收打发剥”,连接主机;Trunk 口“带标透传”,连接交换机;Hybrid 口“灵活自定”。
- 隔离的局限性:不同 VLAN 之间在二层彻底不通了。如果财务部 PC1 确实需要合法访问研发部的某台文件服务器,就必须通过网络层的三层路由器或三层交换机做路由转发(阶段 3 将详细讲解)。
在组建企业大型网络时,网络工程师为了防止一根网线被老鼠咬断就全网瘫痪,通常会在两台核心交换机之间插上两根物理网线做冗余备份。然而,一旦两台交换机连成了一个环,网络瞬间就会陷入可怕的灭顶之灾——广播风暴!下一课我们揭开二层网络最凶险的死敌以及驯服它的利器——生成树协议(STP)。