动态路由协议RIP(思科、华为)

#交换设备

动态路由协议RIP

路由协议

  • 静态路由

    • 需要管理员手动配置
  • 动态路由

    • 是在路由器上启用某动态路由协议,进行自己直连网段的宣告,从而相邻的路由器就可以学习的相邻的路由器所宣告的网段,每一台路由器都把自己直连的网段宣告出去,而后所有的路由器就学习到了其他路由器所直连的网段
    • 特点
      • 减少管理员的工作量
      • 增加了网路带宽

一、常见的动态路由协议

  • RIP:路由信息协议(距离矢量路由协议)

    • 开销小,只有在网络发生变化时,才发送路由信息
  • OSPF:开放式最短路径优先

    • 一般用于大型网络,是内部网关协议
  • BGP:边界网关协议,自治系统之间的协议

  • EIGP:增强内部网关协议

  • IS-IS:中间系统到中间系统

  • 什么是内部,什么是外部

    • AS:自治系统:运行相同路由协议的路由器属于同一个自治系统(内部网关)
    • 通过自治系统内连接外部的路由器,这个时候就需要外部网关
    • 内部网关路由协议IGP
      • 用于在单一自治系统中去决策路由的,RIP,OSPF
    • 外部网关路由协议EGP
      • 用于连接不同自治系统,BGP

二、动态路由协议需要考虑的内容

1.度量值

  • 就是这些路由器考虑哪方面的度量值,来决定信息按照什么路径走用时最短
  • 跳数,带宽,负载,时延

2.收敛

  • 使所有路由器的路由表达到一致的状态,需要考虑网络达到收敛的速度快不快

3.自治系统

三、RIP动态路由协议

1.基本概念

  • 基于UDP协议传输
  • 一种内部网关路由协议,是单一自治系统内部的路由器用来传递路由信息的
  • 靠跳数(metric)来衡量到达目的的距离
    • 最大15跳,大于15则不可达
  • 每隔30秒向相邻的路由器更新消息,采用UDP520端口
  • 此协议是从相邻的路由器学习对应的路由条目

2.两个版本

^6d8803

  • RIPv1

    • 有类路由协议(采用标准子网掩码)

    • 每隔30秒发送路由信息的方式是:广播更新

    • 不支持VLSM(可变长子网掩码,非标准子网掩码)

    • 自动路由汇总,不可关闭

      • 将两个网段汇总为一个

        • 例如

          shell 复制代码
          192.168.10.0/24
          192.168.20.0/24
          汇总为192.168.0.0/16
    • 不支持不连续的子网(因为自动汇总)

      • 因为不连续的子网买办法汇总,例如一个A类一个B类没有办法汇总
  • RIPv2

    • 无类路由协议,可以使用非标准子网掩码
    • 组播更新:只会向同样运行了RIP的路由器发送更新信息,组播地址为224.0.0.9
    • 支持VLSM
    • 自动汇总,该功能可以关 - 支持不连续的子网掩码(应为自动汇总可以关闭)

RIPv2比RIPv1消耗更少的计算机资源

3.三种定时器

^9b1293

1.跟新定时器:默认30秒,每30秒向周围邻居发送路由信息
2.无效定时器:默认180秒,当该路由被更新时置为180,如果某条路由信息的无效定时器达到0,就认为该路由失效,cost值设置为16
3.垃圾收集定时器:默认120秒,当某条路由失效后,还会默认存在120秒,在这期间路由器还会在周期性的RIP响应数据包中携带该无效路由信息,通告其他路由器该条路由失效,当定时器为0时,路由器将该失效路由信息彻底删除

四、配置过程

RIPv1

  • 1.设置各端口IP

  • 2.开启RIP,并宣告网段

    shell 复制代码
    路由器0
    en
    conf t
    router rip               #开启RIP
    network 192.168.10.0     #宣告网段
    network 192.168.30.0
    network 192.168.40.0
    cshell 复制代码
    路由器1
    en
    conf t
    router rip
    network 192.168.40.0
    network 192.168.50.0
    shell 复制代码
    路由器2
    en
    conf t
    router rip
    network 192.168.20.0
    network 192.168.30.0
    network 192.168.50.0

RIPv2

本实验涉及到子网划分知识

shell 复制代码
路由器0
en
conf t
router rip
version 2
network 192.168.1.0
network 192.168.1.64

路由器1
en
conf t
router rip
version 2
network 192.168.1.64
network 192.168.1.128

路由器2
en
conf t
router rip
version 2
network 192.168.1.128
network 192.168.1.192

