一、 实验目的
1.1 搞懂 IPv4 的子网划分与 IP 分配
在实际的网络搭建中,我们经常需要把一个大的网络拆分成几个小的子网。在这个实验里,我们将拿一个常见的 C 类网段(192.168.0.0)练手,通过修改子网掩码(比如使用 255.255.255.128),把它"一分为二"。做完这部分,你就能清晰地知道网络地址和广播地址到底该怎么算,以及该如何给电脑和路由器合理地分配 IP 地址。
1.2验证并理解路由器在跨网段通信中的核心作用
我们经常听人说"同网段靠交换机,跨网段靠路由器",在这个实验里,我们将通过亲自敲 ping 命令并抓包观察,来验证这个死理:如果两台电脑不在同一个子网里,它们想要相互通信,就必须得找一个"传话筒"(也就是路由器)来帮忙转发数据。顺便,你也会在实操中彻底搞明白,平时给电脑配网络时必填的那个"默认网关"到底是干嘛用的。
二、 实验环境
仿真平台: Cisco Packet Tracer
核心设备: 1941系列路由器(1台)、2960系列交换机(2台)
终端设备: PC(4台)
传输介质: 直通双绞线(用于异构设备间连接)、交叉双绞线(如涉及同构设备连接)
三、 网络拓扑设计与IP地址规划
3.1 网络拓扑结构构建与视图优化
(1)基础拓扑搭建
在Cisco Packet Tracer的逻辑工作区中,按照设定的跨网段通信场景拖拽并部署网络设备。以路由器(Router0)为核心节点,将其两个千兆以太网接口(GigabitEthernet)分别连接至两台交换机(Switch0 与 Switch1),从而在物理层面上划分出两个独立的广播域。随后,将PC0与PC1接入Switch0,PC2与PC3接入Switch1,完成基础物理链路的连接。
(2)链路状态与STP收敛加速
物理连线完成后,观察链路状态指示灯。此时路由器接口默认为关闭状态(显示为红色向下箭头);而交换机的相关接口受生成树协议(Spanning Tree Protocol, STP)机制的影响,初始阶段会处于阻塞(Blocking)和侦听(Listening)状态(显示为琥珀色圆点)。为提高实验效率,可点击软件界面下方的"实时工作模式(Realtime)"中的"Fast Forward Time(加速时间)"按钮,人为加速STP的收敛过程,使交换机接口快速进入转发(Forwarding)状态(变为绿色向上箭头)。

(3)视图显示优化与规范化标注
Packet Tracer 默认会开启显示所有网络设备的相关接口名称。在复杂的网络拓扑中,这种全局显示会导致界面信息冗余且凌乱,甚至会遮挡传输介质、设备状态指示灯及设备自身模型。为了提升网络拓扑的清晰度与专业性,建议进行以下视图优化操作:
-
隐藏默认标签: 进入软件菜单栏,选择
Options->Preferences(首选项)。在弹出的设置窗口中,取消勾选 "在逻辑工作区始终显示端口标签"(Always Show Port Labels in Logical Workspace)。此时,拓扑图中繁杂的系统默认接口名称将被隐藏。 -
关键接口手动注释: 默认标签隐藏后,为了防止在后续配置IP地址时混淆路由器的关键接口,建议利用软件右侧工具栏的"Place Note(放置注释)"工具。明确查明 Router0 左右两端的接口编号后,在拓扑图对应链路旁边手动添加文本注释(如
Gig0/0和Gig0/1)。


