一、应用场景

随着企业规模扩大,一个办公区可能有多台交换机。例如,一楼有一台接入交换机 SW1,二楼有一台接入交换机 SW2,两台的交换机通过一条上联链路互联。财务部在一楼和二楼都有员工,技术部也是如此。如果按照实验四的做法,每台交换机上单独创建 VLAN,那么一楼的财务部无法与二楼的财务部通信,因为中间那条上联链路没有承载 VLAN 信息。

要解决这个问题,需要把交换机之间的互联链路配置为 Trunk 端口。Trunk 端口可以同时承载多个 VLAN 的数据,通过给数据帧打上 VLAN 标签(Tag),让对端交换机知道这个帧属于哪个 VLAN,从而把数据转发到对应的 VLAN 中。这样,不同交换机上的同一 VLAN 就能像在同一台交换机上一样互通。

本实验模拟该企业两层楼的组网场景,在两台交换机上创建相同的 VLAN,通过 Trunk 链路实现跨交换机的同 VLAN 通信,并验证不同 VLAN 之间仍然保持隔离。

二、配置目标

  1. 理解 Trunk 端口的作用,掌握 Trunk 端口的配置方法。
  2. 理解 PVID(端口默认 VLAN)的概念及其在 Trunk 端口上的作用。
  3. 掌握 VLAN 放行列表的配置方法,理解“允许通过的 VLAN”这一概念。
  4. 完成两台交换机的 VLAN 创建和 Access 端口配置。
  5. 完成两台交换机之间 Trunk 链路的配置。
  6. 验证跨交换机的同 VLAN 互通,以及不同 VLAN 之间的隔离。
  7. 掌握查看 Trunk 端口配置和 VLAN 放行情况的方法。
  8. 通过扩展任务理解链路聚合的基本配置,掌握在聚合链路上承载 Trunk 的方法。

三、重要概念说明

3.1 Trunk 端口

Trunk 端口是交换机之间或交换机与路由器之间常见的端口类型,用于承载多个 VLAN 的数据。与 Access 端口不同,Trunk 端口不属于某一个 VLAN,而是可以同时传输多个 VLAN 的流量。

当 Trunk 端口发送数据帧时,如果该帧所属的 VLAN 不在 PVID 范围内,交换机会给数据帧打上 VLAN 标签再发送;如果该帧所属 VLAN 等于 PVID,则可能剥离标签后发送。当 Trunk 端口收到数据帧时,如果帧带有 VLAN 标签,交换机会根据标签判断所属 VLAN;如果帧不带标签,则将其归入 PVID 对应的 VLAN。

3.2 PVID

PVID 的全称是 Port VLAN ID,即端口的默认 VLAN。对于 Trunk 端口,PVID 用于处理不带标签的以太网帧。华为交换机 Trunk 端口的默认 PVID 为 1。

本实验中,为了保证跨交换机通信正常,通常建议将 Trunk 端口的 PVID 保持默认值 1,并在放行列表中明确允许业务 VLAN 通过。

3.3 VLAN 放行列表

Trunk 端口可以配置允许通过的 VLAN 列表。只有列表中的 VLAN 数据才能从该 Trunk 端口转发出去,未列出的 VLAN 数据会被丢弃。这样可以控制 Trunk 链路上承载的 VLAN 范围,避免不必要的广播流量。

配置命令:

