拓十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

跨交换机VLAN实验全攻略:Access、Trunk与802.1Q配置与验证

跨交换机VLAN实验全攻略:Access、Trunk与802.1Q配置与验证

简介:针对天津理工大学计算机网络课程实验三的这份实验报告,适合计算机相关专业本科生巩固路由器工作原理与配置方法。内容覆盖网络地址规划、路由器接线与登录方式,并依次记录静态路由、默认路由、RIP 与 OSPF 动态路由的配置验证过程;实验步骤包含设备端口 IP 设置、路由条目查看、连通性验证等关键操作,图文配合较为完整。压缩包内为 1 个 doc 文档,大小仅 598KB,排版简洁,便于打印填写或作为报告框架参考。资源已有 370 人学习,对正在完成同类路由实验、需要了解配置思路与结果验证方式的同学,具有较强的参考价值,适合作为课程实验的配套复习材料。

1. 计算机网络实验三为什么总卡在 VLAN:两台交换机就能把原理跑通

计算机网络课的实验三,往往是第一个让你必须打开模拟器而不是只看 PPT 的时间点。以天津理工大学计算机网络实验三为例,任务基本落在 VLAN 跨交换机配置上:两台交换机、四台 PC,要做出同 VLAN 能互访、不同 VLAN 被隔离的效果。做明白这个实验,链路层的 Access、Trunk、802.1Q 标签才算真正落地;做不明白,期末复习的 VLAN 部分也容易靠背题硬撑。下面按一个助教带实验的习惯讲:先定拓扑,再给命令,最后用三种方法验证结果,并把最容易翻车的五个细节单独列出来。正在做实验三的同学,可以直接照做。

2. 实验三的拓扑与转发原理:Access、Trunk 和 IP 规划怎么一次定对

实验三的拓扑图,在任务书里通常只画了一个大框架:两台交换机用一条线连起来,四台 PC 挂在两边。剩下的全是你的选择:PC 接哪个口、交换机之间用哪个口、VLAN ID 分配成多少。下面这套方案是我带实验时最常用的,也正好覆盖考试里的三个考点:VLAN 划分、Trunk 协商、子网与 VLAN 的映射关系。

2.1 最常见的拓扑:两台 2960 加四台 PC,端口怎么分

我的习惯是让两台 PC 分别接在一台交换机的 Fa0/1 和 Fa0/2 上,两台交换机之间用各自的 GigabitEthernet 0/1 互联。PC1 和 PC3 属于 VLAN 10,PC2 和 PC4 属于 VLAN 20,这样 VLAN 10 的两台 PC 分布在两台交换机上,必须靠 Trunk 链路才能通信,实验三的“跨交换机”考核点就落到了实处。

设备端口模式所属 VLAN连接对象
SW1Fa0/1AccessVLAN 10PC1
SW1Fa0/2AccessVLAN 20PC2
SW1Gi0/1Trunk放行全部 VLANSW2 Gi0/1
SW2Fa0/1AccessVLAN 10PC3
SW2Fa0/2AccessVLAN 20PC4
SW2Gi0/1Trunk放行全部 VLANSW1 Gi0/1

为什么要选四台 PC 而不是两台?两台 PC 只能验证单交换机里的 VLAN 隔离,验证不了跨交换机场景。四台是这个模型的最小完备配置,同 VLAN 跨交换机通信、不同 VLAN 隔离,两种预期结果一次实验都能覆盖。如果任务书改成单交换机 VLAN 隔离,你只需要去掉 Trunk 那一半配置,其余思路完全一致。

端口编号这块有个常见错觉:2960 有 FastEthernet0/0 吗?没有。2960 的接口从 Fa0/1 开始,往上到 Fa0/24,另有两个千兆口 Gi0/1、Gi0/2。输入命令前先在 Packet Tracer 里点一下设备,看清端口名称再动手,能省掉大量“接口不存在”的报错。

2.2 Access 与 Trunk 的分工:跨交换机为什么必须打标签

