• 路由协议是什么


    1、路由协议是基于什么底层协议的,并且基于这些底层协议导致他们的工作方式有什么特点?
    (1)BGP是基于TCP的,端口号179,TCP是可靠的传输层协议,所以BGP在发送update消息时,是不需要确认机制的(依赖于TCP的ACK来确认是否收 到)。基于TCP的协议建立邻居也可以跨设备建立邻居(单播),只要保证TCP的源IP地址和目的IP地址可达。

    (2)OSPF是基于IP的,协议号为89 。IP协议是不可靠的,所以OSPF开发了很多可靠性机制(hello包的邻居列表,DD报文使用序列号做隐式确认,LSR/LSU/LSACK之间的相互确认)。 OSPF基于IP层,只能支持IP网络。如OSPFV2用于IPV4,OSPFV3用于IPV6。

    (3)ISIS是基于数据链路层的,所以它可以支持多种网络层协议,不受网络层协议限制使用ISIS的版本。

    有无邻居关系哪种更优?
    有邻居关系不需要频繁周期性的传递路由信息
    邻居存在则保存邻居传递过来的路由,周期更新主要是数据库同步
    1、有邻居相当于提前建立好一个通道,感知故障,路由收敛快;
    2、不需要频繁周期性发送路由更新,只需要维护好邻居关系即可;

    2、路由协议的分类,都有什么特点和优缺点
    (1)协议的工作范围:IGP/EGP
    IGP:工作在AS内,用于AS内交互路由信息;主要用于发现,选择以及计算最优路由如:RIP/ISIS/OSPF

    EGP:工作在AS间,用于AS间交互路由信息;主要用于传递以及选择最优路由如:BGP (早期有EGP协议)

    (2)是否携带掩码:有类/无类协议
    有类:传递路由信息时不携带掩码
    举例:RIPV1
    无类:传递路由信息时携带掩码

    举例:ISIS/OSPF,BGP

    (3)协议的算法:DV/LSDV(距离矢量):
    只关心到达目的距离和方向,无网络拓扑;路由更新报文中,只包含路由信息,无拓扑信息;逐跳收敛,根据邻居传递的路由信息计算出路由表。举例:RIP/BGP
    LS(链路状态):关心整个网络的拓扑;路由更新报文中,包含路由信息以及拓扑信息;根据自身SPF算法计算路由。
    举例:OSPF/ISIS

    怎么理解距离矢量和链路状态?
    距离矢量:路由传递的时候只包含路由信息,没有拓扑信息;只关心去往目的地址的方向;
    链路状态:路由传递是既包含路由信息也包含拓扑信息;会以自己为根建立全网拓扑;
    要点:1、传递的信息;2、设备有无全网拓扑。

    在距离矢量路由协议RIP和BGP,在计算路由的时候它们有什么区别?
    RIP用跳数来衡量距离,下一跳地址说明方向。(若下一跳无填充,则以response 报文的源地址确定方向 )BGP用丰富的路径属性来得知距离和方向(公认必遵属性的next-hop字段)

    3、各路由协议的路由优先级分别是多少?为什么这样设计?
    路由器分别定义了外部优先级和内部优先级,数值越小表明优先级越高外部优先级是指用户可以手工为各路由协议配置的优先级。
    在这里插入图片描述

    直连路由(DIRECT)的优先级不能被修改。

    内部优先级:不能被用户手工修改,外部优先级比较不出来时,会根据内部优先级比较。
    在这里插入图片描述

    为什么这么设计各种协议的优先级?
    (1)存在两种优先级的原因:在不同的路由协议配置了相同的优先级的情况下,系统可以通过内部优先级决定哪个路由协议发现的路由将成为最优路由。

    (2)设计外部路由优先级的原因:
    1 rip和静态 : 静态路由是由管理员手工配置所以优于rip从邻 居学来的 路由。
    2 rip 和 ospf、isis:RIP 是一种距离矢量路由协议,可靠性较低;isis 和ospf都是链路状态路由协议,可靠性比较高。
    3 ospf 和 isis: ospf 普及程度比 ISIS 高。
    4 静态和ospf: 静态路由的配置量大,不易于管理;ospf是动态学 习路由的,可以保证路由无环,和感知网络变化。
    5 Bgp: 主要用于自治系统间传递路由的,而其他路由协议 都是用于AS内的;AS内学习到的路由,可靠程度要优于AS外学习过来的路由。所以BGP的优先级被设计为 255

    (3)ISIS 和 BGP 内部路由设计的原因:ISIS设计两个优先级,用于区分区域内的路由和区域间的路由,能够防止次优。BGP设计两个优先级,以下图为例:

    194418cyt43ky4quqpk5wl.png

    左下角路由器分别从 EBGP 邻居与 IBGP 邻居收到关于 100.1.1.0/24 的路由。此时,应该选择EBGP邻居发来的路由。因为此路由没有经过LocalAS,减小 了在 LocalAS 传输的开销。

    OSPF设计2种优先级别有什么好处?
    ospf设计两个优先级,用于区分AS内路由和AS外路由,能够在路由引入的时 候防止次优(例子如下图)

    在这里插入图片描述

    R3 将 172.16.0.0/22 的路由引入到 OSPF 域后,R4 会从 RIP、OSPF 都收到关于172.16.0.0/22 的路由。
    此时,如果没有 OSPFAES、NSSA 的优先级。那么 R4 上 OSPF 的优先级为 10,优于RIP的100。所以R4会选择从OSPF去往目标网段,造成次优路径。如果有 OSPFAES、NSSA 的优先级。R4 上关于目标网段的路由,OSPF 为 150、
    RIP 为 100;R4 选择 RIP 去往目标网段。

    不同厂家的路由器互联时,关于路由优先级要注意什么问题?
    不同厂家设计路由协议时优先级是不一致的,所以要注意调整为一致,否则可能出次优路径的问题。(思科设备 ospf优先级为110,静态路由优先级为 1)

    OSPF不同进程学习路由,场景分析。
    场景1、问:R2优选R1的路由还是R3的路由?如果在R2将OSPFASE的优先级修改为8呢,此时R2如何优选?

    194510tav4atv48at79sk0.png

    R2会从OSPF进程1中收到5类LSA和1、2类LSA,这是由相同进程发过来的LSA,所以R2会优选路由域内的1、2类LSA来生成路由条目。将OSPFASE或OSPFNSSA类型的路由协议优先级修改为8后,R2依旧会选择R3的路由。因为同一个进程学习到的路由不会比较优先级,只按照区域内>区域间>路由域外的规则进行比较。(通过自身还原拓扑进行计算路由以及优选)

    场景2、问:R2优选R1的路由还是R3的路由?如果在R2将OSPFASE的优先级修改为8呢,此时R2如何优选?

    194542f1f7p66mllnhc9h1.png

    R2会从OSPF进程1中学到R1的5类LSA,从OSPF进程2中学到R3的1、2类LSA;此时R2会生成2条路由,一条路由协议类型为OSPFASE和一条路由协议类型为OSPF,经过路由协议类型的优先级优选比较后选择路由协议类型为OSPF的路由下发到路由表中。如果R2将OSPFASE的优先级修改为8,那么OSPFASE的优先级将会优于OSPF,所以此时R2优选R1发来的路由。(不同进程的路由会当做不同协议来处理,先比较优先级)

    路由器是如何查找路由表的?
    首先优选最长匹配,然后比较路由优先级(子网与掩码一致优先级不同只会将最优的路由浮现在路由表中),最后比较cost值

    null0接口在各路由协议中的作用?有什么区别?

    在BGP中是两点原因:
    1.为了有路由能够network进BGP路由表中(因为BGP将路由network进入到BGP中时,需要该路由存在于路由中)
    2.是为了防止聚合路由后,环路的出现。在IGP 中配置指向null0的 汇总路由时均是为了防止环路的产生。

    环路出现的场景:以RIP为例

    194646hrgut6mrjc0kb040.png

    首先AR1上产生一条默认路由进RIP域中,然后AR3汇总出192.168.0.0/22的路由传给AR2。如果 AR3 下的主机访问 192.168.3.0/24 网段,AR3 会匹配到 AR1 传过来的默认路由发送数据包给AR2;AR2 收到数据包后,会匹配到 AR3 传递过来的汇总路由 192.168.0.0/22,又将数据包发送给AR3;环路产生。
    解决方法:
    AR3在发送汇总路由给AR2的时候,在自己本地路由表生成一条前缀192.168.0.0/22、下一跳指向 null0 的路由。

    同的路由协议是怎么传递路由的?
    OSPF:通过LSU报文,传递链路状态信息(LSA),通过收集的链路状态信息使用SPF算法计算出路由;
    ISIS:通过 LSP 报文;
    BGP:通过 Update 报文,传递更新路由;

    各个协议的度量值是怎么计算的?
    OSPF–带宽
    ISIS–默认 cost=10
    BGP–丰富的路径属性

    由的产生方式?
    1、链路层协议发现的路由(接口路由或直连路由);
    2、由网络管理员手工配置的静态路由;
    3、动态路由协议发现的路由;(不同的路由协议产生路由的方式不一致)。
    4、汇总路由产生一条新路由;(BGP中,其他IGP 协议在汇总后,自身并不存在此条汇总路由)

  • 相关阅读:
    【Redis】10道不得不会的Redis面试题
    本周大新闻|苹果MR已进行Pre-EVT测试,Quest 2涨价100美元
    Codeforces Round #820 (Div. 3)A. Two Elevators
    Linux计划任务管理,网络管理
    第六章 图(中)【图的基本操作和遍历】
    【Linux学习】- POSIX多线程技术
    K8s的Pod详细解析
    vue之表单输入绑定
    RESTFul风格接口如何设计
    网络协议--Ping程序
  • 原文地址:https://blog.csdn.net/qq_23930765/article/details/125889091