【计算机网络】思科实验:跨交换机VLAN通信的Trunk链路配置与验证
2026/7/16 22:00:03 网站建设 项目流程

1. 跨交换机VLAN通信的核心原理

想象一下你在一栋写字楼里工作,不同部门分布在不同的楼层。财务部在10楼,市场部在20楼,两个部门需要保持内部沟通但又不能互相干扰。这就是VLAN技术的现实映射——它像虚拟的楼层一样,在物理网络中划分出逻辑隔离的空间。

Trunk链路则是连接不同楼层(交换机)的电梯通道。普通Access端口就像办公室门牌号(比如1001代表10楼1号房间),而Trunk端口则是可以识别所有楼层标签的智能电梯。当财务部的数据包要从10楼到达另一栋楼的10楼时,Trunk链路会给数据包贴上"10楼专属"的标签(VLAN ID),确保它不会被送到20楼。

802.1Q封装协议是这个过程中的关键。它就像快递面单,在原始数据帧的源MAC地址后插入4字节的标签,其中包含:

  • 12位VLAN ID(可表示4094个VLAN)
  • 3位优先级(用于QoS服务质量)
  • 1位标准标识(0表示802.1Q)
Switch(config-if)# switchport trunk encapsulation dot1q // 指定封装协议

2. 实验环境搭建要点

在Packet Tracer中搭建环境时,我习惯先画拓扑图再拖设备。对于这个实验,你需要:

  1. 两台2960交换机(Switch0和Switch1)
  2. 四台PC机(PC1-PC4)
  3. 使用直通线(铜缆图标)连接:
    • PC1 → Switch0 Fa0/2
    • PC2 → Switch0 Fa0/3
    • PC3 → Switch1 Fa0/2
    • PC4 → Switch1 Fa0/3
  4. 用交叉线(闪电图标)连接Switch0 Fa0/1 ↔ Switch1 Fa0/1

IP规划表应该这样设计:

设备VLANIP地址子网掩码
PC110192.168.10.1255.255.255.0
PC220192.168.20.1255.255.255.0
PC320192.168.20.2255.255.255.0
PC410192.168.10.2255.255.255.0

注意:Packet Tracer 6.0之后版本会自动识别线缆类型,但手动选择更稳妥。我曾经因为错选成串行线,排查了半小时连通性问题。

3. 详细配置步骤解析

3.1 创建VLAN并命名

先在两台交换机上执行相同操作:

Switch> enable Switch# configure terminal Switch(config)# vlan 10 Switch(config-vlan)# name Finance // 建议用部门名而非编号 Switch(config-vlan)# exit Switch(config)# vlan 20 Switch(config-vlan)# name Marketing Switch(config-vlan)# exit

易错点:有些同学会漏掉exit命令,导致后续配置在vlan子模式下执行。我建议每完成一个配置块就执行end返回特权模式。

3.2 端口分配技巧

Access端口配置有两种方式:

  • 逐端口配置(适合精确控制):

    Switch0(config)# interface fa0/2 Switch0(config-if)# switchport mode access Switch0(config-if)# switchport access vlan 10
  • 批量配置(效率更高):

    Switch0(config)# interface range fa0/2 - 3 Switch0(config-if-range)# switchport mode access Switch0(config-if-range)# switchport access vlan 10 Switch0(config-if-range)# exit Switch0(config)# interface fa0/3 Switch0(config-if)# switchport access vlan 20 // 单独修改fa0/3

3.3 Trunk配置的三种模式

在交换机互联端口上:

Switch0(config)# interface fa0/1 Switch0(config-if)# switchport mode trunk // 强制Trunk模式

实际上Trunk有三种协商模式:

  1. on(强制):switchport mode trunk
  2. desirable(主动协商):switchport mode dynamic desirable
  3. auto(被动响应):switchport mode dynamic auto

实验环境中建议用强制模式。有次我用auto模式,两台交换机死活不协商,后来发现是模拟器的bug。

4. 验证与排错指南

4.1 关键验证命令

Switch# show vlan brief // 查看VLAN划分 Switch# show interfaces trunk // 检查Trunk状态 Switch# show interfaces fa0/1 switchport // 查看端口详细模式

理想输出示例

Port Mode Encapsulation Status Native vlan Fa0/1 trunk 802.1q trunking 1

4.2 常见故障排查

现象1:PC1 ping不通PC4

  • 检查项:
    1. 两台PC是否在同一VLAN
    2. Trunk两端端口是否都是trunk模式
    3. IP地址是否在同一子网

现象2:show interfaces trunk显示空

  • 解决方案:
    Switch(config-if)# switchport trunk allowed vlan all // 允许所有VLAN通过 Switch(config-if)# no shutdown

实测技巧:在Packet Tracer中,右键交换机选择"CLI"比从物理界面点console更快。用tab键可以自动补全命令,比如输入sh int后按tab会自动补全为show interfaces

5. 企业级应用实例

某次我帮学校图书馆改造网络,需要实现:

  • 电子阅览室(VLAN 30)在三层交换机A
  • 图书管理系统(VLAN 40)在二层交换机B
  • 门禁系统(VLAN 50)在二层交换机C

核心配置

// 核心交换机配置 interface GigabitEthernet1/0/1 switchport trunk encapsulation dot1q switchport mode trunk switchport trunk allowed vlan 30,40,50 spanning-tree portfast trunk // 接入交换机配置 interface GigabitEthernet0/1 switchport mode trunk switchport trunk native vlan 999 // 设置非1的本征VLAN

这个案例让我深刻理解:Trunk链路就像网络高速公路,而VLAN标签就是不同车道的导流标识。合理规划VLAN ID就像设计车道编号,要预留扩展空间(比如跳着编号,留出空档)。

6. 安全增强建议

在企业环境中,我通常会追加这些配置:

// 关闭未使用端口 interface range fa0/4-24 shutdown // 设置Trunk端口安全 interface fa0/1 switchport nonegotiate // 禁止自动协商 switchport trunk allowed vlan 10,20 // 白名单 storm-control broadcast level 50 // 抑制广播风暴

曾经有次网络攻击就是通过伪造大量带VLAN标签的数据包进行的。配置switchport trunk allowed vlan后,非法VLAN的数据会被自动丢弃。

7. 扩展实验建议

掌握基础配置后,可以尝试:

  1. Native VLAN修改实验

    interface fa0/1 switchport trunk native vlan 100 // 修改本征VLAN

    记得两端要一致,否则会出现VLAN跳跃攻击风险。

  2. VLAN修剪实验

    vtp pruning // 自动修剪不必要的VLAN流量
  3. QoS标记实验

    mls qos trust cos // 基于802.1Q优先级字段进行流量分类

这些实验能帮你理解Trunk链路在真实网络中的完整应用场景。我建议每完成一个实验就用write命令保存配置,Packet Tracer重启后配置会丢失这个坑我踩过好几次。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询