Access 端口是接入型端口,整条链路只属于一个 VLAN。PC 发出来的以太网帧不带标签,交换机收到后默认把它当作该 Access 端口所属 VLAN 的帧处理。Trunk 端口是干道型端口,一条链路上可以同时承载多个 VLAN 的流量,靠 802.1Q 在帧头里插入四个字节的 Tag 字段来区分这个帧属于哪个 VLAN。

为什么实验三里两台交换机之间必须用 Trunk?道理很直接:如果交换机之间也用 Access,这条链路只能属于某一个 VLAN,另一台交换机上的第二个 VLAN 根本过不来,整个拓扑被切成两半。你可能会想“那我给交换机之间拉两条 Access 线,一条给 VLAN 10、一条给 VLAN 20”,能通,但这不是实验要求的标准做法,而且端口利用率太低。Trunk 一根线解决所有 VLAN 的跨交换机转发,这也是真实园区网里的通用做法。

还要补一个必考概念:native vlan。Trunk 链路上默认 VLAN 1 的帧不打标签,这个不打标签的 VLAN 就叫本征 VLAN。两端交换机的 native vlan 如果不一致,真机上会出现 VLAN 串扰,表现为明明隔离的两个 VLAN 突然能互通了。模拟器里这个坑不容易暴露,但期末复习和面试八股里非常爱考。实验三阶段,保持两端 native vlan 都是默认的 1 即可,不要手动去改。

厂商差异顺带提一句:思科交换机里是 Access 和 Trunk 两种模式;华为 eNSP 里对应的是 access、trunk、hybrid 三种,默认端口类型是 hybrid。如果你拿到的实验环境是 eNSP,别被 hybrid 默认值吓到,实验三按 access 和 trunk 配就行,原理是同一套。

2.3 VLAN 与 IP 子网怎么对应:一张表定死报告里的地址规划

VLAN 划分定下来之后,下一步是给四台 PC 写 IP。我见过太多实验报告死在这一步:拓扑图里写的 IP 和配置截图里的 IP 对不上,助教一眼就能看出来是后补的。最简单可靠的做法是先做一张地址规划表,再照着表去配置。

PCIP 地址子网掩码所属 VLAN默认网关
PC1192.168.10.1255.255.255.0VLAN 10不填
PC2192.168.20.1255.255.255.0VLAN 20不填
PC3192.168.10.2255.255.255.0VLAN 10不填
PC4192.168.20.2255.255.255.0VLAN 20不填

VLAN 10 对应 192.168.10.0/24,VLAN 20 对应 192.168.20.0/24,这是实验三最省事的子网规划。原则是先定 VLAN,再定网段,最后写进报告;反过来从 IP 反推 VLAN 最容易出错。在 Packet Tracer 里,PC 的 IP 配置在 Desktop 选项卡的 IP Configuration 里,填完 IP 和掩码即可。

这里要特别说明:实验三是二层实验,PC 上不要填默认网关。所有通信都发生在同一个广播域内,填了网关也不会让 ping 变通,反而会被助教追问“网关指向哪台设备”。如果任务书里要求 VLAN 间通信,那是三层实验的内容,要在交换机上配置 VLANIF 接口,实验三一般不做。谢希仁《计算机网络》第八版里 VLAN 相关章节属于数据链路层,网上像湖科大教书匠这类视频会把原理讲得很细,但实验课要求的是你把帧格式落到 show 命令和抓包结果里,这才是报告里最能拉开差距的地方。

3. 在 Packet Tracer 里把实验三配置跑通:从清空配置到保存 VLAN

拓扑定下来之后,打开 Packet Tracer,先别急着敲命令。把设备摆好、线连对、端口编号确认无误,这半小时决定后面配置是否顺利。我见过太多同学直接进 CLI,配到一半发现线缆插错口,最后全部推翻重来。

3.1 先用 Console 线把交换机初始化干净:vlan.dat 和 startup-config

从设备栏拖两台 2960、四台 PC 到工作区。连线时注意线缆类型:PC 到交换机用直通线 Copper Straight-Through,交换机之间也选直通线,2960 的端口支持自动协商;如果你用的是老版本模拟器,交换机之间换成交叉线更保险。Console 线单独接一条,用于命令行管理,别把它当成数据线。

