资讯详情

动态路由配置实验:从RIP到OSPF的完整复现与避坑指南

📅 2026/9/29 20:13:38 | 华诺云谱 👁 阅读
动态路由配置实验:从RIP到OSPF的完整复现与避坑指南
简介这份文档资料面向计算机网络课程的学习者与实验指导教师聚焦动态路由配置这一课程设计实验帮助读者理解动态路由的优缺点、适用范围并掌握用RIP与OSPF协议实现网络互通的方法。资源包内含1个docx文件约150KB内容以实验报告形式组织涵盖实验拓扑图、地址规划表、路由器基本设置命令、RIP与OSPF配置过程以及用show ip route查看路由表和ping测试连通性的验证环节并基于Cisco Packet Tracer 5.3平台展开。文档中给出了Lab_A与Lab_B两台路由器的接口配置、时钟速率设置、网络通告等具体命令示例便于对照操作与复盘。目前已有397人学习下载适合需要完成课程设计报告、巩固动态路由配置思路的读者参考借鉴。1. 动态路由配置实验从 RIP 到 OSPF 的完整复现路径带过几届课程设计之后我发现一个规律静态路由配得再熟一到动态路由实验还是容易翻车。原因不复杂——静态路由是「我告诉你路怎么走」动态路由是「路由器自己商量着走」中间多了一层协议交互的黑匣子。这份《计算机网络课程设计实验-动态路由配置》文档就是围绕这个黑匣子展开的用 Cisco Packet Tracer 5.3 搭一个双路由互联拓扑先跑 RIP再切 OSPF通过show ip route看路由表变化用ping验证端到端连通。适合正在做计网课设、准备实验报告、或者想补齐动态路由动手环节的人。文档本身是可自由复制编辑的 Word 格式命令和地址规划都写得很细照着敲基本能跑通但有几个地方原文没展开后面我会补上。2. 实验拓扑与地址规划先把地基打对2.1 拓扑结构拆解这个实验的拓扑不复杂两台路由器背靠背通过 Serial 口互联各自下挂一台交换机交换机再连 PC。具体来说Lab_A 的 fa0/0 接 192.168.10.0/24 网段Serial0/3/0 接 192.168.20.0/24 网段Lab_B 的 fa0/0 接 192.168.30.0/24 网段Serial0/3/0 也接 192.168.20.0/24 网段两台路由器的 Serial 口在同一个网段这是 WAN 链路PC0 和 PC1 在 Lab_A 侧网关指向 192.168.10.1PC2 和 PC3 在 Lab_B 侧网关指向 192.168.30.1。这个结构决定了路由器的路由表里必须同时出现直连网段和通过动态路由学到的远端网段否则跨网段 ping 不通。原文的地址规划表里PC0 写了 IP 和网关PC1 只写了 IP 没写网关PC2 和 PC3 同理。实际配置时每台 PC 都要配默认网关否则跨网段通信直接断在 PC 这一层。这个细节原文没强调但属于必做项。2.2 地址规划表与接口对应关系把原文的地址规划整理成一张清晰的表方便对照配置设备接口IP 地址子网掩码网关备注PC0fa192.168.10.2255.255.255.0192.168.10.1Lab_A 侧PC1fa192.168.10.3255.255.255.0192.168.10.1Lab_A 侧PC2fa192.168.30.2255.255.255.0192.168.30.1Lab_B 侧PC3fa192.168.30.3255.255.255.0192.168.30.1Lab_B 侧Lab_Afa0/0192.168.10.1255.255.255.0—LAN 网关Lab_ASerial0/3/0192.168.20.1255.255.255.0—DCE 端Lab_Bfa0/0192.168.30.1255.255.255.0—LAN 网关Lab_BSerial0/3/0192.168.20.2255.255.255.0—DTE 端这张表建议在 Packet Tracer 里配之前先抄一遍配完一个设备勾一个不然后面排错时容易搞混哪个口配了哪个地址。2.3 基础配置的完整命令原文给了 Lab_A 和 Lab_B 的基础配置这里把两台路由器的命令整理成可直接复制的形式并补上原文省略的注释。Lab_A 基础配置Router enable Router# configure terminal Router(config)# hostname Lab_A Lab_A(config)# enable secret cisco Lab_A(config)# interface fa0/0 Lab_A(config-if)# ip address 192.168.10.1 255.255.255.0 Lab_A(config-if)# description Lab_A LAN Connection Lab_A(config-if)# no shutdown Lab_A(config-if)# exit Lab_A(config)# interface serial0/3/0 Lab_A(config-if)# ip address 192.168.20.1 255.255.255.0 Lab_A(config-if)# description WAN Connection to Lab_B Lab_A(config-if)# clock rate 64000 Lab_A(config-if)# no shutdown Lab_A(config-if)# exit Lab_A(config)# exit Lab_A# copy running-config startup-configLab_B 基础配置Router enable Router# configure terminal Router(config)# hostname Lab_B Lab_B(config)# enable secret cisco Lab_B(config)# interface fa0/0 Lab_B(config-if)# ip address 192.168.30.1 255.255.255.0 Lab_B(config-if)# description Lab_B LAN Connection Lab_B(config-if)# no shutdown Lab_B(config-if)# exit Lab_B(config)# interface serial0/3/0 Lab_B(config-if)# ip address 192.168.20.2 255.255.255.0 Lab_B(config-if)# description WAN Connection to Lab_A Lab_B(config-if)# no shutdown Lab_B(config-if)# exit Lab_B(config)# exit Lab_B# copy running-config startup-config逻辑说明clock rate 64000只在 DCE 端配置Lab_A 是 DCELab_B 是 DTE所以 Lab_B 不需要这条命令。原文在 Lab_B 的 Serial 口配置里确实没写 clock rate这是对的。description是描述性文字不影响功能但方便后续排错时识别接口用途。copy running-config startup-config保存配置Packet Tracer 里不保存的话重启后配置全丢。参数说明clock rate 64000的单位是 bps64000 即 64 kbps这是 Packet Tracer 里 Serial 链路的常用时钟频率。实际设备上时钟频率由运营商侧设备提供这里因为是模拟环境DCE 端需要手动指定。提示Packet Tracer 里 Serial 口默认是 shutdown 状态配完 IP 后必须no shutdown否则链路协议起不来路由表里也不会出现直连网段。3. RIP 协议配置从 network 命令到 debug 输出3.1 RIP 的工作原理与选型理由RIP 是距离矢量路由协议用跳数作为度量值最大 15 跳16 跳视为不可达。它的工作方式很「佛系」每 30 秒把整张路由表广播给邻居邻居收到后跟自己表里的比跳数少的就更新。这个机制决定了 RIP 收敛慢但配置简单适合小型网络。这个实验选 RIP 作为第一个动态路由协议原因也在这——命令少逻辑直观适合理解「路由器怎么自己学路由」这件事。原文用的命令是route rip这里有个拼写问题正确命令是router rip少了一个 r。原文在 Lab_A 和 Lab_B 的 RIP 配置里都写成了route ripPacket Tracer 里敲route rip会报错必须敲router rip。这个坑后面避坑章节还会展开。3.2 RIP 配置步骤与命令Lab_A 的 RIP 配置Lab_A enable Lab_A# configure terminal Lab_A(config)# router rip Lab_A(config-router)# network 192.168.10.0 Lab_A(config-router)# network 192.168.20.0 Lab_A(config-router)# exit Lab_A(config)# exit Lab_A# debug ip ripLab_B 的 RIP 配置Lab_B enable Lab_B# configure terminal Lab_B(config)# router rip Lab_B(config-router)# network 192.168.20.0 Lab_B(config-router)# network 192.168.30.0 Lab_B(config-router)# exit Lab_B(config)# exit Lab_B# debug ip rip逻辑说明router rip进入 RIP 配置模式network命令的作用是宣告本路由器直连的网段。注意这里宣告的是网段地址不是接口地址。Lab_A 直连 192.168.10.0 和 192.168.20.0所以宣告这两个Lab_B 直连 192.168.20.0 和 192.168.30.0宣告这两个。两台路由器都宣告了 192.168.20.0这是它们交换路由信息的公共网段。debug ip rip打开 RIP 调试能看到路由器收发 RIP 报文的实时过程。原文在 Lab_A 和 Lab_B 上都执行了debug ip rip输出里会显示Sending v2 update to 224.0.0.9 via Serial0/3/0之类的信息。RIPv1 用广播更新RIPv2 用组播 224.0.0.9Packet Tracer 5.3 默认跑 RIPv1但 debug 输出里可能看到 v2 字样取决于版本设置。参数说明network后面跟的是主类网段RIPv1 不支持子网掩码所以只能宣告 A/B/C 类主网段。192.168.10.0、192.168.20.0、192.168.30.0 都是 C 类网段直接写网段地址即可。如果实验要求用 RIPv2需要加version 2命令并且network命令后可以跟子网。3.3 验证 RIP 路由表与连通性配置完成后在 Lab_A 上执行show ip route应该能看到C 192.168.10.0/24 is directly connected, FastEthernet0/0 C 192.168.20.0/24 is directly connected, Serial0/3/0 R 192.168.30.0/24 [120/1] via 192.168.20.2, 00:00:12, Serial0/3/0C表示直连R表示通过 RIP 学到的路由。[120/1]里 120 是 RIP 的管理距离1 是跳数。via 192.168.20.2表示下一跳是 Lab_B 的 Serial 口地址。在 Lab_B 上执行show ip route应该看到对称的结果C 192.168.30.0/24 is directly connected, FastEthernet0/0 C 192.168.20.0/24 is directly connected, Serial0/3/0 R 192.168.10.0/24 [120/1] via 192.168.20.1, 00:00:05, Serial0/3/0然后从 PC0 ping PC2ping 192.168.30.2第一次 ping 可能丢一两个包因为 ARP 解析需要时间之后应该稳定通。如果 ping 不通先检查 PC 的网关配了没有再检查路由表里有没有对端网段的路由。原文在 RIP 配置后执行了clear ip route但 Packet Tracer 里这个命令报% Incomplete command因为clear ip route后面需要跟*才能清空整个路由表。原文没写*所以命令没生效。这个不影响实验因为 RIP 路由本来就会自动学习不需要手动清。4. OSPF 协议配置从 RIP 切换到 OSPF 的完整过程4.1 OSPF 与 RIP 的核心差异OSPF 是链路状态路由协议跟 RIP 的距离矢量有本质区别。RIP 是「邻居告诉我什么我就信什么」OSPF 是「我把自己的链路状态告诉所有人每个人自己算最短路径」。这个差异带来几个实际影响第一OSPF 收敛快。RIP 要等 30 秒更新周期OSPF 触发更新拓扑一变立刻泛洪。第二OSPF 用开销作为度量值跟带宽挂钩RIP 只看跳数。第三OSPF 支持区域划分适合大型网络RIP 没有区域概念。第四OSPF 配置稍微复杂一点需要指定区域号。这个实验从 RIP 切到 OSPF目的是对比两种协议的路由表差异。原文的命令是先no router rip关掉 RIP再router ospf 1启动 OSPF进程号 1 是本地标识不影响邻居关系。4.2 OSPF 配置步骤与 network 命令Lab_A 的 OSPF 配置Lab_A enable Lab_A# configure terminal Lab_A(config)# no router rip Lab_A(config)# router ospf 1 Lab_A(config-router)# network 192.168.10.0 0.0.0.255 area 0 Lab_A(config-router)# network 192.168.20.0 0.0.0.255 area 0 Lab_A(config-router)# exit Lab_A(config)# exitLab_B 的 OSPF 配置Lab_B enable Lab_B# configure terminal Lab_B(config)# no router rip Lab_B(config)# router ospf 1 Lab_B(config-router)# network 192.168.20.0 0.0.0.255 area 0 Lab_B(config-router)# network 192.168.30.0 0.0.0.255 area 0 Lab_B(config-router)# exit Lab_B(config)# exit逻辑说明no router rip先关掉 RIP 进程避免两种协议同时跑导致路由表混乱。router ospf 1启动 OSPF进程号 1 只在本地有效两台路由器的进程号可以不同不影响邻居建立。network命令的格式跟 RIP 不同需要跟反掩码和区域号。参数说明0.0.0.255是反掩码对应 255.255.255.0 的子网掩码。反掩码的规则是 0 表示匹配1 表示忽略所以 0.0.0.255 表示前 24 位匹配后 8 位忽略。area 0是骨干区域OSPF 里所有区域必须跟骨干区域直连这个实验只有两台路由器全部放 area 0 即可。原文在 OSPF 配置里写的network 192.168.10.0 0.0.255.255 area 0反掩码是 0.0.255.255对应 255.255.0.0 的掩码。这个写法也能通因为 192.168.10.0/24 和 192.168.20.0/24 都在 192.168.0.0/16 范围内宣告 0.0.255.255 会把这两个网段都包含进去。但更精确的写法是 0.0.0.255只宣告 /24 网段。两种写法在实验里都能让 OSPF 邻居建立并交换路由但精确写法更符合规范。4.3 OSPF 验证命令与路由表对比配置完成后在 Lab_A 上执行show ip routeC 192.168.10.0/24 is directly connected, FastEthernet0/0 C 192.168.20.0/24 is directly connected, Serial0/3/0 O 192.168.30.0/24 [110/65] via 192.168.20.2, 00:00:23, Serial0/3/0O表示 OSPF 学到的路由[110/65]里 110 是 OSPF 的管理距离65 是开销值。开销的计算方式是参考带宽除以接口带宽Packet Tracer 里 Serial 口默认带宽 1544 kbps参考带宽 100 Mbps算出来约 64加上链路开销就是 65。在 Lab_B 上执行show ip routeC 192.168.30.0/24 is directly connected, FastEthernet0/0 C 192.168.20.0/24 is directly connected, Serial0/3/0 O 192.168.10.0/24 [110/65] via 192.168.20.1, 00:00:18, Serial0/3/0对比 RIP 的路由表OSPF 的路由条目管理距离从 120 变成 110度量值从跳数变成开销。这个差异在实验报告里是值得写一笔的。原文还提到用show ip ospf rip验证这个命令拼写有误正确的应该是show ip ospf或show ip ospf neighbor。show ip ospf显示 OSPF 进程信息show ip ospf neighbor显示邻居状态。邻居状态应该是FULL表示邻接关系建立完成。4.4 连通性测试与结果解读从 PC0 ping PC2ping 192.168.30.2OSPF 收敛后ping 应该稳定通。如果第一次 ping 丢包等几秒再 pingOSPF 邻居建立需要时间。如果一直不通检查show ip ospf neighbor看邻居状态是不是 FULL如果不是检查两边的 area 号是否一致、network 命令是否宣告了正确的网段。从 PC0 tracert PC2tracert 192.168.30.2输出应该显示两跳第一跳 192.168.10.1Lab_A 的 fa0/0第二跳 192.168.20.2Lab_B 的 Serial 口然后到达 192.168.30.2。这个路径验证了数据包确实经过了两台路由器。5. 避坑与排查动态路由实验里最容易翻车的五个点5.1 现象敲route rip报错提示 Invalid input原因原文里写的是route rip少了一个 r。Cisco IOS 的正确命令是router riproute是查看路由表的命令不是进入路由协议配置模式的命令。解决把route rip改成router rip。同理route ospf 1也要改成router ospf 1。这个拼写错误在原文里出现了两次Lab_A 和 Lab_B 的 RIP 配置都写错了照着原文敲必然报错。5.2 现象clear ip route报% Incomplete command原因clear ip route后面需要跟参数单独敲不完整。原文在 RIP 和 OSPF 配置后都执行了这个命令但都没跟*所以命令没生效。解决如果要清空整个路由表用clear ip route *。但在动态路由实验里这个命令其实不需要执行因为 RIP 和 OSPF 会自动更新路由表。如果只是想看路由表变化直接show ip route就行。5.3 现象PC 之间 ping 不通但路由器之间能 ping 通原因PC 的默认网关没配。原文的地址规划表里PC1、PC2、PC3 的网关栏是空的只有 PC0 写了网关。如果只配 IP 不配网关PC 发往其他网段的数据包不知道交给谁直接丢弃。解决在 Packet Tracer 里点开每台 PC 的 Desktop - IP Configuration把 Default Gateway 填上对应网段的网关地址。PC0 和 PC1 填 192.168.10.1PC2 和 PC3 填 192.168.30.1。5.4 现象OSPF 邻居状态卡在 EXSTART 或 EXCHANGE原因两边接口的 MTU 不匹配或者一边配了 OSPF 一边没配。Packet Tracer 里 Serial 口默认 MTU 是 1500一般不会不匹配更常见的是 network 命令宣告的网段不对导致 OSPF 没在正确的接口上启用。解决用show ip ospf interface serial0/3/0查看接口的 OSPF 状态确认接口在正确的 area 里。再用show ip ospf neighbor看邻居状态如果是 EXSTART检查两边接口的 MTU 是否一致如果是 INIT检查一边是否收到了另一边的 Hello 包但没建立双向通信。5.5 现象RIP 学到的路由条目时有时无原因RIP 的更新周期是 30 秒如果 debug 输出里看到路由条目频繁出现和消失可能是链路不稳定或者配置了passive-interface导致某个接口不发 RIP 更新。解决检查show ip protocols看 RIP 的 network 宣告是否正确检查接口是否被设为 passive。Packet Tracer 里链路一般稳定如果出现路由抖动先检查 Serial 口的show interface serial0/3/0看有没有 CRC 错误或丢包。6. 从实验到实战动态路由验证的进阶技巧6.1 用show ip protocols快速定位协议配置问题show ip route看的是结果show ip protocols看的是配置本身。这个命令会列出当前运行的路由协议、network 宣告了哪些网段、管理距离、更新计时器等信息。在排错时先跑这个命令确认协议配对了没有比直接看路由表更高效。比如 RIP 配置后执行show ip protocols输出里会显示Routing Protocol is rip Sending updates every 30 seconds, next due in 12 seconds Invalid after 180 seconds, hold down 180, flushed after 240 Outgoing update filter list for all interfaces is not set Incoming update filter list for all interfaces is not set Redistributing: rip Default version control: send version 1, receive version 1 Interface Send Recv Triggered RIP Key-chain FastEthernet0/0 1 1 Serial0/3/0 1 1 Automatic network summarization is in effect Maximum path: 4 Routing for Networks: 192.168.10.0 192.168.20.0 Routing Information Sources: Gateway Distance Last Update 192.168.20.2 120 00:00:18 Distance: (default is 120)这里能看到 RIP 的计时器、宣告的网段、邻居地址和最后更新时间。如果Routing for Networks里少了某个网段说明 network 命令没配全。6.2 用debug ip ospf adj观察邻居建立过程OSPF 邻居建立分几个状态DOWN - INIT - 2WAY - EXSTART - EXCHANGE - LOADING - FULL。用debug ip ospf adj能看到状态迁移的实时输出对理解 OSPF 握手过程很有帮助。在 Lab_A 上执行Lab_A# debug ip ospf adj然后clear ip ospf process重启 OSPF 进程观察 debug 输出。正常的话会看到从 DOWN 到 FULL 的完整过程。如果卡在某个状态debug 输出会告诉你卡在哪一步比如一直停在 EXSTART 说明 MTU 不匹配停在 2WAY 说明 DR/BDR 选举有问题。6.3 路由重分发让 RIP 和 OSPF 共存这个实验是二选一先跑 RIP 再切 OSPF。实际网络里可能两种协议共存需要路由重分发。在边界路由器上把 RIP 学到的路由注入 OSPF或者反过来。配置示例在 Lab_A 上把 RIP 重分发进 OSPFLab_A(config)# router ospf 1 Lab_A(config-router)# redistribute rip subnets Lab_A(config-router)# exit Lab_A(config)# router rip Lab_A(config-router)# redistribute ospf 1 metric 2 Lab_A(config-router)# exitredistribute rip subnets把 RIP 路由注入 OSPFsubnets关键字表示包含子网路由。redistribute ospf 1 metric 2把 OSPF 路由注入 RIPmetric 2指定跳数因为 RIP 不认识 OSPF 的开销值必须手动指定种子度量。这个技巧在实验报告里可以作为扩展内容写体现对动态路由的理解深度。6.4 验证方法从 ping 到 tracert 到路由表交叉验证单靠 ping 通不能说明路由配置没问题因为可能走了默认路由或者静态路由。完整的验证应该三步走第一步show ip route确认路由表里有对端网段的动态路由条目且协议标记正确R 或 O。第二步ping确认端到端连通。第三步tracert确认数据包走的路径跟路由表一致。如果 ping 通但 tracert 显示的路径跟预期不符说明路由表里有更优的路径或者有默认路由兜底。这时候要检查show ip route里有没有S* 0.0.0.0/0这样的默认路由如果有先删掉再测。从那以后我每次做动态路由实验都强制走一遍「show ip protocols - show ip route - ping - tracert」的流程不跳步。这个习惯帮我省了很多来回折腾的时间。希望帮到你。本文还有配套的精品资源点击获取
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