4. VLAN与二层转发基础
在园区网络中,二层转发是所有终端通信的起点。当一台PC发出以太网帧时,交换机并不会“广播给所有人”,而是依据MAC地址表做出精确的端口决策。VLAN则在此基础上把一台物理交换机切分成多个逻辑广播域,让不同部门的流量彼此隔离。理解VLAN划分、端口类型、MAC地址表以及GVRP/MVRP这些机制,是后续配置三层网关、堆叠和链路聚合的前提。
一、VLAN的本质与划分方式
VLAN(Virtual LAN)的核心价值在于:把一个物理交换网络划分为多个逻辑广播域,同一VLAN内的主机可以二层互通,不同VLAN之间默认隔离。IEEE 802.1Q标准定义了VLAN标签格式,在以太网帧的源MAC之后插入4字节Tag,其中12位VID字段可表示1~4094个可用VLAN(0和4095保留)。
VLAN的划分方式主要有四种:
- 基于端口划分:把交换机的某个端口固定划入某个VLAN,配置最简单,是园区接入层最常用的方式。
- 基于MAC地址划分:按终端MAC决定所属VLAN,终端换端口后VLAN不变,但维护量大。
- 基于协议划分:按上层协议类型(如IP、IPX)划分,现代网络已很少使用。
- 基于子网/IP划分:按终端IP子网归属VLAN,需要交换机识别三层信息,通常配合DHCP Snooping或动态VLAN使用。
在H3C Comware设备上,创建VLAN并进入VLAN视图的基本命令如下:
[SW1] vlan 10
[SW1-vlan10] name Office
[SW1-vlan10] quit
[SW1] vlan 20
[SW1-vlan20] name Guest
[SW1-vlan20] quit
[SW1] display vlan brief
执行 display vlan brief 后,可以看到VLAN ID、名称以及哪些端口以Untagged/Tagged方式加入该VLAN,这是排查VLAN是否生效的第一条命令。
二、Access、Trunk、Hybrid三种端口
端口类型决定了帧在进出交换机时是否携带Tag,是VLAN配置中最容易出错的部分。三种端口的行为差异可以用下面的信号链图来理解:
配置示例:把G1/0/1配为Access并划入VLAN 10,G1/0/24配为Trunk并允许VLAN 10、20通过:
[SW1] interface GigabitEthernet 1/0/1
[SW1-GigabitEthernet1/0/1] port link-type access
[SW1-GigabitEthernet1/0/1] port access vlan 10
[SW1-GigabitEthernet1/0/1] quit
[SW1] interface GigabitEthernet 1/0/24
[SW1-GigabitEthernet1/0/24] port link-type trunk
[SW1-GigabitEthernet1/0/24] port trunk permit vlan 10 20
[SW1-GigabitEthernet1/0/24] port trunk pvid vlan 1
Hybrid端口则通过 port hybrid vlan 10 untagged 或 tagged 精确控制每个VLAN的发送行为,常用于连接IP电话:语音VLAN带Tag、数据VLAN不带Tag。
display interface GigabitEthernet 1/0/1 查看 PVID、端口类型和允许VLAN列表,再结合 display vlan 10 确认成员端口。三、MAC地址表管理
交换机通过源MAC学习建立MAC地址表,表项包含MAC地址、VLAN ID、出端口和老化时间(Comware默认300秒)。转发时若目的MAC在表中且VLAN匹配,则单播转发;若未命中,则在VLAN内泛洪。
常用查看与维护命令:
[SW1] display mac-address
[SW1] display mac-address vlan 10
[SW1] display mac-address interface GigabitEthernet 1/0/1
[SW1] mac-address static 0011-2233-4455 vlan 10 interface GigabitEthernet 1/0/1
[SW1] mac-address aging-time 600
静态MAC用于服务器、网关等固定设备,避免老化导致短暂泛洪;动态MAC则随终端上下线自动学习。当出现MAC漂移(同一MAC在两个端口间反复切换)时,通常意味着存在二层环路或非法接入,可结合 display mac-address mac-move 定位。
四、GVRP与MVRP简介
当交换机数量较多时,逐台手工创建VLAN并配置Trunk允许列表容易遗漏。GVRP(GARP VLAN Registration Protocol)和MVRP(Multiple VLAN Registration Protocol,基于MRP)用于在二层网络中自动传播和注册VLAN信息。
- GVRP:基于GARP,H3C传统设备支持,配置
gvrp全局使能后在Trunk端口上运行,可自动学习对端VLAN并动态加入端口。 - MVRP:基于802.1ak MRP,收敛更快、支持VLAN批量注册,是GVRP的演进版本,配置
mrp与mvrp相关命令。
两者都要求端口为Trunk且允许相应VLAN,且需注意:动态注册的VLAN在设备重启后可能丢失,关键VLAN仍建议手工静态创建。GVRP/MVRP适合VLAN数量多、拓扑稳定的汇聚—接入场景,不适合频繁变动的边缘网络。
五、二层转发整体判断路径
把上述内容串起来,一台交换机收到帧后的处理逻辑是:先根据入端口类型决定是否打Tag并确定VLAN,再查MAC地址表决定单播或泛洪,最后根据出端口类型决定是否剥离Tag。任何一步配置错误,都会表现为“同VLAN不通”或“跨VLAN意外互通”。排查时按“端口类型→PVID→允许VLAN→MAC表→STP状态”的顺序逐层确认,通常能快速定位问题。
| 检查项 | 命令 | 正常预期 |
|---|---|---|
| 端口类型与PVID | display interface GigabitEthernet 1/0/1 | Access/Trunk/Hybrid与规划一致 |
| VLAN成员 | display vlan 10 | 包含预期端口 |
| MAC学习 | display mac-address vlan 10 | 终端MAC出现在正确端口 |
| STP状态 | display stp brief | 转发端口为Forwarding |
掌握这些基础后,后续配置VLAN间路由、DHCP中继和堆叠时,二层转发路径就已经清晰可控。