交换机第一次启动时,大概率带着之前实验留下的旧配置。不清干净就往下配,show vlan brief 里会出现一堆你没建过的 VLAN,配置错位得排查半天。初始化命令如下:

enable delete vlan.dat erase startup-config reload configure terminal hostname SW1 no ip domain-lookup line console 0 exec-timeout 0 0 logging synchronous exit

这段命令的逻辑是:先进入特权模式,删除 VLAN 信息库 vlan.dat,再删除启动配置文件 startup-config,最后 reload 让交换机回到出厂状态。reload 时系统会问是否保存当前配置,选 No。之后进入全局配置模式,把主机名改成 SW1,关闭域名解析,再把 console 口超时设为永不过期。

几个参数说明:delete vlan.dat 是实验三的第一个坑。如果 flash 里本身没有 vlan.dat 文件,系统会提示不存在,这不影响后续操作。no ip domain-lookup 防止你在特权模式下敲错命令时,设备误以为是域名去尝试解析,那会卡住几十秒;exec-timeout 0 0 表示 console 永不超时,做实验时不用频繁重新登录。SW2 上把 hostname 改成 SW2,其他初始化命令照做一遍。做完后 show running-config 确认配置干净,再往下走。

3.2 创建 VLAN 10 和 20:给端口打 Access 标签

初始化完成后,开始创建 VLAN 并把 PC 所在的端口划进去。SW1 和 SW2 的操作相同,以 SW1 为例:

vlan 10 name Student vlan 20 name Teacher interface fastEthernet 0/1 switchport mode access switchport access vlan 10 interface fastEthernet 0/2 switchport mode access switchport access vlan 20 end

vlan 10 进入 VLAN 配置模式,name Student 只是给 VLAN 起个名字,不影响转发行为,但写报告和后期维护时能减少阅读成本。interface fastEthernet 0/1 进入物理接口,switchport mode access 先把端口切成二层 access 模式,再执行 switchport access vlan 10 把这个端口划进 VLAN 10。顺序不能反,如果先配 access vlan,部分 IOS 版本会提示先设置端口模式。

端口划分的原则是:PC1 和 PC3 都属 VLAN 10,不管它们物理上接在哪台交换机;PC2 和 PC4 都属 VLAN 20。分组按业务逻辑规划,不按交换机位置规划,这是 VLAN 设计的基本思想。SW2 上执行同样的命令,只是 Fa0/1 同样划给 VLAN 10,Fa0/2 划给 VLAN 20。

连完线之后看一眼端口指示灯:绿色说明协商成功;一直琥珀色,多半是线缆类型选错了。PC 端的 IP 配置按 2.3 节的表格逐台填写,这一步在 Packet Tracer 的图形界面里完成,不需要命令行。

3.3 交换机之间起 Trunk:连错端口是第一个翻车点

Access 配完后,最关键的是交换机之间的 Trunk 链路。在 SW1 和 SW2 上分别执行:

interface gigabitEthernet 0/1 switchport mode trunk end write memory

这段命令把 g0/1 从默认模式切成 trunk 模式。Trunk 口默认放行所有 VLAN,不需要手动指定 VLAN 列表,除非你想限制某些 VLAN 通过。write memory 等价于 copy running-config startup-config,作用是把内存里的运行配置写进 NVRAM,确保重启后配置还在。实验报告里要求写保存命令,这一步别漏。

我把连错端口列为第一个翻车点是基于实际观察:很多同学配置命令一行没错,但 SW1 的 g0/1 实际连到了 SW2 的 g0/2,而 g0/2 没配 trunk,跨交换机 VLAN 当然不通。模拟器里布线时容易点错,连完线第一件事是点端口看连接状态,而不是直接敲命令。

