RIP实验以及核心原理

RIP(Routing Information Protocol,路由信息协议)是一种内部网关协议,基于距离矢量算法,用于在自治系统内交换路由信息。

RIP 核心原理

  • 距离矢量算法:RIP 使用跳数作为路径选择的唯一度量标准。每经过一个路由器,跳数加 1,最大跳数为 15,16 跳则视为不可达。路由器通过比较跳数来选择到达目标网络的最佳路径,跳数越少的路径越优。
  • 路由表更新机制
    • 初始启动:路由器启动时,仅知道直连网络,会将这些直连网络信息加入到路由表中。
    • 周期性更新:默认情况下,路由器每 30 秒向邻居广播整个路由表。通过这种方式,邻居路由器可以获取到其路由信息,并据此更新自己的路由表。
    • 触发更新:当网络拓扑发生变化,如某个接口故障或新增了网络链路,路由器会立即发送更新报文,以尽快将变化告知其他路由器,防止路由环路的产生。
  • 环路避免机制:RIP 采用水平分割机制来避免环路。即路由器不从接收更新的接口再发送相同路由信息,这样可以阻止路由信息在两个相邻路由器之间来回传递,从而避免路由环路的形成。

RIP实验

二.实验拓扑图

三、实验需求

  1. 按照图示配置 IP 地址
  2. 配置 RIP 实现全网路由互通
  3. 要求全网路由器不能出现明细路由(直连网段除外),不影响网络正常访问
  4. 业务网段不允许出现协议报文

四,实验步骤:

步骤一:配置四台PC的IP地址,以及路由器各个接口的IP地址。此处省略,可以去看以往的
文章。
步骤二:配置RIP实验全网互通
R1:在 R1,R2,R3 上分别配置 RIP v2,关闭自动聚合,并宣告所有直连网段
python 复制代码
[H3C]rip 1
[H3C-rip-1]undo summary
[H3C-rip-1]version 2
[H3C-rip-1]network 172.16.0.0
[H3C-rip-1]network 172.16.1.0
[H3C-rip-1]network 192.168.12.0

R2:

python 复制代码
[H3C]rip 1
[H3C-rip-1]undo summary
[H3C-rip-1]network 192.168.12.0
[H3C-rip-1]network 192.168.23.0
[H3C-rip-1]version 2

R3:

python 复制代码
[H3C]rip 1
[H3C-rip-1]undo summary
[H3C-rip-1]version 2
[H3C-rip-1]network 192.168.23.0
[H3C-rip-1]network 192.16.2.0
[H3C-rip-1]network 192.16.3.0
步骤三:要求全网路由器不能出现明细路由(直连网段除外),不影响网络正常访问

分析:上一步中的 RIP 已经配置完成,但路由器学习到的都是各网段的明细路由。在网络结构庞大的拓扑中,明细路由太多会导致路由器查表效率降低,所以需要配置路由聚合来减少路由数量
RIP 的聚合方式分为自动聚合和手动聚合。自动聚合是聚合为主类网段,在本拓扑中会造成路由环路,所以只能使用手动聚合R1 连接的 2 个业务网段的路由可以聚合为一条 172.16.0.0/23,R3连接的 2 个业务网段的路由可以聚合为一条 172.16.2.0/23,在各自的路由传递的出接口上配置手动聚合

1:在 R1 的 g0/0 接口配置手动路由聚合
python 复制代码
[R1]int g0/0
[R1-GigabitEthernet0/0]rip summary-address 172.16.0.0 23
2:在 R3 的 g0/0 接口配置手动路由聚合
python 复制代码
[R3]int g0/0
[R3-GigabitEthernet0/0]rip summary-address 172.16.2.0 23
步骤四:业务网段不允许出现协议报文
分析:基于 network 命令的两层含义,R1 和 R3 对直连的业务网段进行宣告后,会往该网段发送 RIP 的协议报文。这些协议报文是完全没有意义的,还会消耗网络带宽,所以需要配置静默接口

步骤 1:把 R1 连接业务网段的 g0/1 和 g0/2 接口配置为静默接口

python 复制代码
[R1-rip-1]silent-interface g0/1
[R1-rip-1]silent-interface g0/2
步骤 2:把 R3 连接业务网段的 g0/1 和 g0/2 接口配置为静默接口
python 复制代码
[R3-rip-1]silent-interface g0/1
[R3-rip-1]silent-interface g0/2
相关推荐
HABuo17 分钟前
【Linux进程(四)】进程切换&环境变量深入剖析
linux·运维·服务器·c语言·c++·ubuntu·centos
橘颂TA33 分钟前
【Linux】死锁四条件的底层逻辑:从锁冲突到 STL 组件的线程安全实践(Ⅵ)
linux·运维·服务器·c++·死锁
运维栈记36 分钟前
虚拟化网络的根基-网络命名空间
网络·docker·容器
五仁火烧1 小时前
生产环境中配置了接口3000后,不能启动,改成8080后就可以
linux·网络·安全·vue
黄焖鸡能干四碗1 小时前
智能制造工业大数据应用及探索方案(PPT文件)
大数据·运维·人工智能·制造·需求分析
橙露1 小时前
国产PLC与进口PLC全面对比分析:技术、市场与未来趋势
运维·网络
lbb 小魔仙1 小时前
【Linux】云原生运维效率提升:Linux 终端工具链(kubectl + tmux + fzf)组合拳教程
linux·运维·云原生
清水白石0081 小时前
解构异步编程的两种哲学:从 asyncio 到 Trio,理解 Nursery 的魔力
运维·服务器·数据库·python
chilavert3182 小时前
技术演进中的开发沉思-302计算机原理:网络基础
网络·计算机原理
Joren的学习记录2 小时前
【Linux运维大神系列】Kubernetes详解3(kubeadm部署k8s1.23高可用集群)
linux·运维·kubernetes