zoukankan      html  css  js  c++  java
  • 动态路由协议-RIP

    动态路由协议与静态路由协议

    静态路由协议:手动配置生成路由表。缺点:需要手工指定,网络过大无法使用。

    动态路由协议:动态路由协议通过路由信息的交换生成并维护路由表。缺点:容易占用网络带宽。

    当路由器数量少的时候建议使用静态路由,当路由器数量多的时候建议使用动态路由。

    动态路由协议类型相关概念

    • 动态路由协议概述:路由器之间用来交换信息的语言
    • 度量值:使用跳数、带宽、负载、时延、可靠性、成本等指标来衡量采取何种路径来进行路由
    • 收敛:使所有路由表都达到一致状态的过程

    动态路由协议算法种类

    • 距离矢量路由协议
      依据从源网络到目标网络所经过的路由器的个数选择路由
      RIP、IGRP
    • 链路状态路由协议
      综合考虑从源网络到目标网络的各条路径的情况选择路由
      OSPF、IS-IS

    距离矢量:

    “距离”表示有多远,经过几台路由器,经过几跳。

    “矢量”表示在哪个方向上,从哪个接口转发出去。

    距离矢量路由协议会隔一定时间将路由表里的所有路由传给自己的邻居。周期的。

    RIP的工作原理

    1. 首先路由器会先学习到自身所在的直连网段的路由信息。

    2. 当运行RIP动态路由协议的时候,路由器会每隔30秒向邻居(指的是直接相连的路由器)发送路由表。但是在发送之前,会把路由信息的Metric值+1之后传给邻居。Metric叫做度量值,是衡量一条路由好坏的一个参数。如果是相同路由的情况下,必须要传过来的metric值比自己的小才可以学习,否则是不学习的。比如R1传给R2的“20.0.0.0 metric 1”的这条路由,R2自己的路由表里面有一条20.0.0.0的路由,且metric值为0,明显比R1传过来的小,所以是不学习这条路由的。Metric值越小,优先级就越高。而R1同时传过来的10.0.0.0的路由在R2里面是没有的,所以它会学习过来。

    3. 那么接下来,轮到R2传给邻居路由了,R1和R3会同时收到R2传过来的路由信息。当然传出之前metric值还是会加。那么同样的因为R2传给R1的20.0.0.0的metric值是1比R1本身的20.0.0.0的metric值大,所以R1也是不学的。所以只会把自身没有的30.0.0.0 加入到自己的路由表里面。即:“R 30.0.0.0 20.0.0.2 1”。当R2传给R3的时候,同样30.0.0.0的路由不学习,而只学习“R20.0.0.0 30.0.0.0 1”这条路由。当R3的周期更新时间到了以后,也会把自己的路由信息metric值加1之后传给邻居R2。那么R2就学到了“R 40.0.0.0 30.0.0.0 1”这条路由。

    4. 最后到下一个30秒的更新周期的时候,R1又会把自己的路由信息传给邻居R2,而因为三个网段的路由信息R2都有,且三个网段的metric值都大,分别为“1 1 2”所以R2不学,然后R2传给R1的时候,R1就学到了“R 40.0.0.0 20.0.0.2 2”的路由。

    • RIP度量值为跳数
      最大跳数为15跳,16跳为不可达
    • RIP更新时间
      每隔30s发送路由更新消息,UDP520端口
      *RIP路由更新消息
      发送整个路由表信息

    RIP路由的缺点

    当40.0.0.0的链路down掉的时候,C的路由周期更新时间30秒到了,就会表示为disable。但是这个时候的B的路由周期更新时间还没有到30秒,这个时候,R2路由就会发送自己的更新路由给R3,而R3因为标记了disable,就没有了40.0.0.0的这条路由信息,所以当R2传给R3的时候,它就会学到这条原本是已经down掉的路由信息。然后当C的路由周期更新时间到的时候,就又会传路由给B,这样就会形成一个环路,R2不停的给R3传,R3又不停的给R2传,而它们的metric值因为在每次传之前都会加1,所以会慢慢的越来越大,直至16。





    水平分割

    执行水平分割可以阻止路由环路的发生
    从一个接口学习到路由信息,不再从这个接口发送出去
    同时也能减少路由更新信息占用的链路带宽资源

    路由协议的版本

    RIP v1:

    • 发送路由更新时不携带子网掩码,属于有类路由协议,不支持子网划分。

    • 发送路由更新时,目标地址为广播地址:255.255.255.255

    • 在主网边界的自动汇总是无法关闭的。

    RIP v2:

    • 发送路由更新是携带子网掩码,属于无类路由协议,支持子网划分。

    • 发送路由更新时,目标地址为组播地址:224.0.0.9

    • 可以关闭主网边界的路由自动汇总。

    RIP在主网边界会自动汇总:

    所以如果是做过子网划分的网络在学习路由的时候,学的都是主网段路由。

    比如:应该学到23.1.1.0/24的路由,到最后查看路由表的时候却是23.0.0.0/8主网段路由。那其实这是汇总之后的路由。

    配置命令

    //开启动态路由命令
    
    R1(config)#route rip
    
    //进行网段通告命令
    
    R1(router-router)#network 192.168.1.0 //网段类型A、B、C
    
    R1(config-router)#network 12.0.0.0
    
    //查看路由表
    
    R1#show ip route
    
    // 清除路由表
    
    R1#clear ip route * // “*”代表所有
    
    // 查看当前路由协议状态
    
    R1#show ip protocols
    
    // 更改RIP版本
    
    R1(config-router)#version 2  //只有rip v2的版本才可以关闭主网边界自动汇总,而默认开启的rip路由是v1
    
    // 关闭自动主网边界自动汇总,学习子网掩码
    
    R1(config-router)#noauto-summary
    
  • 相关阅读:
    一个JS的问题,请帮下忙!
    开始练习VS2003了
    SQL查询结果的合并问题
    几个微软的好东西!
    对谷歌输入发的一点疑虑
    Visual studio 2005 sdk 安装引起的后果
    Socket协议测试:TPS偏低,和响应时间计算出来的TPS不相符的问题
    数据库索引失效
    挡板模拟器桩模块驱动模块
    nmon 监控结果
  • 原文地址:https://www.cnblogs.com/sbkill1r/p/14203625.html
Copyright © 2011-2022 走看看