3.2 IPv4子网划分方案
从本实验的网络拓扑可知,路由器 Router0 的 Gig0/0 和 Gig0/1 接口分别连接了两个独立的交换式以太网(即两个不同的广播域)。为了使这两个网络中的计算机能够通过路由器相互通信,必须为它们分配不同的逻辑子网地址。
假设本实验分配的基础网络地址为标准的 C 类网 192.168.0.0/24。根据子网划分原理,我们向主机位借用 1 位,采用子网掩码 255.255.255.128(即前缀长度 /25),将原网络均分为两个子网。具体的地址空间推导如下:
-
子网 1(分配给 Gig0/0 接口所在网络):
-
网络地址: 192.168.0.0 (子网中的最小地址,不可分配)
-
广播地址: 192.168.0.127 (子网中的最大地址,不可分配)
-
可用 IP 范围: 192.168.0.1 ~ 192.168.0.126 (共 126 个可用地址,可自由分配给该子网内的 PC 和路由器接口)
-
-
子网 2(分配给 Gig0/1 接口所在网络):
-
网络地址: 192.168.0.128 (不可分配)
-
广播地址: 192.168.0.255 (不可分配)
-
可用 IP 范围: 192.168.0.129 ~ 192.168.0.254 (同样包含 126 个可用地址)
-
3.3 设备 IP 与网关分配表
在明确了可用 IP 范围后,我们需要为网络中的所有节点指定静态 IP 地址。
特别注意: 计算机若要与其他网络中的设备进行通信,必须配置默认网关(Default Gateway)。默认网关的 IP 地址通常配置为连接该子网的路由器接口的 IP 地址。在本实验中:
-
左侧子网(PC0、PC1)的默认网关设为 Router0 的 Gig0/0 接口地址(取可用范围的最大值
192.168.0.126)。 -
右侧子网(PC2、PC3)的默认网关设为 Router0 的 Gig0/1 接口地址(取可用范围的最大值
192.168.0.254)。
全网设备参数分配规划表如下:
| 设备名称 | 所在子网 | IPv4 地址 | 子网掩码 | 默认网关 |
|---|---|---|---|---|
| PC0 | 子网 1 | 192.168.0.1 | 255.255.255.128 | 192.168.0.126 |
| PC1 | 子网 1 | 192.168.0.125 | 255.255.255.128 | 192.168.0.126 |
| PC2 | 子网 2 | 192.168.0.129 | 255.255.255.128 | 192.168.0.254 |
| PC3 | 子网 2 | 192.168.0.253 | 255.255.255.128 | 192.168.0.254 |
| Router0 (Gig0/0) | 子网 1 | 192.168.0.126 | 255.255.255.128 | 无 |
| Router0 (Gig0/1) | 子网 2 | 192.168.0.254 | 255.255.255.128 | 无 |

四、 设备参数配置与实现
根据前期的网络IP地址与网关分配规划,我们需要依次对网络拓扑中的终端设备(PC)和核心层设备(路由器)进行参数下发与激活。
4.1 终端设备 (PC) 的网络参数配置
在仿真环境中,终端主机的配置主要通过图形化界面(GUI)完成。单击拓扑图中的 PC 图标,在弹出的属性窗口中选择"桌面(Desktop)"选项卡,进入"IP配置(IP Configuration)"模块,将获取方式设置为"静态(Static)"。
为了确保同网段能够互通,且跨网段能够成功寻址,必须严格按照以下参数为各台PC录入IPv4地址、变长子网掩码以及默认网关(即所在网络对应的路由器接口IP):
PC0: IPv4地址:192.168.0.1 ;子网掩码:255.255.255.128 ;默认网关:192.168.0.126
PC1: IPv4地址:192.168.0.125 ;子网掩码:255.255.255.128 ;默认网关:192.168.0.126
PC2: IPv4地址:192.168.0.129 ;子网掩码:255.255.255.128 ;默认网关:192.168.0.254
PC3: IPv4地址:192.168.0.253 ;子网掩码:255.255.255.128 ;默认网关:192.168.0.254
操作避坑提示: 在输入IPv4地址后,系统通常会自动填充标准的C类子网掩码(255.255.255.0)。在此处必须手动将其修改 为我们计算得出的
255.255.255.128,否则将导致网络边界判定失败。

4.2 路由器 (Router0) 接口的CLI配置与激活
真实商用路由器通常通过命令行界面(CLI,Command Line Interface)进行管理。在仿真软件中,单击 Router0 并进入"CLI"选项卡即可模拟控制台终端配置。
Cisco IOS操作系统的命令行具有严格的层级模式。我们需要依次从"用户执行模式"进入"特权执行模式",再进入"全局配置模式",最后进入特定的"接口配置模式"来下发IP地址并激活物理接口。完整配置命令与释义如下:
Router>enable //从用户执行模式进入特权执行模式
Router#configure terminal //从特权执行模式进入全局配置模式
Router(config)#interface GigabitEthernet0/0 //从全局配置模式进入接口Gig0/0的配置模式
Router(config-if)#ip address 192.168.0.126 255.255.255.128 //给接口Gig0/0配置IP地址和子网掩码
Router(config-if)#no shutdown //开启(激活)接口
Router(config-if)#interface GigabitEthernet0/1 //进入接口Gig0/1的配置模式
Router(config-if)#ip address 192.168.0.254 255.255.255.128 //给接口Gig0/1配置IP地址和子网掩码
Router(config-if)#no shutdown //开启(激活)接口
配置验证: 执行完 no shutdown 命令后,软件界面中 Router0 连接两端交换机的物理链路指示灯应由红色的阻塞状态变为绿色的连通状态,这标志着路由器接口已成功激活,网络已具备进行IP层连通性测试的硬件基础。

