RIP路由协议

RIP

  1. RIP概述

    • 优点
      • 配置简单
      • 易于维护
      • 适用于小型网络
    • RIP(Routing Infomation Protocol)路由信息协议
      • 距离矢量(DV)路由协议,属于IGP(Interior Gateway Protocol)内部网关协议
      • 适用于中小型网络,有RIPv1和RIPv2两个版本
      • 基于UDP,端口号为520
      • 周期性更新(一般25s-30s更新一次)
      • 支持水平分割(Split Horizon)、毒性反转(Poison Reverse)和触发更新等防环特性
  2. RIP工作原理

    • RIP工作原理

      • 路由器运行RIP后,会首先发送更新请求Request
      • 收到请求的路由器会将自己的路由表封装到Response中响应(周期性的更新)给请求的路由器
      • 网络稳定后,路由器会周期性(25s-30s)的响应路由更新信息
    • 图示

      • alt RIP工作原理
  1. RIP度量(开销)

    • RIP使用跳数作为度量值,来衡量到达目的网络的距离

    • 缺省情况下,直连网络的路由跳数为0,当路由器发送路由更新的时候度量值会+1

    • RIP规定超过15条为网络不可达

    • 图示

  1. RIPv1与RIPv2

    • RIPv1

      • RIPv1以全广播的方式发送报文
      • RIPv1是有类别路由协议,不支持VLSM和CIDR
      • 不支持认证
    • RIPv2

      • RIPv2支持广播或组播的方式发送报文,组播地址是:224.0.0.9
      • RIPv2是无类别路由协议,支持VLSM、路由聚合和CIDR
      • 支持明文认证和MD5密文认证
    • RIPv1报文与解析

      • 图示

        alt RIPv1 报文

