☰
交换机实验实战指南:从MAC地址表到VLAN与Trunk配置
2026/9/28 5:35:24 网站建设 项目流程

交换机实验这类题目,几乎每个学计算机网络的同学都会碰到。大一的时候我也觉得,不就是拿几台电脑连个交换机能ping通就算完事?等真正把实验报告交上去、在答辩现场被老师追问了几个"为什么"之后才发现,这个实验想拿高分,靠的不是"把命令敲出来",而是把二层转发、广播域、VLAN这些概念在脑子里真正跑通一遍。这篇文章我就把自己做交换机实验从踩坑到通透的完整过程整理出来,从环境准备讲到排错技巧,连答辩会问什么也一并写了,照着练完,你应该可以不看老师脸色完成这份作业。

1. 实验整体设计与思路拆解

1.1 交换机实验在计算机网络课程中的定位

交换机实验通常安排在《计算机网络》教材讲完"物理层"和"数据链路层"之后,谢希仁版教材里对应的就是以太网、CSMA/CD、MAC地址、帧格式这些章节。这个位置安排得非常巧妙:你刚学完理论,知道以太网帧里有目的MAC和源MAC,知道交换机通过MAC地址表来转发帧,但这些知识全是纸上谈兵,交换机实验就是拿来验证这些理论的。

对照湖科大教书匠那套课程视频、王道考研的408辅导书,你会发现它们都在强调同一件事:交换机是二层设备,它不关心IP地址,只关心MAC地址。但很多同学做实验的时候,满脑子还是"ping通了=配置成功",没有把"MAC地址表自学习机制"这层逻辑捋清楚,导致实验结果看起来"对",实际上根本没理解。

这个实验在整门课里的地位,相当于"理论到实践的第一座桥"。它不像路由器实验那么复杂,不涉及路由协议、子网掩码计算,但它引入了所有网络设备配置的基础操作——命令行接口、特权模式、接口配置、show命令排查。这些基本功不打好,后面做路由器实验、ACL实验、DHCP实验都会非常吃力。换句话说,交换机实验是后续所有实验的"地基"。

1.2 实验目标不是"配通",而是"讲清楚"

我见过不少同学的实验报告,拓扑图一模一样,配置代码一模一样,ping结果都是通的,但老师给分却差了不少。差别在哪里?差别在报告里有没有回答清楚这几个问题:

  • 交换机在没有配置任何内容的时候,为什么两台电脑能互相ping通?
  • 当你把网线从hup换成交换机,冲突域发生了什么变化?
  • 划分VLAN之后,为什么有些电脑突然ping不通了?
  • 交换机的MAC地址表是如何建立和更新的?

这些问题的答案,才是实验的核心价值。配置命令在网上搜一大把,真正值钱的是你能否用一个外行能听懂的方式解释清楚"交换机怎么知道该把帧转发到哪个接口"。

例如,单播帧的转发流程是这样的:交换机收到一个帧,先看源MAC,把它记录进MAC地址表;再看目的MAC,查表,如果表里有对应条目,就只往那个接口转发;如果表里没有,就向除了接收接口以外的所有接口泛洪广播。这就是典型的"自学习+泛洪"机制。如果你的实验报告里能画出这个流程图(不是mermaid,是用文字配合箭头表格描述),并且配上"第一次通信时,因为目的MAC未知,所以会泛洪到所有端口"这样的观察记录,这份报告的质量就已经超过80%的人了。

2. 实验环境准备与核心概念预热

2.1 模拟器选型:为什么我推荐Packet Tracer

做交换机实验,面前有两条路:真机和模拟器。真机实验需要去实验室预约,时间固定、设备有限,而且交换机一旦配置出错,恢复原厂设置还得找老师帮忙。模拟器则自由得多,在家里就能反复练。

主流的模拟器就那么几个:Cisco Packet Tracer、GNS3、EVE-NG、华为的eNSP。做交换机二层实验,我的建议非常明确:用Packet Tracer。原因有三个:

第一,Packet Tracer是思科官方出的教学软件,对CCNA级别的交换机实验覆盖得非常完整,从最基本的VLAN划分到STP、链路聚合、端口安全都能做。第二,它自带图形化拓扑界面,拖拽设备、连线、配置都是可视化操作,特别符合实验报告里"拓扑图+配置过程"的叙事逻辑。第三,它对电脑配置要求极低,一个不到200MB的安装包,集显笔记本跑起来都毫无压力。

