详细的内容可以观看如下视频:https://edu.51cto.com/center/course/lesson/index?id=483729

动态路由协议介绍

  1. 我们可以把动态路由协议理解为一个自动化的概念
  2. 动态路由协议能够释放管理员对设备管理压力,使能动态路由协议之后 网络设备之间能够相互的发送路由和接收对应路由

什么是距离矢量算法

Distance-Vector 距离矢量是依照传闻方式进行 rip协议是一个典型的距离矢量路由协议 后面需要学习的BGP协议是一个增强DV协议 R1是依靠R2来学习路由条目的 R2这边说什么 R1就会接收什么 这种不怎么可靠

RIP协议原理介绍

RIP是一种比较简单的内部网关协议(IGP协议) RIP基于距离矢量的贝尔曼-福特算法(Bellman-Ford)来计算到达目的网络的最佳路径 最初的RIP协议开发时间较早,所以在带宽、配置和管理方面要求也较低,因此,RIP主要用作教学

  1. 路由器运行RIP后,会首先发送路由更新请求(request报文),收到请求的路由器会发送自己的RIP路由进行响应(response报文)。路由器在收到response报文后,会将相应的路由添加到自己的路由表中。
  2. 网络稳定后,路由器会周期性(周期为30s)发送路由更新信息。邻居路由器根据收到的路由信息刷新自己的路由表。

RIP的版本

一共有三个版本 version 1 不支持VLSM和CIDR 用广播传递rip消息 不支持认证 version 2 支持认证 支持VLSM和CIDR 传送报文的时候携带掩码 用224.0.0.9传递rip消息 version 1 2 默认情况就是这个版本 建议大家修改为version 2版本

RIP的开销

RIP使用跳数作为度量值来衡量到达目的网络的距离。缺省情况下,直连网络的路由跳数为0。当路由器发送路由更新时,会把度量值加1。RIP规定超过15跳为网络不可达。 这个计算的开销的方式 不合理 很可能会绕过告诉链路而走低速链路

RIP当中计时器

RIP定时器可以定期的对一些路由进行更新等等

RIP协议配置介绍

第一步:使能RIP协议的能力

[R1]rip 1

注意:在系统模式敲 1是一个进程号 本地有意义

第二步:在R1网络设备上宣告自己的网段

比如:你的接口IP地址为如下:

10.1.1.1/24		     =》	network 10.0.0.0
172.16.1.1/24		 =》	network 172.16.0.0
192.168.1.1/24	=》 network 192.168.1.0
172.16.1.1/15		 =》	network 172.16.0.0
100.100.100.100/25 =》 network 100.0.0.0

这边只能宣告A B C网段 也就是/8 /16 /24的网络地址 宣告网段的意思

[R1-rip-1]network 192.168.12.0   必须宣告
[R1-rip-1]network 1.0.0.0   非必须宣告

注意:R1的192.168.12.0网段一定得宣告出去 因为192.168.12.0网段是连接R2的一个桥梁 R1这边如果想要从R2接收到路由的时候 必须R1这边要宣告192.168.12.0网段 至于R1的1.0.0.0网段 他的宣告不是必须的 只是为了能够全网当中的rip设备能够学习这条1.0网段

第三步:在R2网络设备上宣告自己的网段

同理:我们在R2设备上宣告自己的192.168.12.0网段

rip 1
network 192.168.12.0   必须宣告
network 192.168.23.0   必须宣告
network 2.0.0.0   非必须宣告

在R2上查看路由表

<R2>display ip routing-table protocol 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.1.1.1/32  RIP     100  1           D   192.168.12.1        GigabitEthernet
0/0/0

RIP routing table status : <Inactive>
         Destinations : 0        Routes : 0

<R2>

查看R2的路由表 发现已经动态学习到了1.1.1.1路由条目 是通过rip协议学习到 并且下一跳是192.168.12.1 表明是R1将1.0.0.0网段条目发送给我 在R1上查看路由表

<R1>display ip routing-table protocol rip 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : RIP
         Destinations : 2        Routes : 2        

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

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        2.2.2.2/32  RIP     100  1           D   192.168.12.2        GigabitEthernet
0/0/0
       23.1.1.0/24  RIP     100  1           D   192.168.12.2       GigabitEthernet
0/0/0

RIP routing table status : <Inactive>
         Destinations : 0        Routes : 0

如果把R2里面的2.0.0.0宣告的网段删除掉

[R2-rip-1]undo network 2.0.0.0

在看一下R1的路由表

