华为eNSP综合实验之-交换机VLAN技术帧标记、端口类型与VLAN标识
VLAN(虚拟局域网)是一种逻辑网络划分技术,通过在物理网络上创建多个隔离的广播域来解决传统以太网问题。主要特点包括:隔离广播域减少风暴、增强安全性、简化网络管理、实现逻辑分组。VLAN通过802.1Q标签实现帧标记,包含Tagged和Untagged两种帧类型。
一、基础概念
VLAN,全称 Virtual Local Area Network,即虚拟局域网。VLAN的出现,主要是为了解决传统共享式以太网的一些关键问题。可以把它理解为一种逻辑上的网络划分技术。它允许网络管理员在物理网络的基础上,根据需要划分出多个逻辑网络。
-
物理网络:你面前有1台交换机,24台电脑都连接到这台交换机上。从物理线缆和交换机端口上看,这24台电脑在同一个“局域网”里。
-
虚拟网络:逻辑上,管理员可以创建3个VLAN(例如VLAN 10、20、30),并将24个端口分别划分到这3个VLAN中。这样一来,虽然所有电脑都连在同一台物理交换机上,但逻辑上它们属于三个不同的、相互隔离的网络,就像连接在三台独立的物理交换机上一样。
VLAN ID
-
取值范围是 1-4094。
-
VLAN 1是默认VLAN,所有端口初始都属于VLAN 1。通常不建议使用VLAN 1承载业务流量。 -
VLAN 1002-1005通常保留给传统令牌环/光纤分布式数据接口使用。
1. 隔离广播域,减少广播风暴
-
问题:在传统的单一局域网中,任何一个设备发出的广播帧(如ARP请求),都会被交换机转发到所有其他端口。当网络规模很大、设备很多时,大量的广播流量会严重消耗网络带宽和设备的CPU资源,导致“广播风暴”。
-
VLAN的解决:VLAN的边界就是广播域的边界。广播帧只会在同一个VLAN内传播,不会被转发到其他VLAN。这极大地缩小了广播范围,提升了网络整体性能和稳定性。
2. 增强网络安全性
-
问题:在同一个二层网络内,设备之间可以轻易地进行监听(如ARP欺骗)。
-
VLAN的解决:不同VLAN之间在二层是完全隔离的。即使设备连接到同一台交换机,只要属于不同VLAN,它们就无法直接进行二层通信。这就像为不同的部门(如财务部、研发部)建立了逻辑上的“安全隔离区”,未经路由(三层)许可,数据包无法跨区域流动,有效防止了部门间的非授权访问和信息泄露。
3. 简化网络管理,提高灵活性
-
问题:传统网络按照物理位置划分。如果财务部的员工搬到了研发部所在的区域,就需要重新布线,将其网线插到财务部的交换机上,非常麻烦。
-
VLAN的解决:网络规划不再受物理位置限制。无论员工坐在哪里,只要将其电脑连接的交换机端口划分到“财务VLAN”,他就在财务部的逻辑网络中。人员位置的调整只需要在交换机的配置上修改端口的VLAN归属即可,无需改动物理线路,极大地简化了网络管理和维护。
4. 实现逻辑分组
可以根据功能、部门、项目组等逻辑需求,而不是物理位置,来组建网络。
-
例如:将所有服务器划入
VLAN Servers,所有语音电话划入VLAN VoIP,所有无线用户划入VLAN Wireless。这样便于为不同类型的流量实施统一的管理策略(如QoS服务质量)。
5. 以太网帧类型
| 帧类型 | 定义 | 特点 | 应用场景 |
|---|---|---|---|
| Tagged帧 | 在标准以太网帧头中插入4字节802.1Q标签的帧 | 包含12位VLAN ID(第3-4字节),能被交换机识别所属VLAN | 交换机与交换机之间的链路 |
| Untagged帧 | 标准的、无802.1Q标签的原始以太网帧 | 终端设备无法识别VLAN标签,只能处理标准以太网帧 | 终端设备(电脑、打印机等)与交换机之间的链路 |
关键理解:交换机端口的核心作用是在接收时决定是否给帧"打标签",在发送时决定是否"剥掉标签"。
6. VLAN标识符:PVID与Native VLAN
6.1 PVID (Port VLAN ID)
- 定义:端口默认VLAN ID,决定了端口接收未打标签帧时的处理方式
- 作用范围:适用于所有端口类型(Access/Trunk/Hybrid)
- 核心功能:当端口收到Untagged帧时,交换机会自动给它打上PVID对应的VLAN标签
- 典型应用:
- Access端口:PVID就是该端口所属的VLAN(通过port default vlan配置)
- Trunk/Hybrid端口:PVID定义了Untagged帧的处理方式
6.2 Native VLAN(本征VLAN)
- 定义:802.1Q Trunk端口的属性,用于处理未打标签(Untagged)的帧
- 作用范围:主要应用于Trunk/Hybrid端口
- 核心功能:在Trunk链路上,Native VLAN的帧以无标签形式传输,其他VLAN帧保留标签
- 典型应用:
- 兼容不支持VLAN的旧设备
- 传输管理协议流量(CDP、STP BPDU、LLDP等)
- 默认为VLAN 1(出于安全考虑,建议修改)
6.3 PVID与Native VLAN的关系
| 特性 | PVID | Native VLAN |
|---|---|---|
| 定义 | 端口接收Untagged帧时分配的VLAN ID | Trunk端口处理Untagged帧的VLAN |
| 作用方向 | 接收方向(入向) | 发送方向(出向) |
| 适用范围 | 所有端口类型 | 仅Trunk/Hybrid端口 |
| 默认值 | Access端口:VLAN 1 Trunk端口:VLAN 1 |
VLAN 1 |
| 设备实现 | 华为:port default vlan(Access) port trunk/hybrid pvid vlan |
华为:与PVID相同,通过同一命令设置 |
在Trunk端口上,PVID与Native VLAN是同一个值,通过
port trunk pvid vlan命令同时设置;在Hybrid端口上,PVID与untagged vlan列表共同实现类似功能。
二、端口类型详解
1. Access端口(接入端口)
- 设计用途:连接终端设备(PC、打印机、AP等)
- 关键特性:
- 仅属于单个VLAN
- PVID固定为该端口所属VLAN
- 无Native VLAN概念(只有PVID)
- 数据处理流程:
- 接收方向:
- Untagged帧 → 打上PVID的Tag
- Tagged帧 → 默认丢弃(因只服务一个VLAN)
- 发送方向:
- 所有帧剥离VLAN Tag,以Untagged形式发送给终端
- 接收方向:
2. Trunk端口(干道端口)
- 设计用途:连接交换机-交换机或交换机-路由器,传输多个VLAN流量
- 关键特性:
- 可承载多个VLAN的流量
- PVID = Native VLAN(同一配置命令设置)
- 通过allow-pass列表控制允许通过的VLAN
- 数据处理流程:
- 接收方向:
- Untagged帧 → 打上PVID(Native VLAN)的Tag
- Tagged帧 → 检查VLAN ID是否在allow-pass列表中
- 发送方向:
- VLAN ID = PVID(Native VLAN)→ 剥离Tag,以Untagged形式发送
- VLAN ID ≠ PVID但在allow-pass列表中 → 保留Tag,以Tagged形式发送
- 接收方向:
3. Hybrid端口(混合端口)
- 设计用途:华为特有,灵活连接需要接收多VLAN但不支持Tag的终端
- 关键特性:
- 可同时配置多个VLAN以Tagged或Untagged形式传输
- PVID独立于untagged/tagged vlan列表
- 具有更精细的流量控制能力
- 数据处理流程:
- 接收方向:
- Untagged帧 → 打上PVID的Tag
- Tagged帧 → 检查VLAN ID是否在tagged/untagged列表中
- 发送方向:
- VLAN在untagged列表中 → 剥离Tag后发送(类似多个Native VLAN)
- VLAN在tagged列表中 → 保留Tag后发送
- 接收方向:
三、端口类型对比与配置
1. 端口类型特性对比
| 特性 | Access端口 | Trunk端口 | Hybrid端口 |
|---|---|---|---|
| 主要用途 | 连接终端设备 | 交换机互连 | 通用(终端/设备) |
| VLAN数量 | 仅1个VLAN | 多个VLAN | 多个VLAN |
| PVID配置 | port default vlan X | port trunk pvid vlan X | port hybrid pvid vlan X |
| 标签控制 | 无选择(总是去标签) | 仅Native VLAN去标签 | 精细控制(tagged/untagged列表) |
| 接收Untagged | 打上PVID标签 | 打上Native VLAN(PVID)标签 | 打上PVID标签 |
| 发送Untagged | 总是去标签 | 仅Native VLAN去标签 | untagged列表VLAN去标签 |
| 灵活性 | 低 | 中 | 高 |
2. 关键配置命令
# Access端口配置 (连接普通PC)
interface GigabitEthernet 0/0/1
port link-type access
port default vlan 10 # 设置PVID=10
# Trunk端口配置 (交换机互联)
interface GigabitEthernet 0/0/24
port link-type trunk
port trunk allow-pass vlan 10 20 30 # 允许VLAN 10,20,30通过
port trunk pvid vlan 10 # 设置PVID=Native VLAN=10
# Hybrid端口配置 (连接特殊服务器)
interface GigabitEthernet 0/0/2
port link-type hybrid
port hybrid pvid vlan 10 # 接收Untagged帧时打上VLAN 10标签
port hybrid untagged vlan 10 20 # VLAN 10和20发往终端时去除标签
port hybrid tagged vlan 30 # VLAN 30发往终端时保留标签
3. 实际应用场景示例
场景1:标准企业网络
- Access端口:连接员工PC,每个部门一个VLAN
- Trunk端口:交换机之间互联,传递所有部门VLAN
- Native VLAN:配置为管理VLAN,传输STP/CDP等协议
场景2:IP电话+PC组合
# 连接IP电话(下联PC)的端口
interface GigabitEthernet 0/0/5
port link-type hybrid
port hybrid pvid vlan 20 # PVID=20(语音VLAN)
port hybrid untagged vlan 10 20 # PC数据VLAN10和语音VLAN20都不打标签
# 电话可识别并处理VLAN20的流量
port hybrid tagged vlan 30 # 管理VLAN保留标签
场景3:服务器多网卡汇聚
- 某些服务器需要接入多个VLAN,但操作系统不支持VLAN tagging
- Hybrid端口配置多个untagged vlan,实现"一个物理接口,多个逻辑网络"
四、安全注意事项与最佳实践
1. 常见安全风险
-
VLAN跳跃攻击(VLAN Hopping):
- 当Trunk两端Native VLAN不一致时,攻击者可将流量注入到非预期VLAN
- 攻击者发送双标签帧,外层标签为Native VLAN,内层为目标VLAN
-
管理VLAN暴露:
- 使用默认VLAN 1作为Native VLAN,使管理流量暴露
2. 安全最佳实践
-
修改默认Native VLAN:
- 避免使用VLAN 1作为Native VLAN
- 为Native VLAN分配一个不使用的VLAN ID
-
Trunk端口安全配置:
interface GigabitEthernet 0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 30 # 仅允许必要VLAN port trunk pvid vlan 999 # 设置非业务VLAN为Native VLAN -
禁用未使用端口:
- 将未使用的端口设置为Access模式并分配到隔离VLAN
- 避免自动协商为Trunk模式
-
Hybrid端口精细化控制:
- 仅允许多VLAN终端必需的VLAN
- 明确区分tagged和untagged流量
3. 故障排查要点
-
连通性问题:
- 检查Trunk两端Native VLAN是否一致
- 验证allow-pass/tagged/untagged列表配置
-
性能问题:
- 检查是否误将Access端口配置为Trunk/Hybrid
- 验证PVID与预期VLAN是否匹配
-
安全事件:
- 检查未授权的VLAN间通信
- 验证Native VLAN配置是否符合安全策略
五、深入VLAN数据流
1. 数据流全生命周期
-
帧进入交换机:
- Untagged帧 → 根据接收端口PVID打标签
- Tagged帧 → 验证VLAN是否允许进入(Access端口丢弃所有Tagged帧)
-
内部转发决策:
- 根据目的MAC地址和VLAN信息查询MAC表
- 确定出口端口集合
-
帧离开交换机:
- Access端口 → 总是去标签
- Trunk端口 → Native VLAN去标签,其他VLAN保留标签
- Hybrid端口 → 按untagged/tagged列表决定
2. 多交换机环境数据流
PC1 (Untagged) → SW1(Access,PVID=10) → [VLAN10 Tagged]
→ SW2(Trunk,PVID=10) → [VLAN10 Untagged]
→ SW3(Hybrid,untagged vlan 10) → PC2 (Untagged)
排错口诀:入向看PVID,出向看端口类型,中间看VLAN许可。链路两端Native VLAN必须一致,否则流量可能泄漏或阻断。
六、总结
-
概念本质:
- PVID是所有端口的入向标记机制
- Native VLAN是Trunk端口的出向无标签机制
- 在Trunk端口上,两者值相等,通过同一命令配置
-
端口选择原则:
- 终端设备 → Access端口
- 交换机互联 → Trunk端口
- 特殊多VLAN终端 → Hybrid端口
-
关键安全实践:
- 避免使用默认VLAN 1
- Trunk两端Native VLAN必须一致
- 精细化控制VLAN许可列表
-
故障排查方法论:
- 从帧的生命周期思考:入向→转发→出向
- 验证链路两端配置对称性
- 使用display vlan、display interface等命令验证运行状态
掌握这些核心概念与实践,能够准确设计、配置和排障VLAN网络,实现精确的网络分段、流量隔离与安全控制。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)