两个交换机的 g0/1 都要配 trunk,两端都是 trunk 模式,链路才会进入 trunking 状态。如果一端是 trunk,另一端还是默认的 dynamic auto,协商出来的结果可能是 access,跨交换机 VLAN 立刻失效。配完全部命令后,在特权模式输入 show running-config 快速扫一遍:四台 PC 对应四个 access 口,一条交换机间链路对应两个 trunk 口,数字对不上就先别做连通性测试。如果实验环境是华为 eNSP,对照命令是 port link-type access / port default vlan 10,trunk 口是 port link-type trunk / port trunk allow-pass vlan 10 20,思路与这里完全一致。

4. 验证实验三的三种手段:ping、show 命令与 802.1Q 抓包

配置敲完,别急着截图写报告。实验三的验收标准不是“我配完了”,而是“我能证明它按预期工作”。下面按从快到慢的顺序给三组验证手段:ping 连通性测试、show 配置核对、抓包看 802.1Q 标签。

4.1 ping 测试的预期矩阵:哪些该通,哪些不该通

先做同 VLAN 测试,再做跨 VLAN 测试。很多同学上来先 ping 所有机器,然后发现 PC1 到 PC2 不通,以为是故障,折腾半天才发现这是实验要求本身。建议按下面这张预期矩阵逐项验证:

测试路径预期结果说明
PC1 → PC3通同属 VLAN 10,跨交换机经 Trunk
PC2 → PC4通同属 VLAN 20,跨交换机经 Trunk
PC1 → PC2不通不同 VLAN,二层被隔离
PC1 → PC4不通不同 VLAN,二层被隔离
PC3 → PC4不通不同 VLAN,二层被隔离

“预期不通”和“故障不通”在报告里要分开写,这是实验三评分时助教最关注的一点。如果任务书的验收标准是“同 VLAN 能通信、不同 VLAN 不能通信”,那 PC1 到 PC2 不通恰恰是配置成功的证据,不要当成故障去处理。

Packet Tracer 里 PC 的 ping 命令在命令行窗口里执行,和 Windows cmd 类似:

C:\> ipconfig C:\> ping 192.168.10.2

先执行 ipconfig 核对本机 IP、掩码和规划表是否一致,再 ping。如果同 VLAN ping 不通,不要急着重配交换机,先排除 PC 侧问题。这一步能筛掉大概三分之一的故障,尤其是 IP 网段填错的情况。

4.2 show 命令核对配置:vlan brief 和 interfaces trunk

ping 通只代表结果正确,show 命令能验证配置过程是否正确。在交换机特权模式下执行:

SW1# show vlan brief VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 10 Student active Fa0/1 20 Teacher active Fa0/2 SW1# show interfaces trunk Port Mode Encapsulation Status Native vlan Gig0/1 on 802.1q trunking 1

第一段输出里,VLAN 10 和 VLAN 20 的状态必须是 active,Ports 列要能看到对应的 Access 端口。注意这里只显示本交换机的端口,SW2 上要单独再看一次。第二段输出是 Trunk 核对的核心:Status 列是 trunking,说明链路协商成功;如果 Status 是 down,或者 Mode 变成 negotiate,回到 3.3 检查两端的 trunk 配置是否都敲了。

辅助检查还可以用 show interfaces gigabitEthernet 0/1 switchport,返回结果里有 Administrative Mode: trunk 和 Operational Mode: trunk 两行。前者是配置意图,后者是运行状态,两层都对齐才说明 Trunk 真正生效。这个命令在排查“配置了但没生效”的场景时比 show interfaces trunk 更直接。

4.3 抓包看 802.1Q 标签:证明 VLAN 是隔离的

ping 通只能证明“能通”,要证明“VLAN 生效”,最好的办法是抓到 802.1Q 标签。Packet Tracer 右下角切到 Simulation 模式,在事件列表过滤器里只保留 ICMP,然后从 PC1 ping PC3。点击交换机之间链路上的数据包,在 OSI Model 面板里能看到 Ethernet II 帧头包含了 VLAN ID: 10。这个字段就是 802.1Q 标签的核心内容。

