RIP
【实验目的】
- 掌握路由协议的分类,理解静态路由和动态路由
- 掌握动态路由协议 RIP 的报文格式,工作原理及工作过程
- 掌握 RIPv2 的基本配置
- 理解 RIPv2 的路由自动汇总
- 理解 RIP 的水平分割和毒性反转特性
【实验步骤】
练习一:静态路由与路由表
-
基本配置
- 请按照图 1 的实验拓扑进行连接,其中的设备及 IP 地址等配置请看表 1。

-
图 1 静态路由实验拓扑图
-
表 1 设备及地址配置
设备 接口 IP地址 子网掩码 默认网关 PC1 Ethernet 0/0/1 192.168.1.2 255.255.255.0 192.168.1.1 PC2 Ethernet 0/0/1 192.168.3.2 255.255.255.0 192.168.3.1 R1(AR2220) GE 0/0/0 192.168.1.1 255.255.255.0 - R1(AR2220) GE 0/0/1 10.0.12.1 255.255.255.0 - R2(AR2220) GE0/0/1 10.0.23.2 255.255.255.0 - R2(AR2220) GE0/0/2 10.0.12.2 255.255.255.0 - R3(AR2220) GE0/0/0 192.168.3.1 255.255.255.0 - R3(AR2220) GE0/0/2 10.0.23.3 255.255.255.0 - -
配置静态路由,实现 PC1 和 PC2 之间的通信
a. 添加静态路由。请给出在三个路由器上的静态路由配置命令:





b. 验证连通性:
如果上一步的配置正确,现在再次查看各路由器上的路由表,应该可以发现各路由器上都有 PC1 和 PC2 所在网段的路由信息了。于是 PC1 与 PC2 之间可以正常通信了,可以在主机 PC1 上去 ping 主机 PC2 验证。


练习二:RIPv2基本配置
-
基本配置
-
图 2 RIP 路由协议基本配置拓扑

-
通常约定如下,具体的接口地址分配见表 2。
1)所有地址都属于 10.0.0.0/8 网段,所有互联子网都是 24 位的掩码长度,所有环回接口都是 32 位的掩码长度;
2)路由器直连网段的子网位使用两侧直连路由器的编号,按从小到大的顺序排列,如:AR1 与 AR2 之间网段就是 10.1.2.0/24;
3)路由器直连网段的主机位使用该路由器的编号,如AR1连接 AR2 的接口地址就是:10.1.2.1/24,而对端AR2的地址则是:10.1.2.2/24;
4)路由器环回接口的子网位和主机位都使用路由器的编号,如 AR2 的环回接口地址就是:10.2.2.2/32;
5)连接 PC 的网段第 2 个八位组(也即IP地址点分十进制表示法中的第2个十进制数)使用路由器的编号,第 3 个八位组则使用 0,如 PC1 所在的网段是:10.1.0.0/24;
6)PC 的主机位都是 100,如 PC2 的 IP 地址为:10.3.0.100/24。
-
表 2 地址分配表
设备 接口 IP地址 子网掩码 默认网关 R1(AR2220) GE 0/0/0 10.1.2.1 255.255.255.0 - R1(AR2220) GE 0/0/1 10.1.0.1 255.255.255.0 - R1(AR2220) Loopback 0 10.1.1.1 255.255.255.255 - R2(AR2220) GE0/0/0 10.1.2.2 255.255.255.0 - R2(AR2220) GE0/0/1 10.2.3.2 255.255.255.0 - R2(AR2220) Loopback 0 10.2.2.2 255.255.255.255 - R3(AR2220) GE0/0/1 10.2.3.3 255.255.255.0 - R3(AR2220) GE0/0/2 10.3.0.3 255.255.255.0 - R3(AR2220) Loopback 0 10.3.3.3 255.255.255.255 - PC1 Ethernet 0/0/1 10.1.0.100 255.255.255.0 10.1.0.1 PC2 Ethernet 0/0/1 10.3.0.100 255.255.255.0 10.3.0.3 -
-
使用 RIPv2 搭建网络
1)建立如图 2 所示的网络拓扑,按表 2 配置接口 IP 地址,保证所有直连 IP 都可以通信。
2)在路由器 R1,R2 和 R3 上配置 RIPv2在 AR1 上:
[AR1] rip1 [AR1-rip-1] version 2 (修改RIP版本为2) [AR1-rip-1] network 10.0.0.0 (宣告网段)同样在 AR2 和 AR3 上进行 RIPv2 配置。
3)使用 display rip 查看 AR1 上的配置的 RIP 信息
属性 属性值 含义 RIP version 2 版本为 V2 Preference 100 优先级 Summary Enable 路由汇总或摘要 Networks 10.0.0.0 网段为 10.0.0.0 4)使用命令 display ip routing-table protocol rip 观察 AR1 上通过 RIP 学习到的路由,填入表 3。