五、 网络连通性测试与抓包分析
在完成所有网络设备的物理连接与网络层参数配置后,网络已具备理论上的连通基础。本节将通过 Ping 测试工具,结合协议抓包分析,直观验证同网段与跨网段的数据交互过程。
5.1 测试环境准备与协议监视
为了排除网络中其他背景报文(如 STP 树脂生成协议、CDP 发现协议等)的视觉干扰,准确追踪测试数据包(PDU)的交互轨迹,我们需要对 Packet Tracer 的抓包环境进行针对性设置:
(1)切换至模拟工作模式 (Simulation Mode)
单击软件界面右下角的"Simulation(模拟)"选项卡(或按快捷键 Shift + S),将软件从默认的"实时工作模式(Realtime)"切换至"模拟工作模式"。在此模式下,网络时间会被冻结,允许我们按事件轴逐帧(Step-by-step)查看数据包在各个节点上的封装、解封装与转发路径。
(2)配置事件过滤器 (Event List Filters)
在界面右侧弹出的仿真面板(Simulation Panel)中,执行以下操作来设置协议白名单:
-
清空默认项: 点击面板下方的
Show All/None按钮,清空系统默认监视的所有网络协议。 -
精确勾选: 点击
Edit Filters(编辑过滤器)按钮,在弹出的面板中切换至 IPv4 选项卡。 -
选择目标协议: 勾选 ICMP(网际控制报文协议,即 Ping 命令使用的基础协议)。
实验进阶提示: 为了在后续步骤中能够直观观察并解释跨网段通信时常见的"首包超时"现象,建议在此处同时勾选 ARP(地址解析协议)。这样可以在抓包列表中完整记录下计算机寻找默认网关 MAC 地址的解析全过程。

5.2 同网段与跨网段连通性测试
在配置完毕后,我们需要通过终端控制台的 ping 命令(基于 ICMP 协议)来验证网络行为。在实时工作模式(Realtime)下,打开 PC0 的命令行界面(Command Prompt),分别进行以下两组关键测试:
(1)同网段连通性测试
在 PC0 的命令行中输入命令:ping 192.168.0.125(测试与 PC1 的连通性)。
实验现象: 终端显示向目标 IP 发送了 4 个长度为 32 字节的数据包,并连续收到 4 次 Reply 应答。统计结果显示 Sent = 4, Received = 4, Lost = 0 (0% loss)。
结论: PC0 与 PC1 处于同一逻辑子网,数据包由底层的二层交换机(Switch0)直接完成内部转发,无需经过路由器,网络拓扑内部构建成功。
(2)跨网段连通性测试
在 PC0 的命令行中输入命令:ping 192.168.0.129(测试与跨网段主机 PC2 的连通性)。
实验现象: 第一个 ICMP 数据包显示为 Request timed out.(请求超时) ;紧接着的第 2 至第 4 个数据包成功收到 Reply 应答。统计结果显示 Lost = 1 (25% loss)。
补充测试: 紧接着再次执行 ping 192.168.0.129,此时 4 个数据包全部成功返回,丢包率为 0%。
结论: PC0 与 PC2 属于不同子网,通信成功证明了路由器 Router0 及其网关配置正确,成功实现了跨网段的数据路由转发。

5.3 异常现象分析:首包超时与 ARP 协议机制
在 5.2 节的跨网段测试中,首次 ping 总是会出现第一个数据包超时的现象,这并非网络故障,而是由地址解析协议(ARP,Address Resolution Protocol)的工作机制与跨网段通信规则决定的。
深度原理解释:
-
ARP 的局限性(不能跨越广播域): ARP 协议是通过发送二层广播报文来查询目标 IP 对应的 MAC 地址的。由于路由器默认会隔离广播包,因此 ARP 报文绝对不能跨越网络(跨越路由器)直接使用。
-
网关的介入: 当 PC0 准备向 PC2(192.168.0.129)发送数据时,首先会通过对比子网掩码,发现目标 IP 与自己不在同一网段。因此,PC0 知道必须将数据包交由默认网关(Router0 的 Gig0/0 接口,IP为 192.168.0.126)进行代为转发。
-
解析网关 MAC 与首包超时: PC0 在封装数据帧时,需要网关的 MAC 地址。如果其本地 ARP 缓存表中没有网关的 MAC 记录,PC0 必须先在当前子网内广播发送 ARP Request 请求,以获取路由器的 MAC 地址。
-
超时发生: 在路由器接收并回复 ARP Reply 的这段时间里,PC0 的第一个 ICMP 报文处于等待封装状态。由于等待时间超过了 ICMP 设置的超时阈值,该报文被系统丢弃,从而产生
Request timed out.。 -
后续通信顺畅: 当 PC0 成功获取并缓存了网关的 MAC 地址后,后续的第 2、3、4 个 ICMP 报文以及随后的第二次
ping测试,便可以直接封装并发送给路由器进行跨网段路由,不再产生延迟与丢包。