show ip route
系统提示:
     192.168.1.0/24 is variably subnetted, 6 subnets, 2 masks  可以看到设备自动将网络汇总
C       192.168.1.0/26 is directly connected, GigabitEthernet0/0
L       192.168.1.62/32 is directly connected, GigabitEthernet0/0
C       192.168.1.64/26 is directly connected, GigabitEthernet0/1
L       192.168.1.65/32 is directly connected, GigabitEthernet0/1
R       192.168.1.128/26 [120/1] via 192.168.1.126, 00:00:02, GigabitEthernet0/1
R       192.168.1.192/26 [120/2] via 192.168.1.126, 00:00:02, GigabitEthernet0/1

如果想要关闭自动汇总功能,则应当在网络声明之前关闭,在之后关闭无效

shell 复制代码
例如
en
conf t
router rip
version 2
no auto-summary       关闭自动汇总
network 【网络地址】
network 【网络地址】

五、华为设备配置RIP

RIP 在IPv4 中有vl 和v2 两个版本。

  • 不指定版本: 接口默认情况下能接收v1 和v2 的报文, 但只能发送vl 的报文;

  • 指定版本: RIPv 1 只能接收和发送v1 的报文, RIPv2 只能接收和发送v2 的报文。

  • 建议所有路由器配置相同版本的rip协议,避免设置了v1的路由器接收不到v2路由器的路由信息

  • 配置逻辑和思科设备相同,都是进入rip模式---选择版本(默认为v1)---宣告网段

注意:在使用RIPv1时,宣告网段只能宣告主网络类型,例如端口的IP地址为10.0.45.5,这是一个B类IP地址,由于RIPv1不支持子网掩码,所以只能按照B类网络进行宣告,此时宣告的网络地址应当是10.0.0.0

RIP进程编号

  • 在下面的例子中,输入rip,系统默认是rip-1,后面的数字1就是rip进程编号,同一个路由器可以同时存在多个rip进程,每个rip进程可以进行不同的配置,并具有独立的路由表,每个进程之间的路由信息互不影响
    • 可以通过进程编号,创建多个RIP实例,将网络规划为多个逻辑部分、为不同的网络使用不同的策略
    • 每个进程的配置是独立的、隔离的
    • 每个进程拥有独立的路由表,互不影响
    • 在一些复杂的网络设计中,可能需要对特定的网络流量使用不同的路由策略,通过多个RIP进程实现

1.配置命令

powershell 复制代码
v1
[R1]rip
[R1-rip-1]network 192.168.10.0 #宣告自己的直连网段

v2
[R1]rip
[R1-rip-1]version 2
[R1-rip-1]network 192.168.10.0  #如果在之前已经宣告过,则不需要重新宣告


直接从v1转到v2
[R1]rip 1
[R1-rip-1]version 2

2.配置RIP认证

  • 在路由器之间相连的接口上配置RIP认证
powershell 复制代码
int g0/0/1
rip authentication-mode md5 usual huawei   # md5加密方式传输密码  密码为huawei

3.水平分割、出发更新、毒性逆转

  • rip提供了三种方法避免形成路由环路:触发更新、水平分割、毒性逆转
1.触发更新
  • 所谓触发更新, 就是指当RIP 路由表中的某些路由项的内容发生改变时, 路由器应立即向它的所有邻居发布响应消息, 而不要等待更新定时器所规定的下一个响应消息的发送时刻。另外, 为了减少带宽及路由器处理资源的消耗, 触发更新的响应消息中只需包含路由信息发生了改变的路由项。
    • 只有当路由器直接感受到链路故障时,才会触发更新(如:该路由器一个直连端口的链路断路)
2.水平分割
  • 指的是,如果某条路由信息x.x.x.x/y是从R的G0/0/1学习得来的,那么该路由器在向外宣告路由信息时,如果该信息是从G0/0/1发出的,那么为了避免形成环路,就不会带x.x.x.x/y的信息,而在其他接口发出时,任然会携带这条信息
使用debugging调试功能查看路由器之间的交互信息
powershell 复制代码
<R2>debugging rip 1 send g0/0/1  #启动调试,提供指定接口发送的rip报文的详细信息
<R2>terminal monitor             #开启远程终端调试输出
<R2>terminal debugging           #开启控制台调试输出
  • 手动关闭接口的水平分割功能