+ 解析

  ![alt RIPv1报文解析](https://i.loli.net/2021/04/06/FV4QWGAfMpnCH1O.png)
  • RIPv2报文与解析

    • 图示

      alt RIPv2 报文

    • 解析

      alt RIPv2 解析

  • RIPv2认证

    • 图示

      alt RIPv2认证

  1. RIP环路

    • 图示

      alt RIP环路

    • RIP配置

      • R1配置

        1
        2
        3
        4
        5
        sys
        rip 1 #开启RIP进程,默认是1
        ver 2 #开启RIPv2
        network 12.0.0.0 #network 宣告网络,指定运行RIP的接口,只需要输入主类网络地址即可。目的是该地址是否匹配某个接口
        network 1.0.0.0
* network 1.0.0.0 如果只有部分子网对应的接口走RIP协议,怎么将别的接口不走RIP协议

* 不同的进程号表示不同的数据库

* 可以在RIP中注入RIP

* R2 配置

  
1
2
3
4
5
sys
rip 1
ver 2
network 12.0.0.0
network 2.0.0.0
  • RIP环路演示

    • 去除端口的水平分割

      • R1配置

        1
        2
        3
        4
        sys
        rip 1
        int g0/0/0
        undo rip split-horizon
  * R2配置

    
1
2
3
4
sys
rip 1
int g0/0/0
undo rip split-horizon
* 环路产生流程 * 正常情况 * 在R1与R2都开启RIP之后 * R1将自己直连的路由,通过RIP宣告给R2,对R1来说是0跳,对R2来说是1跳,R2也将自己从R1学习到有关R1直连设备的路由信息发送给R1,此时R1收到关于自己的直连设备的路由信息是0跳和2跳,在开启RIP机制的情况下,R1不会相信R2发过来有关自己直连的设备的路由信息。此时,就不会产生RIP环路 * R2将自己直连的路由,通过RIP宣告给R1,对R2来说是0跳,对R1来说是1跳 * 环路情况 * RIP会周期性宣告自己的路由更新 * R1将自己直连的路由,通过RIP宣告给R2,对R1来说是0跳,对R2来说是1跳 * R2会将自己从R1学到的有关R1直连设备的路由更新信息再次发给R1,此时R1收到两条有关自己直连设备的路由信息;当R1直连设备宕机的情况下,R1路由器将标记这条路由处于不可达的状态(即该条路由是16跳)。然而,R1需要等到路由信息更新时候才会将这条不可达的路由宣告出去(R1在30s左右时间更新路由信息),此时,R1会相信从R2学过来的有关自己直连设备的路由信息(即此时R1到自己直连设备的路由为2跳,并且下一跳为R2路由器的接口地址),此时,RIP协议的路由就产生了环路。知道RIP路由跳数是16后停止 * 避免环路的机制 * 水平分割(split-horison) * 路由器从某个接口学到的路由,不会从该接口再发回给邻居路由器 * 图示 * * 毒性反转(Poison-reverse) * 路由器从某个接口学到的路由后,将该路由的条数设置成16跳,并将从原接收接口发回给邻居路由器 * 与水平分割是矛盾的,默认是不开启的,当两个都开启的时候,优先执行毒性反转(poison reverse)机制 * 图示 * ![alt 毒性反转](https://i.loli.net/2021/04/08/hy8NefgCHjTz2Bx.png) * 触发更新 * 当路由信息发生变化的时候,立即向邻居设备发送触发更新的报文 * 图示 * ![alt 触发更新](https://i.loli.net/2021/04/08/fgI2UXhM6jxE8Nu.png)
  • RIP高级配置

    • Output

      • 图示
        • alt RIP配置-Output
      • 在路由器的接口上可以禁止该接口发送RIP报文
    • Input

      • 在路由器的接口上可以禁止该接口接收RIP报文
      • 图示
        • alt RIP配置-Input
    • 抑制接口

      • 配置路由器的某个接口为抑制状态,只接受RIP报文

      • 此命令的优先级大于rip input 与 rip output

      • 命令

        1
        2
        rip 1
        [R1-rip-1]silent-interface GigabitEthernet 0/0/1
      • 图示

        • alt 抑制接口
    • 水平分割(Split-horizon)与毒性反转(Poison-reverse)

      • 查看RIP详细信息的命令

        图示

        • alt 水平分割与毒性反转
        1
        dis rip 1 interface g0/0/2 verbose
      • 图示

        alt 水平分割与毒性反转

      • 命令

        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        <R2>sys
        Enter system view, return user view with Ctrl+Z.
        [R2]int
        [R2]interface g0/0/2
        [R2-GigabitEthernet0/0/2]rip spri
        [R2-GigabitEthernet0/0/2]rip split
        [R2-GigabitEthernet0/0/2]rip split-horizon
        [R2-GigabitEthernet0/0/2]rip poi
        [R2-GigabitEthernet0/0/2]rip poison-reverse
        [R2-GigabitEthernet0/0/2]<R2>sys
* 查看RIP相关信息

  * 查看RIP接口详细信息

    
1
dis rip 1 # 1代表RIP进程号
* 查看RIP信息
1
dis rip int g0/0/0 verbose
* 调整度量值 * Metricout * 发送RIP路由信息的时候,将度量值(开销)变成N * 命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<R2>sys
Enter system view, return user view with Ctrl+Z.
[R2]int
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]rip metricout
[R2-GigabitEthernet0/0/0]rip metricout 5 #将所有从此接口出去的RIP路由信息的Cost该为5
[R2-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
ip address 12.0.0.2 255.255.255.0
rip metricout 5
rip poison-reverse
#
return
* 图示 ![alt RIP配置-Metricout](https://i.loli.net/2021/05/23/j9QmLtEHRGfXoC7.png) * Metricin * 接受RIP路由信息的时候,Cost自动增加N个 * 命令
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<R2>sys
Enter system view, return user view with Ctrl+Z.
[R2]int
[R2]interface g0/0/0
[R2-GigabitEthernet0/0/0]rip metricin
[R2-GigabitEthernet0/0/0]rip metricin 5 # 路由器的该接口在接受RIP路由信息后,Cost自动增加5
[R2-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
ip address 12.0.0.2 255.255.255.0
rip metricin 5
rip metricout 5
rip poison-reverse
#
return
[R2-GigabitEthernet0/0/0]q
[R2]dis ip rout
[R2]dis ip routing-table pro rip
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : RIP
Destinations : 1 Routes : 1

RIP routing table status : <Active>
Destinations : 1 Routes : 1

Destination/Mask Proto Pre Cost Flags NextHop Interface

1.0.0.0/24 RIP 100 6 #Cost的值1+5 D 12.0.0.1 GigabitEthernet0/0/0

RIP routing table status : <Inactive>
Destinations : 0 Routes : 0
* 图示 ![alt RIP配置-Metricin](https://i.loli.net/2021/05/23/GsR1AqbE6jNwJmB.png)
吴超 wechat
subscribe to my blog by scanning my public wechat account