表 3 路由器 AR1 上的 RIP 路由项
| Destination/Mask | Proto | Pre | Cost | Flags | NextHop | Interface |
|---|---|---|---|---|---|---|
| 10.2.2.2/32 | RIP | 100 | 1 | D | 10.1.2.2 | G0/0/0 |
| 10.2.3.0/24 | RIP | 100 | 1 | D | 10.1.2.2 | G0/0/0 |
| 10.3.0.0/24 | RIP | 100 | 2 | D | 10.1.2.2 | G0/0/0 |
| 10.3.3.3/32 | RIP | 100 | 2 | D | 10.1.2.2 | G0/0/0 |
5)根据以上输出及课堂的讲解,回答以下关于 RIP 的基本问题。RIP 协议的优先级是多少,静态路由的优先级又是多少?谁更优先?
RIP 协议的优先级是 100,优先级较低。静态路由的优先级通常比 RIP 更高。
练习三:RIPv2 路由汇总
-
观察 RIPv2 自动汇总
在 AR1 上查看 RIP 协议的状态,确认自动汇总已经开启,然后到 AR2 上查看学习到的 AR1 的路由,填入表 4。
表 4 路由器 AR2 上的 RIP 路由项
Destination/Mask Proto Pre Cost Flags NextHop Interface 10.1.0.0/24 RIP 100 1 D 10.1.2.1 G0/0/0 10.1.1.1/32 RIP 100 1 D 10.1.2.1 G0/0/0 10.3.0.0/24 RIP 100 1 D 10.2.3.3 G0/0/1 10.3.3.3/32 RIP 100 1 D 10.2.3.3 G0/0/1 以上输出信息显示 AR2 学习到的 AR1 的路由依然是明细路由,并没有被自动汇总。请根据课堂学习到的内容,解释这一现象的原因。
不同版本的协议
-
关闭 AR1 连接 AR2 接口的水平分割功能
- 在 AR2 上查看 rip 路由表项,填入表 5。
在 AR1 上:
[AR1] interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0] un rip split-horizon ( 禁用水平分割特性 )在 AR2 上:
[AR2] display ip routing-table protocol rip (查看 AR2 上的 RIP 路由表项)- 表 5 路由器 AR2 上的 RIP 路由项
Destination/Mask Proto Pre Cost Flags NextHop Interface 10.0.0.0/8 RIP 100 1 D 10.1.2.1 G0/0/0 10.3.0.0/24 RIP 100 1 D 10.2.3.3 G0/0/1 10.3.3.3/32 RIP 100 1 D 10.2.3.3 G0/0/1 可以看到在把 AR1 连接 AR2 的接口水平分割关闭后,AR1 发送给 AR2 的路由就是汇总路由了。但是请注意,除非完全了解关闭水平分割后所带来的影响,否则请不要关闭水平分割。
-
让 AR3 也传递汇总路由
除了关闭水平分割可以让 RIP 传递汇总路由外,也可以使用以下命令让 AR3 传递汇总路由。
[AR3] rip [AR3-rip-1] summary always //在AR3上再创建一条路由,以便观察现象。 [AR3] interface LoopBack 1 [AR3-LoopBack1] ip address 3.3.3.3 32 [AR3-LoopBack1] quit [AR3] rip [AR3-rip-1] network 3.0.0.0然后在 AR2 上观察从 AR3 上传来的 RIP 路由,填入表 6。

