带你重新认识动态路由协议

前言:
很多同学对动态路由协议不能说不了解,但是懂的也只是一知半解,索性写一篇从无到有,从基础入手,带你重新认识动态路由协议的产生以及优点,采用经典的RIP、OSPF协议来进行入门

动态路由协议

1.1 概述

动态路由协议:各台路由器上运行相同的协议,这些协议会让设备间进行沟通,通过学习的方式来获取未知的路由条目信息,最终实现全网可达

动态路由协议的障碍:

1、安全

2、选路不佳—最严重为出现环路

3、对硬件资源的占用

动态路由协议的优点:

1、配置管理方便

2、针对拓扑变化自动重新收敛

3、实用于较大复杂的网络环境

动态路由协议的追求:

1、占用资源少

2、选择路径佳

3、收敛速度快–信息同一时间全网同步,将降低出环的概率;

1.2 分类

1.按照使用范围(AS 自治系统)

IGP 内部网关路由协议(RIP、OSPF、EIGRP、ISIS)

EGP 外部网关路由协议(EGP V1-V2  BGP V1-V4 V4+)
什么是自治系统?
	自治系统:autonomous system。
	在互联网中,一个自治系统(AS)是一个有权自主地决定在本系统中应采用何种路由协议的小型单位.
	这个网络单位可以是一个简单的网络也可以是一个由一个或多个普通的网络管理员来控制的网络群体
	它是一个单独的可管理的网络单元(例如一所大学,一个企业或者一个公司个体)。
	一个自治系统有时也被称为是一个路由选择域(routing domain)。
	一个自治系统将会分配一个全局的唯一的16位号码,有时我们把这个号码叫做自治系统号(ASN)。
	AS自治系统----0-65535  其中1-64511公有   64512-65535私有

以下两种是基于IGP的分类 基于更新时是否携带子网掩码、基于算法的工作特点

2.按照是否携带网络掩码

有类别:通告路由时,携带主类掩码,有ABC类之分

无类别:通告路由时,不携带主类掩码,无ABC之分  

3.按照算法特点进行分类

DV (Distance Vector) 距离矢量 邻居间共享路由表  传闻型协议  更新量小

LS (Link State) 链路状态 邻居间共享LSA(链路状态通告)主要共享拓扑信息  更新大  为了防环

1.3 RIP

1.3.1 概述

使用范围:IGP

三个版本:RIPV1不携带掩码无ABC之分、RIPV2携带掩码有主类之分、RIPNG适用于IPV6

算法:基于贝尔曼·福特算法,典型的DV型路由协议,基于UDP的520端口进行封装

防环机制:采用条数作为度量,最大15跳,16跳不可达

组播更新地址:RIPV1 255.255.255.255 RIPV2 224.0.0.9

组播更新代替广播更新的优势?为什么要这样做?
误区:
减少网络的负载;单播、组播、广播都是一个包,同样的数据量对于网络带宽的占用是相同的,真正的区别在于目标的IP地址

答案:
减少了对不相关设备的开销/开销

详解:
广播->
路由器发送了一个广播数据帧,来到交换机后,交换机进行洪范行为,收到数据帧的设备,进行解封装
1.将一层的比特流转换程二层的数据帧,读取目标MAC地址,全F
2.继续解封装(拆掉二层),来到三层,查看目标IP,255.255.255.255
3.继续解封装(拆掉三层),来到四层,查看目标端口为UDP的520
此时对于没有运行RIP协议的设备来说,直接丢弃

组播->
路由器发送了一个组播数据帧,来到交换机后,交换机进行洪范行为
1.将一层的比特流转换程二层的数据帧,读取目标MAC地址,01005E开头的组播
此时对于没有运行RIPV2的设备,即没有加入这个组播内的设备,将不会继续进行解封装到三层

路由的更新方式:周期+触发

支持等开销负载均衡 默认支持4条,最大6条

Cisco管理距离为120(华为中叫做优先级 为100)

实验演示中查看:

模拟环境:
GNS3(Cisco)
eNSP(Huawei)

拓扑相同

在RIP中宣告的自己的环回

在这里插入图片描述
在这里插入图片描述

Cisco:
在这里插入图片描述
Huawei:
在这里插入图片描述

1.3.2 更新机制

要理解RIP的更新机制,首先要明白都存在那些更新方式,分为以下三种

同步更新
周期更新
异步更新
触发更新

同步更新: 同一时刻,所有的路由器同时更新其他路由器传递来的路由

缺点:若多个路由器同时传路由信息,会造成网络资源占用过大,造成卡顿

RIP为什么不能同步更新?

路由器每30s更新一次,若所有的路由器都在同一时刻进行路由的更新的话,就会造成网络资源占用过大

周期更新: 采用周期性的方式更新路由,例如RIP的30s周期性更新路由条目

RIP为什么会存在周期更新?

由于RIP中没有像OSPF、EIGRP协议的hello、ack包这样用于保活,确认的机制,所以需要一个能持续性的周期来保活与确认,说到底就是为了保持邻居间的关系与路由的确认机制

结论:

一个动态路由协议好不好,要看能不能摆脱周期更新,比如OSPF使用hello、ack,但是也存在周期更新(时间比较长,30min更新一次,设计者是个完美注意者);BGP就使用的是TCP,没有hello包 叫做keepalive包,其作用是一致的

