3. vlan

43 阅读4分钟

1. 基本理论

1.1 VLAN 的核心概念(为什么要有 VLAN)

  • VLAN(Virtual LAN) :把一个或多个物理交换机上的端口划分到同一个逻辑二层广播域中。
  • 目的:隔离广播域、增强安全、简化管理、实现多租户与策略划分(按部门/应用/安全域划分)。
  • 本质:VLAN 把二层网络“逻辑化”——不同 VLAN 之间的主机在二层上互相不可见(默认不能直接通信,需三层路由)。

1.2 VLAN ID 与范围

  • VLAN ID 范围通常是 1–4094(802.1Q),0 与 4095 保留。
  • VLAN 1:厂商常作为默认 VLAN(建议不要把管理/重要业务放在 VLAN 1)。
  • 可以有管理 VLAN(Management VLAN)、数据 VLAN、语音 VLAN(Voice VLAN)等语义上的划分。

1.3 802.1Q 帧与 Tag(什么是标记)

  • 当帧在 trunk 上传输多个 VLAN 时,要**打标签(tag)**以区分 VLAN。802.1Q 标签占 4 字节:包含 PCP(3位优先级)、DEI(1位)和 VLAN ID(12位)。
  • 物理/Access 口收到未打标签帧时:交换机把该帧视作端口的 PVID(Port VLAN ID) 所在 VLAN 的 untagged 帧。
  • Native VLAN / PVID:某些实施会把未打标签的帧映射到 native VLAN(安全注意见后述)。

1.4 端口类型(理解 L2 交换行为)

  • Access(接入)端口:属于单一 VLAN;接收未打标签帧 → 赋予该 VLAN 的 PVID;发送到主机时去掉 tag(untagged)。
  • Trunk(干道)端口:传递多个 VLAN 的流量;发送帧通常会给除 native 外的 VLAN 打标签;管理允许哪些 VLAN(allow list)。
  • Hybrid / QinQ 等模式:厂商会有混合口、或用于服务商的 802.1ad(QinQ)入口,能在原 tag 外再套一层 tag(客户 VLAN -> 服务 VLAN)。

1.5 三层 SVI(Vlan-interface)与 Inter-VLAN Routing

  • SVI(Vlan-interface) :在三层交换机上为某个 VLAN 配置的虚拟接口(即该 VLAN 的网关)。例如 interface Vlan-interface 10
  • SVI Up 的条件:该 VLAN 在本交换机上必须“有生口”(至少存在一个处于 Up 且转发状态的二层端口,或 trunk 上该 VLAN 被允许并有对端在发流量)。如果没有生口,SVI 会是 down(你之前遇到的问题)。
  • VLAN 间通信:在 L3 交换上,跨 VLAN 的数据包会发到对应 SVI,由交换机做三层转发;也可用路由器(router-on-a-stick)通过子接口做 inter-VLAN routing。
  • Router-on-a-stick:把一条物理链路分成多个子接口(Gi0/0.10 dot1q 10 等),路由器对每个子接口做 IP。适用于较小网络或没有 L3 交换的场景。

1.6 MAC 学习与二层转发

  • 交换机根据收到帧的源 MAC 学习(MAC → 端口),建立 FDB(MAC table)。
  • 收到目的 MAC:
    • 若已学习到端口 → 单播转发到该端口;
    • 若未知 → Flood(泛洪)到该 VLAN 内的其他端口(包括 Trunk)。
  • ARP 是 IP → MAC 解析的机制(同 VLAN 主机通信需先 ARP)。

1.7 Trunk 的细节与常见问题

  • 允许 VLAN(Allowed VLAN) :Trunk 一般会限制允许通过的 VLAN(port trunk permit vlan ...),不在列表的 VLAN 无法跨越该链路。
  • Native VLAN / PVID 不一致 会引起 VLAN 漏洞或流量落入错误 VLAN。
  • Trunk mismatch(一端 trunk,另一端 access)会导致 VLAN 无法跨交换机。
  • MTU/Tag 附加:802.1Q 增加 4 字节;如果使用巨帧或隧道,注意 MTU。

参考资料

info.support.huawei.com/info-finder…

2. 实验

2.1 拓扑图

image.png

2.2 二层vlan

A SW1

#
interface GigabitEthernet1/0/2
 port link-mode bridge
 port access vlan 10
 combo enable fiber
#
interface GigabitEthernet1/0/3
 port link-mode bridge
 port access vlan 10
 combo enable fiber
# 

B SW4

#
interface GigabitEthernet1/0/2
 port link-mode bridge
 port access vlan 20
 combo enable fiber
#
interface GigabitEthernet1/0/3
 port link-mode bridge
 port access vlan 20
 combo enable fiber
#

C 结果

同vlan之间可以ping通,不同之间vlan ping不通

2.3 三层vlan

A SW1

#
interface GigabitEthernet1/0/1
 port link-mode bridge
 port link-type trunk
 port trunk permit vlan all
 combo enable fiber
#

B SW4

#
interface GigabitEthernet1/0/1
 port link-mode bridge
 port link-type trunk
 port trunk permit vlan all
 combo enable fiber
#

C SW7

#
interface GigabitEthernet1/0/1
 port link-mode bridge
 port link-type trunk
 port trunk permit vlan all
 combo enable fiber
#              
interface GigabitEthernet1/0/2
 port link-mode bridge
 port link-type trunk
 port trunk permit vlan all
 combo enable fiber
# 

#
interface Vlan-interface10
 ip address 192.168.10.254 255.255.255.0
#
interface Vlan-interface20
 ip address 192.168.20.254 255.255.255.0
#
return

D 结果

不同vlan之间可以ping通

sw7的路由表

sw7的mac表