-
表 6 路由器 AR2 上的 RIP 路由项
Destination/Mask Proto Pre Cost Flags NextHop Interface 3.0.0.0/8 RIP 100 1 D 10.2.3.3 G0/0/1 10.0.0.0/8 RIP 100 1 D 10.1.2.1 G0/0/0 10.3.0.0/24 RIP 100 1 D 10.2.3.3 G0/0/1 10.3.3.3/32 RIP 100 1 D 10.2.3.3 G0/0/1
-
观察自动汇总带来的问题
1)在 AR3 连接 AR2 的接口(G0/0/1)上关闭 RIP 水平分割。
[AR3] interface GigabitEthernet 0/0/1 [AR3-GigabitEthernet0/0/1] undo rip split-horizonb2)管理员在大多数情况下都需要关闭自动汇总。这是因为自动汇总会让路由表变得混乱。假设 AR1 和 AR3 都向 AR2 发送了一条汇总路由,那么 AR2 上就会学习到去往同一目的网络的两条路由,但是它们却分别指向左右两条路径,如下所示
<AR2>display ip routing-table protocol rip ---------部分内容做了删减---------- Destination/Mask Proto Pre Cost Flags NextHop Interface 3.0.0.0/8 RIP 100 1 D 10.2.3.3 GigabitEthernet0/0/1 10.0.0.0/8 RIP 100 1 D 10.1.2.1 GigabitEthernet0/0/0 RIP 100 1 D 10.2.3.3 GigabitEthernet0/0/1 RIP routing table status : <Inactive> Destinations : 0 Routes : 0以上路由表明显是不正常的。
3)删除与自动汇总的相关配置
在AR1上:[AR1]rip [AR1-rip-1]undo summary [AR1-rip-1]quit [AR1]interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0]rip split-horizon在AR2上:
[AR2]rip [AR2-rip-1]undo summary在AR3上:
[AR3]rip[AR3-rip-1]undo summary [AR3-rip-1]quit [AR3]interface GigabitEthernet 0/0/1 [AR3-GigabitEthernet0/0/1]rip split-horizon
练习四:RIP 的防环机制
-
验证水平分割
1)在路由器 AR3 上对 GE0/0/1 口进行抓包,设置过滤条件(提取 RIP)。观察 AR2 和 AR3 之间交互的 RIP 报文,注意发送的路由条目中的网段包括哪些,并填入表 7。
-
表 7 启用水平分割下的 RIP 路由更新消息
-
AR2 发给 AR3 的 RIP 路由条目 AR3 发给 AR2 的 RIP 路由条目
网段 跳数 网段 跳数 10.1.2.0 1 3.0.0.0 1 10.2.2.2 1 10.3.0.0 1 10.0.0.0 2 10.3.3.3 1 2)在 AR2 的 GE0/0/1 口和 AR3 的 GE0/0/1 口上使用 undo rip split-horizon 命令关闭水平分割。此时再次观察 R3 发送给 R2 的路由条目信息,填入表 8。
- 表 8 禁用水平分割下的 RIP 路由更新消息
AR2 发给 AR3 的 RIP 路由条目 AR3 发给 AR2 的 RIP 路由条目
网段 跳数 网段 跳数 3.0.0.0 2 3.0.0.0 1 10.0.0.0 1 10.0.0.0 1 3)重新恢复 AR2 的 GE0/0/1 口和 AR3 的 GE0/0/1 口上的水平分割特性。
-
-
验证毒性逆转
1)在 AR3 的 GE0/0/1 口上抓包,观察 AR2 发出的 RIP 消息中的路由条目信息,其中并没有 10.3.0.0/24 网段,因为这是水平分割的效果。
2)在 AR2 的 GE0/0/1 口上使用 rip poison-reverse 命令开启毒性反转功能。
再次观察抓包的情况,将抓包的结果填入表 9 中(行数不够自行添加)。
表 9 毒性反转特性开启后的 AR2 给 AR3 的 RIP 路由更新条目
路由 AR2 发送给 AR3 的 RIP 路由条目网段 跳数 3.0.0.0 16 10.1.0.0 2 10.1.2.0 2 10.2.2.2 1 10.3.0.0 1 10.3.3.3 16
【思考问题】
-
最大跳数的限制是解决了 RIP 的什么问题?
解决了度量值计数到无穷大的问题
-
在表 6 中,AR3 发来的路由中是否存在明细路由?请解释产生以上现象的原因。
存在。在启用水平分割的情况下,RIP 会将每个子网的路由信息分别广播出去,在使用命令后,在汇总后又加入一条 ,所以存在明细路由。
-
在表 8 中的路由条目是明细,还是汇总的,为什么?
汇总的,禁用水平分割后,RIP 会将所有子网的路由信息汇总成一个网络地址。