需要注意抓包位置:PC 到交换机的链路上抓不到标签,因为 Access 口把标签剥掉了;标签只出现在交换机之间的 Trunk 段。如果实验是单交换机 VLAN 隔离,整个路径都没有标签,这也是为什么实验三要用两台交换机做跨交换机通信——抓包能看到标签,是天然的好素材。

真实设备上要抓 Trunk 流量,需要做端口镜像,把交换机之间口的流量复制到另一台 PC 的网卡上。命令如下:

monitor session 1 source interface gigabitEthernet 0/1 monitor session 1 destination interface fastEthernet 0/24

含义是把源口 g0/1 的数据复制一份到目的口 Fa0/24,目的口再接电脑开 Wireshark。模拟器里多数用 Simulation 模式就能完成,不需要镜像配置。抓包时观察重点:用户口出现的是 untagged 帧,交换机间链路出现的是 tagged 帧,这就是 VLAN 标签在链路中的完整生命周期。

4.4 再看一眼 MAC 地址表:交换机的转发依据不是 IP

做完 ping 和抓包之后,还有一个容易被忽略的验证点:交换机的 MAC 地址表。执行 show mac address-table,SW1 的表里应该出现来自 Fa0/1 和 Fa0/2 的两个条目,来源是 PC1 和 PC2 的网卡 MAC 地址,VLAN 列分别对应 10 和 20。

这个验证的意义在于把“IP 通”和“链路层转发”对上。交换机转发数据帧时查的是 MAC 地址表,不查 IP 地址;IP 只是在 PC 端用来封装和解封装。计算机网络期末复习里,交换机的转发依据、MAC 表怎么建立是高频考题,实验三里你能亲眼看到表项生成过程,比背八股扎实得多。

写报告时建议截一张 ping 之后的 show mac address-table,配套一句说明:交换机根据目标 MAC 查询出端口,而不是根据 IP 查询。这句话是实验三报告里典型的拿分点,能体现你真正理解了交换原理。

5. 实验三避坑指南:5 个让配置翻车的细节

下面是实验课上重复度最高的五个问题,基本覆盖了“配置正确但测试失败”的大部分场景。每条都按现象、原因、解决三个步骤写,可以直接拿来排错。

5.1 现象:PC 之间 ping 不通,show vlan 又是对的

配置命令反复核对没有错,同 VLAN 的两台 PC 就是不通。最常见的原因是 PC 的 IP 配错了网段,比如 PC1 设成 192.168.10.1,PC3 设成 192.168.10.2,但 PC3 的掩码误填了 255.255.255.252,导致两台机器不在同一个子网里。另一类原因是连 PC 的线缆插错了交换机端口,PC 实际不在规划的 VLAN 里。

解决办法:先在 PC 上执行 ipconfig 核对 IP、掩码,再到交换机执行 show vlan brief 看对应端口到底属于哪个 VLAN。两边都确认无误后再 ping。不要一上来就删 VLAN 重配,那会引入新问题,排查顺序应该从终端往交换机方向走。

5.2 现象:两台交换机的 Trunk 起了,但还是不通

两个交换机的 g0/1 都配了 switchport mode trunk,跨交换机的 VLAN 10 依然不通。原因有两类:一是链路没协商成 trunk,一端是 trunk 另一端是 dynamic auto 时,协商结果可能是 access;二是物理连线插错口,SW1 的 g0/1 连到了 SW2 的 g0/2,而 g0/2 没有配置 trunk。

解决:执行 show interfaces trunk 看哪些端口处于 trunking 状态;再执行 show interfaces status 看物理连接情况。如果 trunk 列表是空的,回到拓扑检查连线端口号。我见过的案例里,线缆插错口比配置错误多一倍,尤其是模拟器里拖动线缆时容易点击到相邻端口。

5.3 现象:重启后配置消失:startup-config 与 vlan.dat 的坑

实验做完,配置也保存了,重启 Packet Tracer 或真实交换机,VLAN 不见了。原因是 Cisco 交换机有两份配置:running-config 在内存里,断电即丢;startup-config 在 NVRAM 里,重启后加载。只敲配置不 write memory,重启后什么都没剩。另一个坑是 VLAN 信息存储在 vlan.dat 文件中,如果之前执行过 delete vlan.dat,VLAN 定义会被删掉,即使 startup-config 里还有 interface 配置,VLAN 也不存在了。