六、 拓展验证:交换机与路由器的网络层级对比
在第5节的测试中,我们已经证实了路由器能够成功转发跨网段的数据包。为了进一步加深对"逻辑子网隔离"这一概念的理解,我们将采用反证法(替换核心设备),验证另一个关键结论:不同IP网络之间的通信,绝不能仅仅依靠二层交换机,必须通过三层路由器互连。
6.1 验证方案设计(拓扑改造)
-
移除三层设备: 在逻辑工作区中,删除核心节点 Router0。
-
接入二层设备: 拖入一台 2960-24TT 系列交换机(命名为 Switch2),放置在原路由器的位置。
-
重建物理链路: 使用直通双绞线,将 Switch0 和 Switch1 分别连接至中间的 Switch2。
现象观察: 经过短暂的 STP(生成树协议)收敛后,所有交换机的级联端口指示灯均变为绿色。此时,网络拓扑在物理层和数据链路层(二层)上已经完全打通,四台 PC 被置于同一个巨大的物理广播域内。

6.2 深度连通性测试与现象记录
回到 PC0 的命令行界面(Command Prompt),重新执行以下两组连通性测试:
(1)同网段连通性测试(PC0 -> PC1)
-
输入命令:
ping 192.168.0.125 -
实验现象: 测试成功。PC0 连续收到 4 次
Reply应答,丢包率为 0%(如图所示)。 -
底层原理解析: PC0(192.168.0.1)与 PC1(192.168.0.125)配置的子网掩码均为
255.255.255.128。PC0 的操作系统在发送数据前进行"与(AND)"运算,判定目标 IP 与自己在同一个逻辑子网内。因此,PC0 直接在物理网络中广播 ARP Request 请求 PC1 的 MAC 地址。因为交换机(Switch0)透传同网段的广播帧和单播帧,双方顺利完成寻址与数据交互。
(2)跨网段连通性测试(PC0 -> PC2)
输入命令: ping 192.168.0.129
实验现象: 测试彻底失败。终端连续 4 次显示 Request timed out.,统计显示收到 0 个应答,丢包率 100%(如图红框所示)。
原理解析(为什么物理线连着却不通?):
- 网段判定隔离: PC0(192.168.0.1)通过子网掩码计算出目标 PC2(192.168.0.129)属于另一个子网(网络号为 192.168.0.128)。
- 强制请求网关: 遵循 TCP/IP 协议栈规则,当目标主机在异构网络时,PC0 绝对不会 直接去请求 PC2 的 MAC 地址,而是强制将数据包交给"默认网关"(设定为
192.168.0.126)代为转发。 - ARP寻址失败: PC0 在网络中发送 ARP 广播,大喊:"谁的 IP 是 192.168.0.126?请把 MAC 地址告诉我!"
- 死胡同: 尽管中间的交换机(Switch2)将这个 ARP 广播传遍了整个物理网络,但由于我们已经移除了路由器,网络中没有任何设备的 IP 是 192.168.0.126。
- 超时丢弃: PC0 迟迟等不到网关的 MAC 地址响应,无法将 ICMP 数据包封装成以太网数据帧,最终只能将驻留在内存中的 4 个 Ping 测试包逐一丢弃,抛出 100% 的超时错误。


6.3 实验最终结论
通过上述正反两方面的详尽测试与抓包分析,本实验严谨地得出了以下核心结论:
-
同一 IP 网络中的计算机(如 PC0 与 PC1,PC2 与 PC3),其物理链路只要被集线器或交换机连通,即可依靠自身的 ARP 机制直接通信。
-
不同 IP 网络中 的计算机(如 PC0 与 PC2),受到终端 IP 路由逻辑的严格限制,不能跨网络直接使用 ARP ,也无法仅通过二层交换机完成通信。
-
要实现跨越逻辑网络边界的数据交互,必须依赖配置了正确网关 IP 的第三层设备(路由器)进行寻址与解封装/重新封装的路由转发。