简介:这是一份计算机网络课程「以太网组网实验」的完整实验报告文档,适合高校网络相关专业学生、实验课程学习者参考。文档以福建农林大学实验报告模板为框架,围绕局域网组网基础操作展开,内容涵盖实验目的、环境与设备、详细实验步骤、总结及练习思考,可帮助读者快速掌握TCP/IP协议参数查看、ping连通性测试、tracert路由跟踪以及Packet Tracer模拟组网等核心技能。资源为单个doc文档,总大小仅364KB,轻量易用,可直接查看或按需修改。目前已有118人学习使用。文档中不仅有命令执行结果与问题分析,还对IP地址分类、默认网关判断、TTL值对应操作系统类型等知识点做了细致记录,能够辅助读者边做实验边理解网络原理;练习与思考部分还提供了ping参数含义及局域网拓扑观察的拓展方向,适合作为实验预习、报告撰写或复习备考的参考资料。
1. 以太网组网实验到底在做什么:先看懂实验目标再动手
拿到“计算机网络 实验一 以太网组网实验”这份实验文档时,很多人的第一反应是“把几台电脑插上交换机,配个IP,能连上就完事”。等真上手你才会发现,“能通”和“组网成功”差着三层东西:物理层的线缆和端口协商、数据链路层的交换表与VLAN、网络层的IP与网关。这个实验是计算机网络基础课程里最靠前的一个门槛,目的不是让你背命令,而是让理论课里的CSMA/CD、MAC地址学习、广播泛洪这些概念,在你的指尖真实地跑一遍。
适合做这个实验的人主要有两类:学计算机网络课程、感觉概念抽象的学生,以及刚转行运维、需要补以太网实际组网动作的工程师。做完之后你至少要能做到三件事:看懂端口状态并判断链路通断、在两台以上主机间正确规划并配置IP、能沿着物理层到网络层的顺序独立排障。
2. 拓扑设计与设备规划:组网之前先把三张表画清楚
以太网组网实验看起来是个纯动手的活,但大半成败在动手前五分钟就定了。不管是真机实训还是Cisco Packet Tracer一类的仿真环境,我先不看命令,先拿出纸把三张表画出来:设备角色表、端口规划表、IP规划表。很多翻车现场都是在规划阶段埋下的雷,等到ping不通才回来改地址,整个实验记录也就跟着乱了。
2.1 拓扑选型:直连、单交换机星型还是多交换机级联
以太网组网的拓扑选择,本质上是跟着“站点数量和隔离要求”走。最小场景是两台PC直连,连一根网线就能互通,但验证不了交换机的价值。课程里最常见的组合是一台交换机加三到四台PC的星型拓扑,所有站点同一个网段,交换表的自学习、广播泛洪、碰撞域隔离都在这个拓扑里能看全。更接近真实网络的是多交换机级联:接入层多台交换机各挂几个PC,上行到汇聚层交换机,级联口通常还要做trunk。
| 拓扑 | 典型设备 | 验证重点 | 实验难度 |
|---|---|---|---|
| 双机直连 | 两台PC、一根网线 | 物理层协商、IP互通 | 最低 |
| 单交换机星型 | 一台交换机、多台PC | MAC表学习、广播泛洪 | 中等 |
| 多交换机级联 | 多台交换机、多台PC | 级联、VLAN跨设备 | 较高 |
这里要破除一个常见误解:多台PC挂在同一台交换机上,并不会因为“主机多了”就更容易出问题。交换机天然隔离冲突域,一台24口交换机挂20台PC跟挂3台PC,对单播转发的逻辑没有本质区别。真正难的是多交换机级联时,级联口既要承载上游流量,又要注意不能连出环路。如果实验文档里没给拓扑图,按课程进度判断:前几周的同网段实验通常是单交换机星型,后续跨网段实验才引入路由器。
2.2 三张规划表:设备角色、端口和IP怎么填不出乱子
动手接线前,我习惯先把三张表落到文本里。第一张是设备角色表:每台PC的主机名、操作系统、在拓扑里的位置、网卡型号。第二张是端口规划表:交换机每个端口接哪个对端设备、端口号、对端端口、期望速率和双工模式。第三张是IP规划表,它直接决定哪台设备能和哪台设备说话。
| 设备 | IP地址 | 子网掩码 | 默认网关 | 接入端口 |
|---|---|---|---|---|
| PC-A | 192.168.1.10 | 255.255.255.0 | 192.168.1.254 | SW1 Fa0/1 |
| PC-B | 192.168.1.11 | 255.255.255.0 | 192.168.1.254 | SW1 Fa0/2 |
| PC-C | 192.168.2.10 | 255.255.255.0 | 192.168.2.254 | SW1 Fa0/3 |
| 路由器R1 | 192.168.1.254 / 192.168.2.254 | 255.255.255.0 | — | 两个接口分属两个网段 |
这里要专门提醒默认网关那一列。如果实验只要求同网段互通,网关确实可以留空,因为同网段通信靠ARP广播找对端MAC,不经过路由转发;但一旦要求PC-A跨网段访问PC-C,数据包必须先到达网关192.168.1.254,再由路由器转发到192.168.2.0网段。网关漏填或填错,跨网段访问永远不通,而你反复在PC上改IP地址是解决不了问题的。这些表还有一个隐藏作用:写实验报告时可以把“规划→实施→验证”逐项对照,避免截图堆了一堆却说不清哪台机器接哪个口。
2.3 线缆选型与端口协商:直通线、交叉线和Auto MDI-X怎么判断
线缆这一块,实验指导书最常见的考点是“同种设备用交叉线,异种设备用直通线”。PC连交换机是异种设备,用直通线;PC连PC是同种设备,用交叉线。这条规则在老设备上严格成立,放到支持Auto MDI-X的新网卡上就不再绝对——新设备会自动翻转收发线序,直通线交叉线都能识别。所以遇到新设备互联不通,先别急着换线型,而是先确认端口状态是不是已经link up。
另一个更值得关注的参数是speed和duplex的协商结果,它们决定这条链路实际能跑多快:
| 端口参数 | 实验环境推荐值 | 说明 |
|---|---|---|
| speed | 与对端一致,常见100或1000 | 不一致时链路可能直接down或自动降速 |
| duplex | full | half会带来大量冲突,吞吐量明显下降 |
| auto MDI-X | 默认开启 | 老设备之间不通时,手动换线或关闭自动协商 |
在交换机上执行show interfaces fastEthernet 0/1,输出里的“100Mb/s,Full”就是协商后的最终结果。如果显示“10Mb/s,Half”,说明对端能力或线缆质量拖了后腿,不是配置命令写错。把期望值提前写在规划表里,配完直接对照,等于给链路做了一次快速体检。
3. 把组网配通:交换机与主机侧的最小配置命令
配置阶段的目标不是“敲很多命令”,而是“链路up、ARP学到、ICMP能过”这三件事都能拿到证据。下面的命令以Cisco IOS的写法为例,Packet Tracer里同样适用,真机命令也基本兼容,只是端口命名方式会随型号略有差异。
3.1 交换机最小配置:改名、接口速率与no shutdown
用一台交换机当实验核心,接两台PC,第一步是给交换机起可读名、把接PC的端口参数固定下来:
Switch> enable Switch# configure terminal Switch(config)# hostname SW-LAB1 SW-LAB1(config)# interface fastEthernet 0/1 SW-LAB1(config-if)# speed 100 SW-LAB1(config-if)# duplex full SW-LAB1(config-if)# no shutdown SW-LAB1(config-if)# exit SW-LAB1(config)# interface fastEthernet 0/2 SW-LAB1(config-if)# speed 100 SW-LAB1(config-if)# duplex full SW-LAB1(config-if)# no shutdown SW-LAB1(config-if)# end SW-LAB1# copy running-config startup-config这段命令做了五件事:把交换机改名成SW-LAB1,方便实验记录区分设备;对Fa0/1和Fa0/2分别配置百兆全双工,避免自动协商失败;用no shutdown确保端口处于启用状态,Cisco端口默认启用,但写上更保险;退出接口配置;最后把running-config保存到startup-config,实验中途断电不会丢配置。
speed和duplex必须在接口配置模式下写,值要与对端网卡能力匹配。如果对端是千兆网卡,这里却写成speed 100,链路能通但永远跑不满。配置完用show interfaces status查看结果,理想状态下连接口都显示connected;如果显示notconnect,先别急着配VLAN,回头查网线和PC网卡状态,这是物理层没过。
3.2 VLAN划分与access端口:把PC分组隔离的常用命令
课程实验做到中后段,通常要求把不同用途的PC隔开。最小做法是创建两个VLAN,把需要互通的PC放进同一个VLAN:
SW-LAB1(config)# vlan 10 SW-LAB1(config-vlan)# name OFFICE SW-LAB1(config-vlan)# exit SW-LAB1(config)# vlan 20 SW-LAB1(config-vlan)# name LAB SW-LAB1(config-vlan)# exit SW-LAB1(config)# interface range fastEthernet 0/1-2 SW-LAB1(config-if-range)# switchport mode access SW-LAB1(config-if-range)# switchport access vlan 10 SW-LAB1(config-if-range)# exit SW-LAB1(config)# interface fastEthernet 0/3 SW-LAB1(config-if)# switchport mode access SW-LAB1(config-if)# switchport access vlan 20 SW-LAB1(config-if)# exit原理上,VLAN在数据链路层切分广播域:VLAN 10的ARP广播不会跨进VLAN 20的端口,两边在二层互相看不见。如果PC-C配的是192.168.1.0网段的地址,却被划在VLAN 20里,它能ping通同一个VLAN里的机器,但ping不通VLAN 10里的PC-A。interface range一次选多个端口可以减少重复劳动;旧版本IOS如果不支持range写法,就逐个端口重复写两行,别偷懒。
验证时用show vlan brief,输出的表格里同时显示VLAN编号、名称和所属端口,和规划表逐行对比,漏端口、错VLAN一眼就能看出来。如果你做的是跨交换机VLAN,交换机之间还要加switchport mode trunk,否则两台交换机上相同VLAN的端口同样无法二层互通,这是多交换机级联实验里最容易漏的细节。
3.3 主机侧IP配置与批量验证脚本:别让手敲ping漏了机器
交换机配完,主机侧通常是图形化操作:Windows用户改“Internet协议版本4”属性,模拟器用户点PC的IP Configuration,把IP、掩码、网关填进对应输入框。填完第一件事不是开ping,而是用ipconfig /all(Windows)或ip addr(Linux)核对实际生效地址和规划表是否一致。
PC数量一多,逐台手敲ping很容易漏。我在实验收尾时习惯用一段Python脚本,把同网段所有目标批量测一遍:
#!/usr/bin/env python3 # 组网实验连通性回归脚本:逐个目标ping,把状态和时间戳写入日志 import subprocess import datetime targets = ["192.168.1.10", "192.168.1.11", "192.168.2.10"] now = datetime.datetime.now() log_name = f"ping_{now:%Y%m%d_%H%M%S}.txt" with open(log_name, "a", encoding="utf-8") as f: for ip in targets: # Windows: ping -n 4;Linux/macOS: ping -c 4 proc = subprocess.run(["ping", "-n", "4", ip], capture_output=True, text=True) if proc.returncode == 0: status = "OK" else: status = "FAIL" f.write(f"[{status}] {ip}\n") print(status, ip) print(f"结果写入 {log_name}")这段脚本的逻辑很直接:循环遍历目标IP,用subprocess调用系统ping,返回码0表示至少有一个响应,非0表示完全不通。它的价值在于能生成一份带时间戳的存证文件,写进实验报告时比口说“我ping过”更有说服力。两个细节容易踩坑:Windows的ping参数是-n,Linux是-c,脚本移植要改一处;脚本只记录成败未解析延迟,如果实验要求记录时延,需要再对stdout文本做解析,一般验证阶段不必做到那一步。
3.4 链路验证的次序逻辑:up/up、ARP再到ICMP
配完之后的验证顺序,我建议固定按“物理层→数据链路层→网络层”走。第一步在交换机上查端口状态,show interfaces status确认两端connected;第二步在PC上敲arp -a,看有没有学到对端IP对应的MAC;第三步才ping。每一层都要拿到独立证据,不要在不对的层上浪费时间。
有个老手也容易忽略的事实:如果两台PC不在同一个子网但路由配置正确,ping也会通。于是很多人看到“通了”就跳过ARP检查,等到同一个VLAN里其他机器无法互通时,才意识到ARP在二层的隔离问题根本没解决。把每一层验证当成独立的证据链,排障日志就不再是猜谜。
4. 组网实验避坑清单:五个常见的失败场景与排查思路
这一章收的是在真机和模拟器里反复出现的五类问题。每一条按“现象→原因→解决”的顺序写,可以直接照做。组网实验里那些耗时间的debug,大多不是某条命令敲错,而是少看了一层状态。
4.1 PC互相ping不通但交换机端口显示up/up
现象:交换机端口状态是connected,PC网卡也显示拿到了IPv4地址,但两台PC之间ping始终超时。
原因有两个方向。第一是IP规划错位:一台配/24、另一台配/16,两边对“目标是否在同网段”的判断不一致,ARP请求根本不会发到对方网卡。第二是防火墙拦截:Windows默认防火墙会过滤ICMP回显请求,ping一发出去就被丢掉,看起来像“玄学不通”。
解决时先分两层看。在PC上执行arp -a看有没有学到对端MAC:两边都没学到,多半是IP或掩码问题,把两台PC改成同网段再试;能学到MAC但ping不通,到Windows防火墙里临时放行“文件和打印机共享(回显请求)”规则,验证完再关回去。这里最忌讳的是绕开ARP直接去改IP,改了半天发现是防火墙拦的,白忙一场。
4.2 链路显示千兆,吞吐量却连百兆都跑不满
现象:交换机端口协商结果是1000M全双工,但PC之间复制一个100MB文件要花半分钟。
原因基本都是双工模式不匹配:一端是forced full,另一端是auto,链路虽然up,但满载时产生大量延迟冲突,交换机侧的错误计数器持续累加,链路却一直不down,表面看起来就是一台“通但慢”的设备。
解决方法是先在交换机上执行show interfaces fastEthernet 0/1,重点看Errors字段。如果确有持续增长的alignment errors或FCS errors,把两端接口都固定成同样的speed和duplex,比如都写speed 100和duplex full,再重新传一次文件。错误计数清零后,要在“再次传输之后”再看一遍,因为错误是否继续增长才是协商修复成功的判据。这个坑在模拟器里几乎不存在,因为仿真不模拟碰撞和错误计数,所以真机实验碰到这类问题最容易懵。
4.3 模拟器配置完全一致,真机却怎么都不通
现象:Packet Tracer里同样的拓扑、同样的命令能ping通,搬到真机上链路指示灯也亮,但ping就是不通,或者时通时断。
原因要从模拟器的局限说起。Packet Tracer这类工具把物理层大幅简化,不模拟线缆长度、水晶头氧化、端口老化、Auto MDI-X协商失败等真实因素。模拟器里跑通只能证明“配置逻辑没问题”,不能证明“这条物理链路站得住”。
解决方法是真机排障时把重心前置到物理层:先看交换机和PC网卡的指示灯,再登录交换机确认link状态,仍不通就逐段替换网线。平时训练可以用模拟器练命令和思路,实训验收前一定留时间给真机通电自检。如果用VirtualBox等虚拟机做实验,还要多考虑一层:虚拟网卡的桥接模式、宿主机防火墙都可能把“看起来配好了”的链路拦在虚拟机外面,不要一上来就怀疑交换机。
4.4 划了VLAN之后,同一个VLAN里的PC反而失联
现象:按指导书把四台PC分成两组,结果同一组的两台PC互相ping不通,连ARP也看不到对方。
原因绝大多数出在“端口没划进VLAN”,而不是VLAN本身。很多人创建了VLAN 10和VLAN 20,以为两个VLAN建好就生效,却忘了把PC实际连接的交换机端口切到对应access vlan。端口默认留在VLAN 1,于是VLAN 10里的PC对端端口还在默认VLAN 1,二层广播不会跨VLAN转发,同组PC自然互相隐身。
解决方法是执行show vlan brief,看每个VLAN下面到底绑定了哪几个端口,再和规划表逐一对照,把漏掉的端口用switchport access vlan 10补进去。在模拟器里还有一种隐藏情况:画布上PC图标位置看起来在某个VLAN分组里,实际连接关系取决于拖的那条网线和端口编号——只看画布分组不看端口表,会被视觉骗过。
4.5 路由器接口能通但PC网关丢包
现象:跨网段实验里,PC-A能ping通路由器与自己同侧的接口地址,但ping对端网段的PC时直接超时或丢包。
原因通常是两个问题之一:路由器对端接口忘记执行no shutdown,或者路由表缺一条去往对端网段的条目。前者表现为接口处于administratively down状态,端口IP配置了但不可用;后者表现为路由器收到发往对端网段的包,查路由表找不到下一跳,只能丢弃。
解决方法是先在路由器上执行show ip interface brief,确认所有相关接口都是up/up;发现administratively down就进入接口补一条no shutdown。然后执行show ip route看有没有“192.168.2.0/24”之类的条目,没有就补静态路由ip route 192.168.2.0 255.255.255.0 192.168.1.254。如果接口和路由都正常但仍丢包,再打开debug ip packet确认有没有包到达入接口——这个命令会刷屏,抓到几条日志就关掉,别让它一直开着拖累设备。
5. 实验验收不只看ping:三个动作把组网质量做成可信
课程实验验收时,老师通常检查“PC之间能ping通”就算通过。但如果你把ping通当作终点,就放弃了验证链路的稳定性与吞吐量。组网实验最常见的隐性翻车是“ping时通、传文件断流”,根因往往在物理层协商或双工参数。我现在每次收工前,都会额外做三件事,让结论更可信。
第一件是持续性ping。Windows下用ping -t,Linux下用ping -i 1,连续跑一到两分钟,观察丢包率和延迟抖动。只要出现丢包,记录下发生时刻,到交换机看当时端口错误计数器,通常能抓到确凿证据。第二件是实际文件传输。两台PC之间拉一个几十MB的文件,用脚本计时算出实际吞吐量:百兆端口应该跑到80~95Mbps,如果只有二三十Mbps,回头按第四章的顺序查双工和错误计数。第三件是清ARP缓存再验证。Windows下arp -d *,Linux下ip neigh flush all,清空后重新ping一次,确认连通不是靠旧的ARP缓存条目撑起来的——这步最容易被忽略,却是检验IP配置是否真正生效的关键。
这三个动作做完,实验报告里能写的就不是一句“网络连通”,而是有丢包率、有实测吞吐量、有ARP学习过程的完整记录。我自己的习惯,是每次组网实验结束前,把show vlan brief、show interfaces status、arp -a的输出保存成文本,连同三张规划表一起放进实验文件夹。这个习惯救过我很多次——下一轮实验要改配置时,不用猜上一轮到底动了哪个端口。
希望这篇以太网组网实验的实战笔记能帮你少走弯路。从物理层一路往上排查、在规划阶段把表和参数写清楚,这两件事做好了,组网实验的基本盘就不会塌。
本文还有配套的精品资源,点击获取