GNS3和EVE-NG更适合进阶场景,比如跑路由协议、需要加载真实IOS镜像的情况。做交换机实验用它们属于"杀鸡用牛刀",还得自己准备镜像文件,版权和配置门槛都麻烦。至于eNSP,除非你们课程用的是华为设备,否则没必要折腾。

提示:如果你用的是Packet Tracer 8.x版本,注意在Preferences里把"Interface"的显示方式调成"Logical"或者"Physical"随你习惯,建议用Logical模式,配置窗口操作更顺手。另外,实验做完一定要养成保存.pkt工程文件的习惯,不然后面想补充实验步骤只能重头再来。

2.2 交换机硬件认知与控制台登录

很多同学第一次见到交换机实物,看到背面那一排排网口就发怵。其实你只需要关注几个关键点。

常见的思科2960交换机前面板上有24个FastEthernet口(百兆)、2个GigabitEthernet口(千兆)、1个Console口。Console口是管理端口,形状和普通网口不一样,通常标注为"Console"或者"CONSOL",需要用专门的Console线连接电脑的串口或USB口。这也是交换机配置的入门操作:第一次配置交换机,没有任何IP,只能通过Console线直连来登录。

在实际实验课上,老师给你的电脑可能已经装好了SecureCRT或者Putty这类终端软件。连接参数一般是:波特率9600,数据位8,停止位1,无校验,无流控。在Packet Tracer里模拟的时候,你需要先给交换机加一台PC或者直接用PC的终端模式连接Console口,设置好参数就能进去了。这里有个容易踩的坑——电脑如果没有识别到串口设备,检查一下是不是没有安装USB转串口的驱动,或者COM口号选错了。

登录成功之后,你看到的界面就是交换机的命令行接口,也就是CLI。这里所有的操作都是输入命令完成的,记住一个口头禅:"不会的命令就打问号"。任何命令单词后面加个?,交换机会告诉你接下来的参数是什么,这个技巧在做实验的时候能救你无数次。

3. 交换机基础配置实操:让两台设备真正通信

3.1 命令行模式与基础配置命令

交换机的命令行模式分为几个层级,不同层级能执行的命令权限不同。理解这个层级结构,是掌握CLI的第一步。我把它类比成手机系统的不同权限界面:普通用户模式就是"锁屏",只能看时间,不能改设置;特权模式就是"输入密码解锁",可以查看所有状态但不能修改配置;全局配置模式就是"设置主界面",可以修改系统参数;接口配置模式就是"某个App的设置页",只能修改这个接口的参数。

从用户模式进入特权模式,输入enable,如果设置了enable密码,会提示输入。从特权模式进入全局配置模式,输入configure terminal(可以简写为conf t)。进入接口配置模式,输入interface fastethernet 0/1(简写为int fa 0/1)。退出当前层级用exit,想退回用户模式用end。

常见的基础配置命令如下表所示:

目标命令说明
设置主机名hostname SW1方便在命令行提示符中辨识设备
设置enable明文密码enable password cisco进入特权模式的密码,明文存储
设置enable密文密码enable secret cisco使用MD5哈希存储,更安全
配置管理IPinterface vlan 1 + ip address 192.168.1.2 255.255.255.0用于Telnet/SSH远程管理
开启远程管理line vty 0 4 + password cisco + login允许虚拟终端登录
查看MAC地址表show mac address-table核心验证命令
查看接口状态show interfaces status查看接口up/down、所属VLAN

这些命令不需要背,多用几次自然就熟了。但实验报告里写的时候要注意:命令不要写成一行连串的分号,要分段展示,并在命令后面用注释说明这条命令的作用。这样老师一眼就能看出你不是在复制粘贴。

3.2 实验拓扑搭建与连通性验证

我在Packet Tracer里搭的实验拓扑很简单:一台2960交换机SW1,两台PC(PC0和PC1)分别连接到SW1的FastEthernet0/1和FastEthernet0/2接口。PC0的IP地址配置为192.168.10.1/24,PC1配置为192.168.10.2/24。实验内容也很直观:默认情况下,两台PC能不能互相ping通?

答案是能。因为交换机出厂默认所有接口都在VLAN 1中,属于同一个广播域,而且这里没有跨网段,所以PC0发起的ARP广播请求会到达所有接口,PC1收到后回复ARP应答,交换机看到PC0的请求,MAC表还没建立完整,会对这个广播帧进行泛洪,于是PC1就能收到。随后的ICMP echo请求和应答就能正常到达。