powershell 复制代码
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]undo rip split-horizon 
3.毒性逆转
  • 指的是,如果某条路由信息x.x.x.x/y是从R的G0/0/1学习得来的,那么该路由器在向外宣告路由信息时,如果该信息是从G0/0/1发出的,那么为了避免形成环路,虽然还会带有x.x.x.x/y的信息,但是cost值设置为16,而在其他接口发出时,任然会携带这条信息cost为实际的跳数

  • 水平分割和毒性逆转不可以同时配置,在生产环境中,是配置触发更新再从水平分割和毒性逆转中选择其一

  • 毒性逆转可以快速清除无用的路由而不必等待老化时间,另外,在帧中继和X.25等非广播多路访问网络中,如果开启了水平分割功能,会造成有的路由器无法接收到更新路由的情况,因此在这种网络中,水平分割是默认禁止的,我们需要手动开启毒性逆转防止路由环路。

RIPv1 和 RIPv2 都支持水平分割、触发更新和毒性逆转功能。

powershell 复制代码
[R2]int g0/0/1
[R2-GigabitEthernet0/0/1]rip poison-reverse    #开启毒性逆转功能
  • 当水平分割和毒性逆转同时开启时,简单的水平分割行为(从某接口学到的路由再从这个接口发布时将被抑制)会被毒性逆转替代
4.为什么有三种防环机制?
  • 即使有了水平分割,仍有可能出现五线循环的情况,特别是在网络信息不一致或者更新延迟的情况下
  • RIP协议需要多种防环机制来应对多变的网络环境和潜在的路由问题
5.水平分割的局限性在哪里
  • 不能单独防止所有类型的路由环路
    • 1.单向通行问题:
    • 2.依赖于正确的接口配置和网络拓扑,如果网络中某个接口配置错误、或者网络拓扑发生变化,水平分割肯能无法正确组织路由信息的循环传递

4.RIP抑制接口、单播更新

RIP 支持抑制接口的配置, 即配置后禁止接口发送更新报文, 但此接口所在网段的路由可以发布出去。可通过两种方法来实现, 执行silent-interface 命令或在接口下配置undo rip output 使其只接收报文, 但不能发送RIP 报文。silent-interface 的优先级大于在接口下配置的undo rip output , 默认情况下为不抑制状态。还可以在接口下配置undo rip input 命令, 禁止接口接收RIP 更新报文, 这也是预防路由环路的一种方式。

  • 为了避免pc受到大量无用的rip广播报文,可以通过配置抑制接口来实现
powershell 复制代码
配置某一个接口为抑制接口,使得该接口只接受RIP更新报文,不发送RIP更新报文
[R1]rip 1
[R1-rip-1]silent-interface g0/0/1
  • 由于此时配置了抑制接口,所以如果所有路由器都配置了,会导致网络中断,所以要配置单播跟新来恢复网络连接
    • 实现指定路由器接受rip报文,而不是以广播的方式
powershell 复制代码
[R1]rip 1
[R1-rip-1]peer 172.16.1.100       与R1直连路由R2的接口IP地址
[R1-rip-1]peer 172.16.1.200		  与R1直连路由R3的接口IP地址
  • 可以通过undo rip output 的方式,配置路由器某一个接口禁止发出rip更新报文
powershell 复制代码
[R3-rip-1]int g0/0/1
[R3-GigabitEthernet0/0/1]undo rip output 
相关推荐
网络安全-杰克29 分钟前
网络安全概论
网络·web安全·php
怀澈12233 分钟前
高性能服务器模型之Reactor(单线程版本)
linux·服务器·网络·c++
耗同学一米八1 小时前
2024 年河北省职业院校技能大赛网络建设与运维赛项样题二
运维·网络·mariadb
skywalk81631 小时前
树莓派2 安装raspberry os 并修改成固定ip
linux·服务器·网络·debian·树莓派·raspberry
C++忠实粉丝2 小时前
计算机网络socket编程(3)_UDP网络编程实现简单聊天室
linux·网络·c++·网络协议·计算机网络·udp
黑客Ela2 小时前
网络安全中常用浏览器插件、拓展
网络·安全·web安全·网络安全·php
qdprobot2 小时前
ESP32桌面天气摆件加文心一言AI大模型对话Mixly图形化编程STEAM创客教育
网络·人工智能·百度·文心一言·arduino
hakesashou4 小时前
Python中常用的函数介绍
java·网络·python
C++忠实粉丝4 小时前
计算机网络socket编程(4)_TCP socket API 详解
网络·数据结构·c++·网络协议·tcp/ip·计算机网络·算法
九州ip动态4 小时前
做网络推广及游戏注册为什么要换IP
网络·tcp/ip·游戏