简介:本资源是一份面向高校计算机网络课程实践教学的完整实验指导文档,适用于网络工程、信息安全等专业学生及初学者掌握局域网构建与交换机基础配置技能。文档详细覆盖Boson Network Designer拓扑设计、Boson Netsim模拟器操作、Cisco Catalyst 1912交换机四种工作模式(用户/特权/全局/接口模式)下的命令实践,包括IP地址分配、端口启用(no shutdown)、MAC地址表查看(show mac-address-table)、端口安全限制(port secure max-mac-count)、静态MAC绑定及VLAN划分等核心内容。资源为单文件.docx格式,共1个文档,大小473KB,结构清晰,含实验目的、步骤详解、命令示例与结果验证说明,便于直接用于课堂实训或自主复现。目前已有190人学习下载,是理解交换机底层工作机制、夯实网络设备管理实操能力的实用型入门材料。
1. 局域网管理不是“插上线就通”,而是让交换机真正听懂你的指令
你有没有遇到过:两台PC直连交换机,IP配得明明白白,ping却像石沉大海?或者VLAN划分后,同一网段的设备突然“失联”,抓包一看ARP请求发出去了,但根本没人回?这不是网线没插牢,也不是IP写错了——这是交换机压根没按你设想的逻辑转发帧。局域网管理及交换机配置,本质是把一台冷冰冰的二层转发设备,变成你网络拓扑里可读、可控、可验证的“活节点”。它不依赖路由器、不涉及公网路由表,却决定了局域网内所有通信的起点与边界。本实验聚焦真实工程中高频场景:用Boson Network Designer搭建拓扑、用Boson NetSim模拟CLI操作、在无物理设备前提下完成端口角色定义(access/trunk)、VLAN划分、跨交换机VLAN通信验证。适合计算机网络初学者建立“帧级思维”,也适合DevOps工程师补全基础设施层的实操盲区——毕竟Kubernetes集群的CNI插件再炫,底层流量仍要穿过交换机的MAC地址表。
2. 用Boson Network Designer搭出可导出的拓扑骨架:从拖拽到生成.net文件
Boson Network Designer不是画图工具,它是把网络逻辑翻译成仿真引擎能执行的“源代码”的编译器。它的输出文件(.net)才是Boson NetSim真正加载的对象。很多同学卡在第一步:拖完设备、连好线,却无法在NetSim里打开——问题往往出在“未导出”或“导出格式错误”。
2.1 搭建最小可验证拓扑:2台PC + 1台交换机 + 1台三层交换机(模拟单臂路由)
我们不堆设备,只保留验证核心功能所需的最少元素:
- PC0:IP
192.168.10.10/24,网关192.168.10.1 - PC1:IP
192.168.20.10/24,网关192.168.20.1 - Switch0(二层交换机):用于划分VLAN 10和20
- Switch1(三层交换机,模拟Router-on-a-Stick):启用SVI接口,承担VLAN间路由
提示:Boson Designer中“三层交换机”图标默认为L3能力,但需手动启用路由功能(后续在CLI中配置
ip routing),切勿误以为图标自带路由。
2.2 连线规范:物理链路 ≠ 逻辑链路,端口类型必须显式标注
Boson Designer要求你为每条连线指定端口类型,这是后续NetSim中CLI命令生效的前提:
| 连线方向 | 接口类型选择 | 原因说明 |
|---|---|---|
| PC0 → Switch0 | FastEthernet0/0(自动识别为access) | PC端口天然属于单一VLAN,Designer会默认设为access模式 |
| PC1 → Switch0 | FastEthernet0/1(同上) | 同理,但需注意:若两PC接同一交换机不同端口,必须通过VLAN隔离,否则二层直通 |
| Switch0 → Switch1 | FastEthernet0/24→FastEthernet0/24 | 必须手动改为trunk!否则VLAN标签无法透传,跨VLAN通信彻底失败 |
# 此操作在Designer界面完成:双击连线 → "Link Properties" → "Port Type" → 选"Trunk"这一步常被忽略,导致后续在NetSim中无论怎么配switchport mode trunk都无效——因为Designer根本没把这条链路标记为trunk,NetSim加载时直接忽略该配置。
2.3 导出.net文件:命名、路径、编码一个都不能错
导出不是点击“保存”就行。关键三要素:
- 文件名必须不含中文、空格、特殊符号(如
实验二_局域网.net→ 改为lab2_lan.net) - 保存路径建议为英文纯字母目录(如
C:\boson\labs\),避免中文路径导致NetSim加载失败 - 编码格式必须为ANSI(非UTF-8):Designer导出时默认为ANSI,但若用记事本二次编辑过,可能被转为UTF-8 BOM格式,NetSim将报错“Invalid network file format”
验证导出是否成功:用记事本打开.net文件,首行应为类似Boson Network Simulator Network File Version 5.00的纯ASCII文本,无乱码、无ÿþ等BOM头。
3. 在Boson NetSim中完成交换机CLI配置:从enable密码到VLAN放通
Boson NetSim是命令行世界的“沙盒”。它不模拟硬件性能,但严格校验Cisco IOS语法、状态机逻辑和配置依赖关系。这里没有“跳过步骤”的捷径——switchport access vlan 10前没建VLAN 10?命令直接报错;interface vlan 10下没配IP?SVI接口永远down。
3.1 进入特权模式并设置基础安全:enable secret比enable password更可靠
很多教程仍教enable password,但在真实网络中已被弃用。enable secret使用MD5加密(IOS 12.2+默认SHA-256),且优先级高于enable password:
Switch> enable Switch# configure terminal Switch(config)# enable secret cisco123 # 注意:此处cisco123是明文,设备内部自动哈希存储 Switch(config)# service password-encryption # 对line vty等明文密码做二次加密(非必须但推荐)参数说明:
enable secret后跟的字符串是你输入的明文密码,设备自动转换为不可逆哈希值存入配置。service password-encryption会对line vty下的password等明文做简单Vigenère加密(非强加密,仅防配置文件明文泄露)。
3.2 在Switch0上划分VLAN并配置Access端口:让PC0和PC1归属不同广播域
Switch0# configure terminal Switch0(config)# vlan 10 Switch0(config-vlan)# name Sales Switch0(config-vlan)# exit Switch0(config)# vlan 20 Switch0(config-vlan)# name HR Switch0(config-vlan)# exit Switch0(config)# interface fastethernet 0/0 Switch0(config-if)# switchport mode access Switch0(config-if)# switchport access vlan 10 Switch0(config-if)# no shutdown Switch0(config-if)# exit Switch0(config)# interface fastethernet 0/1 Switch0(config-if)# switchport mode access Switch0(config-if)# switchport access vlan 20 Switch0(config-if)# no shutdown Switch0(config-if)# exit关键点解析:
switchport mode access是显式声明,不能省略。即使端口默认是access,不声明则switchport access vlan 10会失败。no shutdown必须执行,否则端口处于管理性关闭状态(administratively down),show interfaces status中显示disabled。- VLAN名称(
name Sales)仅为可读性,不影响转发逻辑,但建议养成习惯——生产环境排查时,show vlan brief一眼定位。
3.3 在Switch1(三层交换机)上配置Trunk并启用SVI:实现VLAN间路由
Switch1# configure terminal Switch1(config)# interface fastethernet 0/24 Switch1(config-if)# switchport mode trunk Switch1(config-if)# switchport trunk allowed vlan 10,20 # 显式放通,禁止隐式all Switch1(config-if)# no shutdown Switch1(config-if)# exit Switch1(config)# interface vlan 10 Switch1(config-if)# ip address 192.168.10.1 255.255.255.0 Switch1(config-if)# no shutdown Switch1(config-if)# exit Switch1(config)# interface vlan 20 Switch1(config-if)# ip address 192.168.20.1 255.255.255.0 Switch1(config-if)# no shutdown Switch1(config-if)# exit Switch1(config)# ip routing # ⚠️ 关键!开启三层路由功能,默认关闭逻辑说明:
switchport trunk allowed vlan 10,20比switchport trunk allowed vlan all更安全。生产环境严禁all,防止未知VLAN流量泛洪。ip routing是全局开关,没有它,SVI接口即使UP,也无法转发不同子网间的IP包。
4. 验证与排错:为什么ping不通?看这三张表就够了
配置完成≠功能正常。Boson NetSim提供三张核心状态表,它们是定位90%问题的“黄金三角”:
| 表名 | 查看命令 | 核心作用 | 典型异常现象 |
|---|---|---|---|
| MAC地址表 | show mac address-table | 交换机学习到的MAC→端口映射 | 表为空 → 端口未UP或未收帧;MAC条目在错误端口 → trunk未通或VLAN不匹配 |
| VLAN信息表 | show vlan brief | 所有VLAN及其成员端口 | Access端口未出现在对应VLAN下 →switchport access vlan X未生效;Trunk端口显示-→ trunk未启用 |
| 路由表 | show ip route | 三层交换机的IP路由条目 | 无直连路由(C开头)→ SVI接口DOWN;无*号默认路由 → 跨网段转发失败 |
4.1 排查PC0无法ping通PC1的完整路径
假设PC0(192.168.10.10)pingPC1(192.168.20.10)失败,按顺序检查:
PC0能否ping通自己的网关(192.168.10.1)?
- 否 → 检查PC0 IP配置、Switch0 Fa0/0是否UP、VLAN 10是否存在、Switch1的SVI 10是否UP
- 是 → 进入下一步
在Switch1上执行
show ip route- 若无
C 192.168.10.0/24 is directly connected, Vlan10和C 192.168.20.0/24 is directly connected, Vlan20→ SVI接口未UP(检查show ip interface brief中Vlan10/Vlan20状态) - 若有,但
ping仍不通 → 检查show arp中是否有PC1的MAC条目(无则ARP请求未达PC1)
- 若无
在Switch0上执行
show mac address-table- PC0的MAC是否在Fa0/0下?否 → PC0未发帧或端口DOWN
- PC1的MAC是否在Fa0/1下?否 → PC1未发帧,或Switch0与Switch1间trunk不通(此时
show interface fa0/24看input packets是否增长)
4.2 常见问题避坑:5个血泪经验总结
| 现象 | 原因 | 解决方案 |
|---|---|---|
show vlan brief中Fa0/0显示在VLAN 1,而非VLAN 10 | switchport access vlan 10命令执行后未退出config-if模式,或忘记exit导致命令未提交 | 输入end或Ctrl+Z返回特权模式,再show vlan brief验证;或重输命令并确认提示符变为Switch0(config)# |
Switch1的show ip interface brief中Vlan10状态为up/down | SVI接口协议UP但线路协议DOWN → 缺少ip routing全局命令 | 执行configure terminal→ip routing→end,状态立即变为up/up |
PC0能ping通网关,但无法ping通PC1,且show arp中无PC1条目 | ARP请求从PC0发出,经Switch0→Switch1→PC1,但PC1未响应 →PC1网关配置错误(应为192.168.20.1,而非192.168.10.1) | 检查PC1的TCP/IP属性,网关必须指向其所属VLAN的SVI IP |
show interface trunk显示Fa0/24为trunk,但show mac address-table中无跨VLAN MAC学习 | Boson NetSim中trunk端口默认不学习MAC(因VLAN标签透传),需在trunk端口下加switchport nonegotiate强制静态trunk | 在Switch0和Switch1的trunk接口下执行switchport nonegotiate(此为Boson仿真特有,真实设备通常无需) |
所有配置正确,ping仍超时,show interface显示input/output packet为0 | Boson NetSim的“仿真时钟”未启动 → 流量不触发 | 点击NetSim界面右下角绿色“Play”按钮(▶️),启动仿真时钟;若已启动,尝试reload重启设备 |
5. 进阶技巧:用show命令反向推导配置,把交换机变成你的“黑匣子解码器”
新手总想“先配再试”,老手习惯“先看再配”。Boson NetSim的show命令不仅是验证工具,更是理解设备内部状态机的X光机。我带学生做实验时,第一课就是关掉所有配置文档,只给一张空白拓扑,让他们用show命令倒推出当前交换机的VLAN划分、端口角色、路由能力——这比死记命令有效十倍。
5.1 从show running-config中识别配置层级与依赖关系
执行show run后,观察输出结构:
! version 12.1 no service timestamps log datetime msec no service timestamps debug datetime msec no service password-encryption ! hostname Switch0 ! enable secret 5 $1$mERr$hx5rVtCRGz5r6zzYbxNg81 ! ← 加密后的enable secret ! interface FastEthernet0/0 switchport mode access switchport access vlan 10 ! ← 此行存在,证明VLAN 10已创建 no shutdown ! interface FastEthernet0/24 switchport mode trunk switchport trunk allowed vlan 10,20 ! ← trunk放通列表,暗示VLAN 10/20存在 ! vlan 10 name Sales ! vlan 20 name HR ! line con 0 logging synchronous ! end关键洞察:
switchport access vlan 10出现在接口配置下,不代表VLAN 10一定存在——但如果show run中同时出现vlan 10和name Sales,则100%确认VLAN已创建。而switchport trunk allowed vlan 10,20的存在,强烈暗示VLAN 10/20在全局已定义(否则设备不会允许你放通不存在的VLAN)。
5.2 用show interfaces status快速定位物理层故障
这张表比show ip interface brief更底层,专治“端口明明插着线却不通”:
| 字段 | 含义 | 异常值及含义 |
|---|---|---|
Port | 端口号 | Fa0/0 |
Name | 接口描述(若配置了description) | 空表示未配置,但不影响功能 |
Status | 管理性状态 | disabled→shutdown未开;notconnect→ 线缆未插或对端DOWN;connected→ 物理UP |
Vlan | 所属VLAN | 1→ 默认VLAN;10→ 已正确划入;trunk→ 该端口为trunk模式 |
Duplex/Speed | 双工/速率协商结果 | auto→ 自协商成功;a-full→ 自协商为全双工;若为half且速率低,可能是网线质量差 |
当Status为notconnect时,不要急着重配,先看Vlan列:如果是trunk,说明物理链路没问题,问题在对端trunk未启用;如果是1,则大概率是网线没插牢或对端设备关机。
5.3 一个真实翻车现场:为什么switchport trunk encapsulation dot1q命令不存在?
在真实Cisco设备上,switchport trunk encapsulation dot1q是必配命令(尤其在旧型号上)。但在Boson NetSim中输入直接报错:
Switch1(config-if)# switchport trunk encapsulation dot1q ^ % Invalid input detected at '^' marker.原因:Boson NetSim模拟的是较新IOS版本(12.2+),默认封装即为802.1Q,该命令已被废弃。强行添加反而报错。
教训:仿真软件不是真实设备的克隆,它是教学精简版。它的价值在于帮你掌握逻辑框架(access/trunk/SVI/VLAN间路由),而非背诵所有命令变体。当你在真实企业网络中遇到encapsulation报错,第一反应应是查设备IOS版本,而非怀疑自己命令敲错。
最后说句实在话:这个实验的价值,不在于你最终让两台PC ping通,而在于你第一次看清了数据帧如何被交换机打上VLAN标签、又如何被三层设备剥离并路由。此后再看到“单臂路由配置”“交换机接入口配置access后2个pc可以互通”这类热搜词,你心里清楚——那不是玄学,只是switchport mode access和ip routing两个命令的因果链。希望帮到你。
本文还有配套的精品资源,点击获取