做完ping通验证之后,别急着往下走。先做一件重要的事:在两台PC之间连续ping几次,然后到交换机上执行show mac address-table。你会看到类似下面的输出:

Mac Address Table ------------------------------------------- Vlan Mac Address Type Ports ---- ----------- -------- ----- 1 0050.7966.6789 DYNAMIC Fa0/1 1 0050.7966.3456 DYNAMIC Fa0/2

这两行记录说明交换机已经把PC0和PC1的MAC地址分别学习到了Fa0/1和Fa0/2接口上,而且是动态学习来的。这个操作一定是实验报告里的"惊鸿一笔"——因为大部分同学的实验报告只写了ping通的结果,没有记录MAC地址表的变化过程。你把这个观察写进去,报告深度马上不一样。

注意:MAC地址表条目是有老化时间的,默认是300秒。如果你长时间不通信,交换机就会把这条记录删掉,下次通信时重新学习。这也是为什么"长时间没ping,突然第一次ping会慢一下"的原因。这个知识点谢希仁教材在"以太网交换机"一节里专门提到过,实验报告里可以顺手引用。

3.3 理解观察命令:show命令家族

做实验不可能黑盒操作,你必须要学会用show命令"透视"交换机内部的工作状态。这里我整理几个最常用的show命令,并告诉你每条命令主要看什么:

  • show running-config:显示当前运行配置。做完任何修改,先执行这条命令确认配置真的生效了。
  • show vlan brief:显示VLAN概况。这是划分VLAN后最关键的验证命令,能看到每个VLAN的编号、名称和包含的接口。
  • show mac address-table:显示MAC地址表。观察学习过程,排查通信故障时尤其有用。
  • show interfaces status:显示接口状态。VLAN划分后,如果电脑ping不通,第一条就查这个,看看接口是不是down了,或者是不是port in error-disabled状态。
  • show interfaces trunk:显示Trunk口状态。跨交换机配置VLAN时,查这条命令确认Trunk链路两端都协商成功了。

你要记住一个原则:所有配置实验,做完一步就show验证一步,写完报告之后附上show的输出截图,既是给自己确认,也是给老师一个清晰的证据链。

4. VLAN实验:从认知到实战

4.1 VLAN到底解决了什么问题

VLAN,虚拟局域网,翻译成大白话就是"把一台物理交换机切成好几台逻辑交换机"。为什么要这么做?很简单,因为默认情况下交换机所有端口都在同一个广播域,一台设备发广播帧,所有设备都能收到。当网络规模变大,广播帧越来越多,整个网络的性能就会被拖垮。

VLAN的出现就是为了分割广播域。划分VLAN之后,同一个VLAN里的设备才能互相通信,不同VLAN之间默认是隔离的,广播帧只会在本VLAN内传播。你可以把VLAN想象成一栋写字楼的楼层,不同公司租了不同楼层,楼内的电梯和门禁系统保证了人员只能到达自己公司的楼层,互相不会串门。

这个比喻用在你实验报告的"概念引入"部分非常合适,老师一看就知道你不是在背定义。但要注意,比喻结束之后要立刻回到技术本身:VLAN的隔离实际上是二层隔离,交换机在转发帧的时候,不仅查目标MAC地址表,还要查这个MAC地址表条目属于哪个VLAN。如果帧的源VLAN和目的MAC所在VLAN不一致,直接丢弃。这个机制在配置完VLAN之后,用两个不同VLAN的PC互相ping,然后看结果和MAC地址表就完全明白了。

4.2 单交换机VLAN划分实操

接下来我在SW1上的操作是这样的:创建VLAN 10(技术部)和VLAN 20(行政部),把Fa0/1划分到VLAN 10,Fa0/2划分到VLAN 20。命令如下:

Switch> enable Switch# configure terminal Switch(config)# vlan 10 Switch(config-vlan)# name Technology Switch(config-vlan)# exit Switch(config)# vlan 20 Switch(config-vlan)# name Administration Switch(config-vlan)# exit Switch(config)# interface fastethernet 0/1 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 10 Switch(config-if)# exit Switch(config)# interface fastethernet 0/2 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 20 Switch(config-if)# end

注意,switchport mode access这条命令的含义是把接口指定为access口(接入模式),也就是连接终端设备的端口模式。只有在这种模式下,switchport access vlan 10才能正常生效,指定该接口属于VLAN 10。