[SW1] interface GigabitEthernet 0/0/24
[SW1-GigabitEthernet0/0/24] port link-type trunk
[SW1-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20

上述命令表示允许 VLAN 10 和 VLAN 20 通过该 Trunk 端口。

四、实验拓扑

本实验采用两台交换机互联,每台交换机各连接两台 PC,分别属于 VLAN 10 和 VLAN 20。两台交换机之间通过 GE0/0/24 互联,配置为 Trunk。

接口与 IP 地址规划表:

设备接口IP 地址子网掩码VLAN对端设备
PC1以太网192.168.10.2255.255.255.010SW1 GE0/0/1
PC2以太网192.168.20.2255.255.255.020SW1 GE0/0/2
PC3以太网192.168.10.3255.255.255.010SW2 GE0/0/1
PC4以太网192.168.20.3255.255.255.020SW2 GE0/0/2
SW1GE0/0/1——10PC1
SW1GE0/0/2——20PC2
SW1GE0/0/24——TrunkSW2 GE0/0/24
SW2GE0/0/1——10PC3
SW2GE0/0/2——20PC4
SW2GE0/0/24——TrunkSW1 GE0/0/24

注意:本实验不涉及跨 VLAN 通信,因此 PC 的默认网关暂时不需要配置。

五、实验步骤

5.1 配置 PC 的 IP 地址

双击各台 PC,进入“基础配置”选项卡,按下表配置:

PCIP 地址子网掩码
PC1192.168.10.2255.255.255.0
PC2192.168.20.2255.255.255.0
PC3192.168.10.3255.255.255.0
PC4192.168.20.3255.255.255.0

配置完成后,分别在每台 PC 上使用 ipconfig 确认。

5.2 配置 SW1 的 VLAN 和 Access 端口

双击 SW1,进入命令行,执行以下配置:

<Huawei> system-view
[Huawei] sysname SW1
[SW1] vlan batch 10 20
[SW1] interface GigabitEthernet 0/0/1
[SW1-GigabitEthernet0/0/1] port link-type access
[SW1-GigabitEthernet0/0/1] port default vlan 10
[SW1-GigabitEthernet0/0/1] quit
[SW1] interface GigabitEthernet 0/0/2
[SW1-GigabitEthernet0/0/2] port link-type access
[SW1-GigabitEthernet0/0/2] port default vlan 20
[SW1-GigabitEthernet0/0/2] quit

配置说明:

命令作用
vlan batch 10 20批量创建 VLAN 10 和 VLAN 20
port link-type access将接口配置为 Access 模式
port default vlan 10将接口的默认 VLAN 设置为 10

5.3 配置 SW2 的 VLAN 和 Access 端口

双击 SW2,执行类似配置:

<Huawei> system-view
[Huawei] sysname SW2
[SW2] vlan batch 10 20
[SW2] interface GigabitEthernet 0/0/1
[SW2-GigabitEthernet0/0/1] port link-type access
[SW2-GigabitEthernet0/0/1] port default vlan 10
[SW2-GigabitEthernet0/0/1] quit
[SW2] interface GigabitEthernet 0/0/2
[SW2-GigabitEthernet0/0/2] port link-type access
[SW2-GigabitEthernet0/0/2] port default vlan 20
[SW2-GigabitEthernet0/0/2] quit

5.4 配置 Trunk 链路

在两台交换机的 GE0/0/24 接口上配置 Trunk,允许 VLAN 10 和 VLAN 20 通过。

SW1 配置:

[SW1] interface GigabitEthernet 0/0/24
[SW1-GigabitEthernet0/0/24] port link-type trunk
[SW1-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20
[SW1-GigabitEthernet0/0/24] quit

SW2 配置:

[SW2] interface GigabitEthernet 0/0/24
[SW2-GigabitEthernet0/0/24] port link-type trunk
[SW2-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20
[SW2-GigabitEthernet0/0/24] quit

配置说明:

命令作用
port link-type trunk将接口配置为 Trunk 模式
port trunk allow-pass vlan 10 20允许 VLAN 10 和 VLAN 20 通过该 Trunk 端口

说明:port trunk allow-pass vlan all 表示允许所有 VLAN 通过,但在实际工程中建议明确列出需要放行的 VLAN,避免不必要的广播流量。

5.5 验证跨交换机同 VLAN 互通

  1. PC1 ping PC3(同属 VLAN 10)
    在 PC1 上执行:
PC1> ping 192.168.10.3

应该能够 ping 通,说明跨交换机的 VLAN 10 通信正常。

  1. PC2 ping PC4(同属 VLAN 20)
    在 PC2 上执行:
PC2> ping 192.168.20.3

也应该能够 ping 通,说明 VLAN 20 的跨交换机通信也正常。

  1. PC1 ping PC4(不同 VLAN)
    在 PC1 上执行:
PC1> ping 192.168.20.3

应该无法 ping 通,说明跨交换机的不同 VLAN 之间仍然保持隔离。

5.6 查看 Trunk 端口配置和 VLAN 信息

在 SW1 上执行:

[SW1] display port vlan

可以看到 GE0/0/24 的链路类型为 Trunk,允许通过的 VLAN 包括 10 和 20。

也可以查看指定接口的详细配置:

[SW1] display interface GigabitEthernet 0/0/24

在输出中可以看到接口的链路类型、PVID、允许通过的 VLAN 等信息。

查看 VLAN 信息:

[SW1] display vlan

可以看到 VLAN 10 和 VLAN 20 中包含的接口,包括 Access 端口和 Trunk 端口。

5.8 保存配置

在 SW1 和 SW2 上分别执行保存命令:

<SW1> save
<SW2> save

按提示输入 y 确认。

六、思考

  1. Trunk 端口和 Access 端口有什么区别?各自适用于什么场景?
  2. 为什么跨交换机的同 VLAN 通信需要配置 Trunk?如果两台交换机之间的链路配置为 Access,会发生什么?
  3. PVID 的作用是什么?Trunk 端口的默认 PVID 是多少?如果修改 PVID,会有什么影响?
  4. port trunk allow-pass vlan 10 20 和 port trunk allow-pass vlan all 有什么区别?生产环境中推荐哪种?
  5. 如果 SW1 的 Trunk 端口允许 VLAN 10 和 20 通过,但 SW2 的 Trunk 端口只允许 VLAN 10 通过,VLAN 20 的跨交换机通信会怎样?
  6. 在扩展任务中,Eth-Trunk 提供了什么好处?如果两条成员链路都断开,通信会怎样?
  7. 在 SW1 上执行 display port vlan,观察 Trunk 端口的 PVID 和允许通过的 VLAN。如果某个 VLAN 没有在放行列表中,它的数据帧能从该 Trunk 端口转发出去吗?

本实验是 VLAN 部分的核心实验,重点在于理解 Trunk 端口“承载多个 VLAN”和“VLAN 放行列表控制流量范围”这两个关键点。建议在完成基本验证后,尝试修改 Trunk 端口的放行列表,观察哪些 VLAN 的通信会中断,进一步加深对 Trunk 工作原理的理解。扩展任务中的链路聚合,也为后续交换进阶篇的链路聚合实验做了铺垫。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