异步更新: 运行一个散列函数,每个路由器随机在0-0.15中产生一个散列数,用这个散列数乘上30s(周期更新的时间)为下一次更新的提前量,(如果产生的是0.1 乘上30为3,即下一次更新为27s后)使更新时间提前(0-0.15)X 30s,实际更新时间:25.5-30s

1.3.3 防环机制

1.水平分割

若某条路由条目从X接口进,则不能从X接口出

注意:
a.针对的是直线拓扑的防环
b.为了避免重复更新,MA网络下  {OSPF采用的是MA的DR/BDR选举,只有DR才能传递与收发路由}

2.最大跳数 15跳 16跳不可达

目的:为了控制协议的工作半径

3.毒性逆转水平分割

毒性:为了告诉邻居路由器X路由不可达,将这条路由的条数加大(>15),加毒
逆转:由于没有ACK包的确认,导致R1并不知道R2有没有收到带毒的路由,所以要打破水平分割

4.抑制计时器

Update 更新每30s发送一次路由信息(rip协议的发送周期间隔)
Invalid 无效当一条路由持续180s没有再收到,将状态置为possibly down ,可能死亡状态
Hold down 抑制 (冻结)当一条路由信息无效后180s没收到,就会抑制从该网段发来的信息,实际作用时间只有60s 为了防环
Flush 刷新当一条路由持续240s没再收到,就将其从路由表中删除
Update    更新计时器 30s  -->就是RIP协议的路由条目的发送周期间隔
Invaild   无效计数器 180s -->当一条路由条目180s没有在收到,将状态置为possibly down,可能死亡状态,说白了就是死亡了
Flush     刷新计时器 240s -->当一条路由持续240s没再收到,就将其从路由表中删除,说白了就是死透了,该直接埋了
Hold Down 抑制(冻结)计时器 -->当一条路由信息无效后180s没收到,就会抑制从该网段发来的信息,实际作用时间只有60s 为了防环 

为什么存在抑制计时器?

案例分析: 若一条路由已经过了无效时间了,即已经死了,但是还没有死透,此时若收到了此条路由,但是metric比较大,那么该不该加表呢?理论上是应该加表的,但是由于RIP的特殊的更新方式(周期更新),可能导致下图的情况,所有路由器都运行了RIP协议,若此时R1的环回出现了故障,180s后对于R1来说自己的环回处于死亡状态,但是,此时R7或R8由于之前学习到R1的环回,所以将R1的环回传递给了R1,传递到R1的时候过了180s但是没有到240s,R1此时肯定是不能加表的,因为出现环路了(R1从R2学习自己的环回,R2是之前从R1学习的环回)。
所以为了防环,出现了抑制计时器,抑制计时器实际上只工作60s,因为180+60=240s,这个时间是刷新计时器,即将无效的路由条目删除,死透了,直接埋了

在这里插入图片描述

1.3.4 汇总

自动汇总:针对所有距离矢量型协议,默认都执行自动汇总,将传递的路由汇总为主类网络

所有的距离矢量型协议默认都执行自动汇总,将传递的路由都会汇总成主类网络

手工汇总:RIPV2支持手工汇总,仅仅支持VLSM(可变长子网掩码) 不支持CIDR(无类别域间路由。也称为超网)

VLSM(可变长子网掩码):汇总后掩码<主类掩码---192.168.0.0/17

CIDR(超网):汇总后掩码>主类掩码---172.16.0.0/17

1.3.5 Cisco、Huawei区别

Cisco和华为在rip中的区别:

1、Cisco中邻居间共享路由时,除使用水平分割机制外,同时不工作邻居间直连网段路由;

华为中邻居间共享路由时,在水平分割的同时,传递邻居间直连网段路由,但度量为16;但华为的这种16跳会在周期更新几次后,停止;

2、华为中毒性逆转水平分割,不存在逆转行为;仅进行毒性行为,多周期几次;

实验抓包演示:

Cisco中并不传递邻居间的直连路由
在这里插入图片描述在这里插入图片描述

当R1的环回出现故障后,Cisco设备上是存在毒性和逆转的,如下抓包的演示

在这里插入图片描述在这里插入图片描述

Huawei中的RIP协议传递邻居的网段为16跳,周期更新数次后,会不传递邻居的直连路由

在这里插入图片描述在这里插入图片描述在这里插入图片描述

由于Huawei设备不能对环回接口进行shutdown,所以实验拓扑变成下图

在这里插入图片描述
当R1连接PC1的接口出现故障时,即毒性逆转水平分割,但是并不执行逆转,只是R1单方面的发送毒性路由,周期数次后,根据抑制计时器的存在,将故障路由清除即可,下面是抓包演示

此时,R1还在开心的分享自己的路由条目

在这里插入图片描述

当R1连接PC1的接口出现故障时,R1立即发送毒性路由

在这里插入图片描述
在这里插入图片描述

对于R2路由器并不会去进行逆转的行为,多次周期后,毒性路由就消失了(抑制计时器的存在)
在这里插入图片描述

1.4 OSPF

OSPF汇总
OSPF的相关面试问题

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值