<R1>display ip routing-table protocol 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

       23.1.1.0/24  RIP     100  1           D   192.168.12.2       GigabitEthernet
0/0/0

RIP routing table status : <Inactive>
         Destinations : 0        Routes : 0

小结:RIP的network宣告分为两种 第一种:必须的宣告 指的就是两个邻居设备之间的network 第二种:可选的宣告,为的就是让对方学习到这条路由条目

第四步:在R3网络设备上宣告自己的网段

#
rip 1
network 192.168.23.0
network 3.0.0.0
#

查看R3的路由表

[R3]display ip routing-table protocol rip
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : RIP
         Destinations : 3        Routes : 3        

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

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.1.1.1/32  RIP     100  2           D   192.168.23.2       GigabitEthernet
0/0/1
        2.2.2.2/32  RIP     100  1           D   192.168.23.2      GigabitEthernet
0/0/1
       192.168.12.0/24  RIP     100  1       D   192.168.23.2        GigabitEthernet
0/0/1

RIP routing table status : <Inactive>
         Destinations : 0        Routes : 0

[R3]

发现R3这边已经通过RIP协议学习到1.0网段和12网段的两条rip路由 根据我们路由表的详细信息可以看到 R3这边到达R1和R2的路由条目的下一跳是192.168.23.2 表明是R2这边把我们1.0网段和12网段通告给我们R3

第五步:测试如下

<R1>ping -a 1.1.1.1 2.2.2.2
  PING 2.2.2.2: 56  data bytes, press CTRL_C to break
    Reply from 2.2.2.2: bytes=56 Sequence=1 ttl=255 time=60 ms
    Reply from 2.2.2.2: bytes=56 Sequence=2 ttl=255 time=20 ms
    Reply from 2.2.2.2: bytes=56 Sequence=3 ttl=255 time=10 ms
    Reply from 2.2.2.2: bytes=56 Sequence=4 ttl=255 time=30 ms
    Reply from 2.2.2.2: bytes=56 Sequence=5 ttl=255 time=20 ms

  --- 2.2.2.2 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 10/28/60 ms

<R1>ping -a 1.1.1.1 3.3.3.3
  PING 3.3.3.3: 56  data bytes, press CTRL_C to break
    Reply from 3.3.3.3: bytes=56 Sequence=1 ttl=254 time=30 ms
    Reply from 3.3.3.3: bytes=56 Sequence=2 ttl=254 time=20 ms
    Reply from 3.3.3.3: bytes=56 Sequence=3 ttl=254 time=30 ms
    Reply from 3.3.3.3: bytes=56 Sequence=4 ttl=254 time=30 ms
    Reply from 3.3.3.3: bytes=56 Sequence=5 ttl=254 time=40 ms

  --- 3.3.3.3 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
round-trip min/avg/max = 20/30/40 ms

RIP防环机制

水平分割

从一个接口收到的路由 不会从该接口发出去 默认开启

毒性反转

从一个接口收到的路由 会从该接口发出去 并且发送的时候 rip的跳数直接设置16跳 默认不开启 注意:如果同时开启水平分割和毒性反转的话 优先毒性反转生效

触发更新

比较靠谱的 触发更新是指当路由信息发生变化时,立即向邻居设备发送触发更新报文 他是可以加快收敛的

rip的认证

不验证(默认情况下)明文验证(simple)密文验证(md5)

区分PLAIN和CIPHER

[R1-GigabitEthernet0/0/0]rip authentication-mode simple plain Huawei@123
[R1-GigabitEthernet0/0/0]dis this
#
interface GigabitEthernet0/0/0
 ip address 192.168.12.1 255.255.255.0 
 rip authentication-mode simple plain Huawei@123
#
return
[R1-GigabitEthernet0/0/0]rip authentication-mode simple cipher Huawei@123
[R1-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 192.168.12.1 255.255.255.0 
 rip authentication-mode simple cipher Huawei@123

小结: plain---对回显的密码不进行加密 cipher---对回显的密码进行加密 所以:plain和cipher的区别就是对查看(display this)进行简单的加密

MD5的验证

[R2-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.23.2 255.255.255.0 
 rip authentication-mode md5 usual plain Huawei@123
#
return
[R2-GigabitEthernet0/0/1]


[R3-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.23.3 255.255.255.0 
 rip authentication-mode md5 usual cipher Huawei@123
#
return

总结:要么两端都不配置验证 要么两端配置都是simple验证 要么两端配置都是md5验证 验证的密码一定要一样