然后我把PC0的IP改成192.168.10.1/24(属于VLAN 10的网段),把PC1的IP改成192.168.20.1/24(属于VLAN 20的网段)。这是为了符合"不同VLAN使用不同网段"的常规设计,方便管理和区分。

这时候再做连通性测试:PC0 ping PC1,结果是不通的。这个结果很重要,一定要记录在报告里。然后你再到交换机上执行show vlan brief,会看到:

VLAN Name Status Ports ---- -------------------------------- --------- ------------------------------- 1 default active Fa0/3, Fa0/4, ... 10 Technology active Fa0/1 20 Administration active Fa0/2

看到没有,Fa0/1不再在VLAN 1里了,VLAN 1的列表里只剩下了其他空闲接口。这就是VLAN划分的直接效果。这个实验就是让读者理解:VLAN隔离了广播域,没有路由功能,二层设备是不能跨VLAN转发的。

4.3 跨交换机VLAN通信与Trunk链路配置

如果你只在单台交换机上做VLAN实验,那还只是一个"入门认知"。实验课老师十有八九会把题目升级成"两台交换机,两个部门各跨一台设备"的场景。这时候就牵扯出交换机在多设备场景下的关键配置——Trunk链路。

想象一下,你有两台交换机SW1和SW2,每台上面都有VLAN 10和VLAN 20的PC,它们之间用一条网线连接。如果不做任何配置,两台交换机之间的链路只属于VLAN 1,那么VLAN 10的帧过不去,VLAN 20的帧也过不去。要让多个VLAN的帧都在同一条链路上传输,就需要把这条链路配置成Trunk口。

Trunk的中文叫"干道",作用是允许多个VLAN的帧通过同一物理链路实现跨交换机传输。配置Trunk的命令如下(两端交换机都要配):

Switch(config)# interface gigabitethernet 0/1 Switch(config-if)# switchport mode trunk

思科2960默认使用802.1Q封装格式,在Trunk口上会为每个帧打上VLAN标签,这样对端交换机就能识别这个帧属于哪个VLAN。这个机制实验报告里要重点画帧格式的对比:普通access口收到的帧没有标签(untagged),trunk口发送出去的帧带有4字节的VLAN Tag。

配置完Trunk之后,再做一次PC间的通信测试。你会发现:SW1上VLAN 10的PC和SW2上VLAN 10的PC能ping通,和SW2上VLAN 20的PC不能ping通。这个结果直接验证了Trunk链路的作用——它只是"拓宽了道路",让不同VLAN的车可以并行通过,但没有改变VLAN的隔离规则,不同VLAN之间依然不通。

注意:配置Trunk口时有个很经典的坑——接口默认可能被shutdown了或者两端模式的协商不一致导致接口down,比如A端配了trunk,B端忘了配或者配成access。如果跨交换机ping不通,先show interfaces trunk,看到"Port Mode Encapsulation Status"那一列,留意Status是不是trunking,不是就重新检查两端的配置。

4.4 VLAN间路由:实验的加分项

跨VLAN ping不通这个结果,很多实验报告到此就结束了。但如果你想拿高分,我建议顺手做一个VLAN间路由的扩展实验。做法很简单:再拉一台三层交换机,配置SVI接口(也就是为每个VLAN创建一个虚拟三层的网关接口),实现两个VLAN之间的三层互通。

在三层交换机上的核心配置是这样的:

Switch(config)# interface vlan 10 Switch(config-if)# ip address 192.168.10.254 255.255.255.0 Switch(config-if)# no shutdown Switch(config)# interface vlan 20 Switch(config-if)# ip address 192.168.20.254 255.255.255.0 Switch(config-if)# no shutdown

然后把接入层交换机SW1上Fa0/3接口(原本连接三层交换机的接口)改成access模式,划到VLAN 10或者干脆做成trunk让所有VLAN都过,再把PC的网关分别指到192.168.10.254和192.168.20.254。这时候再去ping,两个VLAN之间就通了。

这个扩展实验虽然不在大部分作业的必选范围内,但它把"二层隔离"和"三层互通"这条链路串起来了,让你理解为什么VLAN隔离并不是网络隔离的终点。在实验报告里加一个小节的"扩展思考",明确说明"默认VLAN之间不互通,需要三层设备的介入才能实现跨VLAN通信",老师看到这个,印象分会直接拉满。

5. 常见问题与排查技巧实录