解决:配置完成后执行 write memory,再执行 show startup-config 确认里面有内容。不要随便 delete vlan.dat,如果确实清过,VLAN 需要重新创建并再次保存。

提示:delete vlan.dat 前先确认 flash 里确实有旧 VLAN 文件;系统提示文件不存在时不影响后续操作,但别误以为 VLAN 已经清空。

5.4 现象:模拟器里能通,真机上端口全 down

Packet Tracer 里一切正常,到真实设备上同一套命令敲进去,端口起不来。原因是模拟器默认所有端口 up,真实交换机部分端口默认 shutdown,尤其是光口;另一个常见差异是端口编号,PT 里是 Fa0/1,真机可能是 Gi0/0/1,直接照搬端口名会提示接口不存在。

解决:上真机先执行 show ip interface brief 确认端口编号和状态,对 down 的端口进入接口执行 no shutdown。不要照搬 Packet Tracer 的端口名,不同型号命名规则不同。做实验课之前,最好先在真机做一次出厂初始化,确认能 console 进入,再开始配置。

5.5 现象:报告截图被助教打回:IP 编号前后对不上

报告里的拓扑图标注 PC1 是 192.168.10.1,截图里 ipconfig 却显示 192.168.10.2;或者 ping 的源和目标没有同屏截进来。助教没法从截图反推出你验证的是哪条链路,只能打回重写。这个问题的根源是动手之前没有做统一的地址规划表。

解决:动手之前把 IP、MAC、端口、VLAN 整理成一张对照表,配置完成后按表核对截图。截图里至少包含 ping 命令、返回结果、设备标识三个要素。这个习惯不是为了应付助教,是防止你自己在写报告时把数据搞混。先做规划表,再动设备,磨刀不误砍柴工。

6. 从实验三带走两个进阶技能:VLANIF 间路由与配置备份

实验三做完,如果你想让它不止于一次作业,有两个技能值得顺手带走:VLANIF 间路由和配置备份。前者把实验三从二层延伸到三层,后者让实验四、实验五少走弯路。

6.1 VLANIF:一条命令让 VLAN 之间能通信

二层交换机隔离了 VLAN,但真实网络里不同部门之间要通信。现在的主流做法是在三层交换机上给每个 VLAN 配一个虚拟三层接口,叫 VLANIF。在 Packet Tracer 里把交换机换成 3560 或 3650,然后配置:

ip routing interface vlan 10 ip address 192.168.10.254 255.255.255.0 no shutdown interface vlan 20 ip address 192.168.20.254 255.255.255.0 no shutdown

ip routing 开启三层转发,两个 VLANIF 分别充当两个子网的网关。此时把 PC 的默认网关分别填成 192.168.10.254 和 192.168.20.254,VLAN 10 ping VLAN 20 就能通。面试八股里问到 VLAN 间通信,回答“用三层交换机配 VLANIF 网关”比“路由器单臂路由”更贴近现在的组网方式。

6.2 配置备份与导出:给实验三留一封后悔药

实验做得再多,配置丢失都让人抓狂。我每次做完实验三,会把 show running-config 的输出保存成文本,文件名带日期和实验名,比如 SW1-20250620-lab3.cfg,然后打开文本末尾写一行备注,记录设备型号和实验环境。Packet Tracer 的项目文件不会自动保存配置,手动导出一份成本极低。

有真实设备环境时,把配置传到 TFTP 服务器是更省事的做法:

copy startup-config tftp://192.168.10.200/backup/SW1-config

路径按自己环境改。没有 TFTP 服务器,文本备份已经够用。带实验这么久,我养成的习惯是:不管实验三在任务书里只是一个小作业,配置完成后一定做一次 show 和一次备份。这两个动作加起来不超过两分钟,却能保证你重开模拟器、写报告、做实验四时都不必从头再来。希望帮到你。

本文还有配套的精品资源,点击获取

返回列表