路由交换实验三:RIP

路由交换实验三:RIP

关于 RIP 协议的一次实验

RIP

【实验目的】

  1. 掌握路由协议的分类,理解静态路由和动态路由
  2. 掌握动态路由协议 RIP 的报文格式,工作原理及工作过程
  3. 掌握 RIPv2 的基本配置
  4. 理解 RIPv2 的路由自动汇总
  5. 理解 RIP 的水平分割和毒性反转特性

【实验步骤】

练习一:静态路由与路由表

  1. 基本配置

    • 请按照图 1 的实验拓扑进行连接,其中的设备及 IP 地址等配置请看表 1。

    1-gwzk.png

    • 图 1 静态路由实验拓扑图

    • 表 1 设备及地址配置

    设备接口IP地址子网掩码默认网关
    PC1Ethernet 0/0/1192.168.1.2255.255.255.0192.168.1.1
    PC2Ethernet 0/0/1192.168.3.2255.255.255.0192.168.3.1
    R1(AR2220)GE 0/0/0192.168.1.1255.255.255.0-
    R1(AR2220)GE 0/0/110.0.12.1255.255.255.0-
    R2(AR2220)GE0/0/110.0.23.2255.255.255.0-
    R2(AR2220)GE0/0/210.0.12.2255.255.255.0-
    R3(AR2220)GE0/0/0192.168.3.1255.255.255.0-
    R3(AR2220)GE0/0/210.0.23.3255.255.255.0-
  2. 配置静态路由,实现 PC1 和 PC2 之间的通信

    a. 添加静态路由。请给出在三个路由器上的静态路由配置命令:

    2-vvyh.png

    3-emfg.png

    4-gtcj.png

    5-pcnq.png

    6.png

b. 验证连通性:

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

8-dxbl.png

练习二:RIPv2基本配置

  1. 基本配置

    • 图 2 RIP 路由协议基本配置拓扑

      9.png

    • 通常约定如下,具体的接口地址分配见表 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/010.1.2.1255.255.255.0-
    R1(AR2220)GE 0/0/110.1.0.1255.255.255.0-
    R1(AR2220)Loopback 010.1.1.1255.255.255.255-
    R2(AR2220)GE0/0/010.1.2.2255.255.255.0-
    R2(AR2220)GE0/0/110.2.3.2255.255.255.0-
    R2(AR2220)Loopback 010.2.2.2255.255.255.255-
    R3(AR2220)GE0/0/110.2.3.3255.255.255.0-
    R3(AR2220)GE0/0/210.3.0.3255.255.255.0-
    R3(AR2220)Loopback 010.3.3.3255.255.255.255-
    PC1Ethernet 0/0/110.1.0.100255.255.255.010.1.0.1
    PC2Ethernet 0/0/110.3.0.100255.255.255.010.3.0.3
  2. 使用 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 version2版本为 V2
    Preference100优先级
    SummaryEnable路由汇总或摘要
    Networks10.0.0.0网段为 10.0.0.0

    4)使用命令 display ip routing-table protocol rip 观察 AR1 上通过 RIP 学习到的路由,填入表 3。

    10.png

表 3 路由器 AR1 上的 RIP 路由项

Destination/MaskProtoPreCostFlagsNextHopInterface
10.2.2.2/32RIP1001D10.1.2.2G0/0/0
10.2.3.0/24RIP1001D10.1.2.2G0/0/0
10.3.0.0/24RIP1002D10.1.2.2G0/0/0
10.3.3.3/32RIP1002D10.1.2.2G0/0/0

5)根据以上输出及课堂的讲解,回答以下关于 RIP 的基本问题。RIP 协议的优先级是多少,静态路由的优先级又是多少?谁更优先?

RIP 协议的优先级是 100,优先级较低。静态路由的优先级通常比 RIP 更高。

练习三:RIPv2 路由汇总

  1. 观察 RIPv2 自动汇总

    在 AR1 上查看 RIP 协议的状态,确认自动汇总已经开启,然后到 AR2 上查看学习到的 AR1 的路由,填入表 4。

    表 4 路由器 AR2 上的 RIP 路由项

    Destination/MaskProtoPreCostFlagsNextHopInterface
    10.1.0.0/24RIP1001D10.1.2.1G0/0/0
    10.1.1.1/32RIP1001D10.1.2.1G0/0/0
    10.3.0.0/24RIP1001D10.2.3.3G0/0/1
    10.3.3.3/32RIP1001D10.2.3.3G0/0/1

    以上输出信息显示 AR2 学习到的 AR1 的路由依然是明细路由,并没有被自动汇总。请根据课堂学习到的内容,解释这一现象的原因。

    不同版本的协议

  2. 关闭 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/MaskProtoPreCostFlagsNextHopInterface
    10.0.0.0/8RIP1001D10.1.2.1G0/0/0
    10.3.0.0/24RIP1001D10.2.3.3G0/0/1
    10.3.3.3/32RIP1001D10.2.3.3G0/0/1

    可以看到在把 AR1 连接 AR2 的接口水平分割关闭后,AR1 发送给 AR2 的路由就是汇总路由了。但是请注意,除非完全了解关闭水平分割后所带来的影响,否则请不要关闭水平分割。

  3. 让 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。

11.png

  • 表 6 路由器 AR2 上的 RIP 路由项

    Destination/MaskProtoPreCostFlagsNextHopInterface
    3.0.0.0/8RIP1001D10.2.3.3G0/0/1
    10.0.0.0/8RIP1001D10.1.2.1G0/0/0
    10.3.0.0/24RIP1001D10.2.3.3G0/0/1
    10.3.3.3/32RIP1001D10.2.3.3G0/0/1
  1. 观察自动汇总带来的问题

    1)在 AR3 连接 AR2 的接口(G0/0/1)上关闭 RIP 水平分割。

     [AR3] interface GigabitEthernet 0/0/1
     [AR3-GigabitEthernet0/0/1] undo rip split-horizonb
    

    2)管理员在大多数情况下都需要关闭自动汇总。这是因为自动汇总会让路由表变得混乱。假设 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. 验证水平分割

    1)在路由器 AR3 上对 GE0/0/1 口进行抓包,设置过滤条件(提取 RIP)。观察 AR2 和 AR3 之间交互的 RIP 报文,注意发送的路由条目中的网段包括哪些,并填入表 7。

    • 表 7 启用水平分割下的 RIP 路由更新消息

    • AR2 发给 AR3 的 RIP 路由条目 AR3 发给 AR2 的 RIP 路由条目

    网段跳数网段跳数
    10.1.2.013.0.0.01
    10.2.2.2110.3.0.01
    10.0.0.0210.3.3.31

    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.023.0.0.01
    10.0.0.0110.0.0.01

    3)重新恢复 AR2 的 GE0/0/1 口和 AR3 的 GE0/0/1 口上的水平分割特性。

  2. 验证毒性逆转

    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.016
    10.1.0.02
    10.1.2.02
    10.2.2.21
    10.3.0.01
    10.3.3.316

【思考问题】

  1. 最大跳数的限制是解决了 RIP 的什么问题?

    解决了度量值计数到无穷大的问题

  2. 在表 6 中,AR3 发来的路由中是否存在明细路由?请解释产生以上现象的原因。

    存在。在启用水平分割的情况下,RIP 会将每个子网的路由信息分别广播出去,在使用命令后,在汇总后又加入一条 ,所以存在明细路由。

  3. 在表 8 中的路由条目是明细,还是汇总的,为什么?

    汇总的,禁用水平分割后,RIP 会将所有子网的路由信息汇总成一个网络地址。

Comment