5.1 ping不通时,到底先查什么

我见过太多人一ping不通就开始清空配置重来,这是效率最低的做法。交换机实验的排查是有固定套路的,核心思路是:从底层往上层查,先用show命令确认物理层、数据链路层状态,再考虑IP配置和VLAN划分的问题。

一份我总结的快速排查表放在这里,大家在实验排错时直接照着查:

现象可能原因排查命令解决方案
接口不亮/显示down网线没插好、对端设备关机show interfaces status检查网线、启动对端设备
接口显示err-disabled检测到环路或违规流量show interfaces status先shutdown再no shutdown恢复
同一VLAN ping不通PC IP设置错误ipconfig / ping 127.0.0.1检查PC IP、掩码、网关
同一VLAN ping不通PC没配在同一网段show vlan brief确认PC的IP网段一致
不同VLAN ping不通二层隔离,未配置路由show vlan brief按教学要求保持不通或加三层
跨交换机同VLAN不通Trunk配置错误show interfaces trunk两端都配置trunk、检查封装
广播风暴/全网慢网络成环show mac address-table跳变配置STP或排查物理环路

这里特别要提醒的是,接口err-disabled这个状态,很多同学从来没遇到过,但在实验课的环境里因为交换机接口配置错乱,err-disabled还挺常见的。它本质上是交换机检测到接口出现了异常流量(比如端口安全违规、环路风暴),自动把这个接口给"保护性关闭"了。恢复命令也很直白:进到该接口,执行shutdown,再执行no shutdown,有时候就是这么简单却能解决大问题。

5.2 配置保存与设备恢复

实验课上,你可能会遇到这种情况:配置到一半断电了,重新开机发现之前的配置全没了;或者嫌弃自己配乱了,想恢复到出厂状态。这里就涉及到两个常见的操作场景。

场景一:保存配置。在特权模式下输入write(或者copy running-config startup-config),将当前运行配置写入启动配置。如果不保存,断电重开就回到出厂状态了。有小部分同学会抱着"我等会还要改"的心态不保存,但实验结果提交前,记得一定手动保存一下,否则实验验收时设备一重启,你之前做的一堆配置全部消失,到时根本来不及补救。

场景二:恢复出厂。在特权模式下输入erase startup-config,然后reload重启交换机,设备就会回到出厂状态。这个操作在做多台设备联调实验时非常常用,因为你做完一台就要接着做下一台,设备不清空重制,容易残留上一组的配置导致各种奇怪问题。两个字:养成习惯,每台设备动手前先确认它的running-config是不是干净的。

5.3 实验报告与答辩的避坑经验

最后聊聊实验报告和答辩。很多同学实验做得很顺畅,但一到写报告就只会把命令列表附上去,完全没有分析。根据我帮老师批改作业的经验,一份85分以上的实验报告,一般应该包含这几个要素:

第一,拓扑图清晰。不要截图设备连接完之后一堆乱线的拓扑图,用Packet Tracer自带的绘图功能把网络区域框出来,或者用Visio自己画一张干净的逻辑拓扑图,标明接口编号和IP地址。第二,配置过程分解。不要贴一段完整无注释的配置,而是按照"开启VLAN-划分接口-验证"的顺序,配合show命令输出来呈现。第三,结果分析与思考。ping通不是结果,你要写清楚"为什么能通"和"为什么又不通了"。

答辩环节老师最爱问的其实是发散性问题。比如"如果把交换机的某条网线拔了再插回去,MAC地址表会怎样"、"如果网络中出现了环路,交换机怎么处理"、"Trunk口和access口有什么区别"。这些问题都在我们前面实验的覆盖范围内,你只要把原理摘出来,结合实验的现象说通,基本不会卡壳。

多说一句,如果你做实验用的是Packet Tracer,注意不要直接导出整个工程的答案发给同学,仿真软件里你可能无意间用了另外一台设备的配置,这种抄作业式的传阅非常容易被识破,而且自己再上手还是不会。还不如把报告里的思路和排错流程分享出来,互相学习才是实验的意义。

我在从不会到通的过程中,最深的体会是:交换机的配置命令就那么几条,难的是脑子里那张"转发决策表"。什么时候查目的MAC、什么时候泛洪、什么时候打标签,这些逻辑捋顺了,后面学路由器、学三层交换机,你都会发现整个网络体系的学习进度明显提速了。这份实验作业,值得你多花些时间把它吃透。

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

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

立即咨询