当前位置: 首页 > news >正文

路由基础 | 路由引入实验 | 不同路由引入方式存在的问题

注:本文为 “路由基础 | 路由表 | 路由引入” 相关文章合辑

未整理去重。


路由基本概念 1—— 路由表信息、路由进表以及转发流程、最长掩码匹配原则

静下心来敲木鱼已于 2023-11-26 14:06:22 修改

什么是路由

路由就是指导报文转发的路径信息,可以将一个网段的数据包转发到另外的一个网段

什么是相同的网段:相同的网络号、相同的子网掩码

路由转发涉及的表项

路由转发涉及到路由表和转发表两个表项

其中路由表是控制层面的,描述了路由的发布形式,路由接收的过程等

转发表真正指导路由转发,当数据包到达设备后直接通过转发表转发(对于华为来说转发表就是 FIB 表,锐捷转发表为 Ref 表)

如何实现路由转发

首先需要有具备路由功能的网络设备都来进行路由转发

该网络设备通过路由表选择该报文匹配的路由,然后通过转发表进行路由转发

路由表包含内容

路由转发主要是依靠 目的网络地址 / 掩码 、下一跳地址、本地出接口来进行转发

华为设备路由表

img

Destination/Mask:表示此路由的目的网络地址与网络掩码。

  1. 将目的地址和子网掩码 “逻辑与” 后可得到目的主机或路由器所在网段的地址。

  2. 例如:目的地址为 1.1.1.1,掩码为 255.255.255.0 的主机或路由器所在网段的地址为 1.1.1.0。

Proto(Protocol):该路由的协议类型,也即路由器是通过什么协议获知该路由的。

Pre(Preference):路由优先级 (其他厂商叫管理距离 AD)

  • 针对同一目的地,可能存在不同下一跳、出接口等多条路由,这些不同的路由可能是由不同的路由协议发现的,也可以是手工配置的静态路由。

  • 优先级最高(数值最小)者将成为当前的最优路由(有外部优先级和内部优先级)

  • 外部优先级是我们在路由表中可以看到的优先级

img

  • 内部优先级和外部优先级的值部分一样,不过不可以修改,当外部优先级一致时,可以使用内部优先级来比较。(例如当静态的优先级改为 10 时和 OSPF 优先级一样,这时候比较内部优先级,静态为 60,ospf 为 10,此时就选择 ospf 的路由条目)

img

  • 外部优先级能比出来就用外部优先级,外部优先级一样的就比内部优先级

Cost:路由开销(cost /metric)

  • 当到达同一目的地的多条路由具有相同的路由优先级时(内外部都同时),路由开销最小的将成为当前的最优路由。

  • 不同路由协议计算 Cost 的算法不一样

NextHop:表示对于本路由器而言,到达该路由指向的目的网络的下一跳地址(下一个设备)。

Interface:表示此路由的出接口(从本路由器的哪个接口转发出去)

锐捷设备路由表

img

路由来源

  • C 直连路由
  • S 静态路由
  • I IS-IS 路由
  • O OSPF 路由
  • N1/N2 OSPF NSSA 的外部路由类型 1 路由、外部路由类型 2 路由
  • E1/E2 OSPF 外部路由类型 1 路由、外部路由类型 2 路由
  • B BGP 路由

管理距离(优先级)—— 管理距离越低越优先选择

  • 直连路由 0
  • 静态路由 1
  • EBGP 20
  • OSPF 110
  • ISIS 115
  • IBGP 200
  • 不可达路由 255

度量值 —— 也就是开销

将路由重发布到 isis 中时路由的缺省开销为 1(并且每传递给一个设备都会加上接口的开销)

将路由重发布到 ospf 中时路由的缺省开销为 20,并且外部开销类型为 2

路由表信息的来源

路由信息可以通过直连、静态、动态路由学习到

直连路由:设备自动生成指向本地直连网络

注意

  1. 使用直连路由进行路由转发时,报文的目的 IP 和路由器接口 IP 在一个网段之中。

  2. 并不是所有接口生成的直连路由都会出现在路由表中,直连路由出现在路由表中的前提是该接口的物理状态、协议状态都为 UP

img

静态路由:管理员手工配置的路由条目

优缺点:配置简单,对系统要求低。不能自动适应网络拓扑的变化,需要人工干预

注意

配置静态路由时可以配置下一跳,也可以配置出接口

一般对于点到点接口(串口)指定出接口

对于以太网接口和 VT 接口,指定下一跳(如果配置为出接口可能会存在网络不通的问题 – 配置为出接口表示认为该目的地址和自身是同一网段,对于以太网接口来说同网段需要封装目的 IP 地址的 MAC,此时没有该目的 IP 的 MAC,并且由于其实际上是不同网段的,ARP 请求也得不到回应,因此无法到达该目的地址 —— 可以通过在下一跳路由器设备开启 ARP 代理解决)

静态路由中有个特殊路由为缺省路由,在路由表中一 0.0.0.0/0 的形式存在。当报文没有在路由表中找到匹配的具体路由时,使用此路由进行转发。(一般此路由应用于企业出口)

img

动态路由:路由设备运行动态路由协议学习到的路由

按照工作区域分类

IGP 内部网关协议: RIPv1、RIPv2、OSPFv2、OSPFv3、IS-IS

EGP 外部网关协议:BGP

按照工作机制及算法分类

DV 距离矢量路由协议: RIPv1、RIPv2

路径矢量路由协议: BGP

LS 链路状态路由协议: OSPFv2、OSPFv3、IS-IS

目前比较常用的就是 BGP 、OSPF、ISIS 协议

img

路由进表的规则

不是学到的路由都会加入到路由表中,而是从所学的路由条目中选取最优路由加入到路由表中。具体的选举规则如下(相同网段通过优先级、开销比较)

img

网段 / 掩码相同的选优先级最高的为最优路由

优先级相同的选度量值最小的为最优路由

如果网段 / 掩码、优先级、度量值都一致,则这些路由可以实现到达某一目的地负载分担


路由转发的规则

路由报文转发是通过转发表进行转发的(对于华为来说就是 FIB 表,锐捷为 Ref 表)

路由表是控制层面的,描述了路由的发布形式,路由接收的过程

真正指导路由转发的是转发表,当数据包到达设备后直接通过转发表转发

当到达同一目的地址只有一条路由条目时,就通过此路由条目转发

当到达同一目的地址有多条路由条目时,通过最长匹配原则进行转发

最长匹配原则介绍

当路由器收到一个 IP 数据包时,会将数据包的目的 IP 地址与自己本地路由表中的所有路由表项进行逐位(Bit-By-Bit)比对,直到找到匹配度最长的条目,然后通过此路由条目找到对应的转发表进行转发,这就是最长前缀匹配机制。

img

注意事项

优先级、开销只是指导路由条目进入路由表中

路由转发时依据最长匹配原则转发,不需要路由优先级、开销这些

路由转发流程

img


路由基本概念 2—— 路由高级特性(路由递归、等价路由、路由汇总)

静下心来敲木鱼已于 2023-10-02 13:36:34 修改

路由递归

路由必须有直连的下一跳才能够指导转发,但是路由生成时的下一跳不一定是直连的,此时就需要计算到达此非直连的路由。这个过程就是路由递归

img

img

等价路由(负载分担)

到达同一网段有多条路由(优先级、度量值相同,最长匹配也一致,下一跳不一致)

这多条路由就可以被称为等价路由,也可称为负载分担

img

浮动路由(路由备份)

配置静态时为到达同一目的网段指定不同的下一跳路由,并且配置不同的优先级

这些路由就称为浮动路由(路由备份)

img

路由汇总

什么是路由汇总

路由汇总是将一组具有相同前缀的路由汇聚成一条路由(采用了 CIDR 的思想),从而减小路由条目的数量,降低设备耗能

我们把汇聚之前的路由称为明细路由(精细路由),汇总后的路由称为汇总路由(聚合路由)

CIDR(无类别域间路由)

CIDR 采用 IP 地址 + 掩码长度来标识网络和子网,而不是按照传统的 A、B、C 等类型对网络地址划分。因此 CIDR 容许任意长度的掩码长度,可以将多个连续的前缀网段聚合成一个网段,减少路由表条目数量

img

路由汇总方法

路由汇总借用了 CIDR 的思想,基于一系列连续的、有规律的 IP 网段,将其进行路由汇总。

只不过与 CIDR 有些不同,为了避免汇总太过粗犷,将不需要汇总的路由也包含进去,所以要精确配置路由汇总,即路由汇总需要确保汇总路由刚好 “囊括 “明细路由

例子 1

img

例子 2

img

路由汇总带来的环路问题

img


路由基本概念 3—— 路由引入

静下心来敲木鱼已于 2023-10-02 14:49:49 修改

路由引入概念

基本概念

路由引入(import 注入、redistribute 重发布)

为什么需要路引入

由于不同路由协议之间的路由算法、机制、开销等不同,不同的路由协议之间无法直接分享彼此的路由;此时就需要通过路由引入技术将某个路由协议的路由引入到另一个路由协议中也可以相同路由协议之间引入

img

路由引入的原则

在执行引入的路由器上将某一个协议的**活动路由(即引入的路由必须存在于路由表中)**引入到另外一个路由协议中

注意事项

执行引入的路由器必须同时运行此两种 / 多种路由协议,才可以执行引入

负责引入的路由器不会改变自身的路由表,引入是外向的,只改变别人,不改变自己

在进行路由引入时,可能会带来次优路径、路由环路等问题(常见的解决方法有修改路由优先级、路由 Cost,路由 Tag 等技术)

假设在设备 1 上将路由协议 A 引入到路由协议 B,哪些路由会被引入 B

设备 1 从 A 协议学习到的路由会被引入 B 协议

设备 1 上启用了 A 协议的接口所在的网络路由会被引入 B 协议

路由引入的初始度量值

华为设备

  • 将其它协议引入到 OSPF,默认开销为 1,Type2,路由优先级为 150(可以通过 default cost 修改初始度量值)

  • 将其它协议引入到 ISIS,默认开销为 0,Level-2,路由优先级为 15(可以通过 default cost 修改初始度量值)

  • 将其它协议引入到 BGP,默认开销为 IGP 的度量值,路由优先级为 255(可以通过 default med 修改初始度量值)

路由引入更深入的讲解

在 AR10 上做路由引入

将 RIP 的路由引入到 ISIS 中,然后再将 ISIS 引入到 OSPF 中

此时 AR11 可以学习到哪个网段的路由(只可以学习到 30.1.1.0/24 和 13.13.13.13 的路由)

img

将 RIP 引入到 ISIS,此时使得 AR13 通过 ISIS 学习到了 RIP 的路由;

由于是在 AR10 上做的引入,所以 AR10 在引入后关于 ISIS 的路由与在引入前关于 ISIS 的路由是相同的,都是只有 30.1.1.0/24 和 13.13.13.13 的路由

此时再在 AR10 上将 ISIS 引入到 OSPF,OSPF 只可以学习到 30.1.1.0/24 和 13.13.13.13 的路由,无法学习到 20.1.1.0/24 和 12.12.12.12 的路由

在 AR13 上将将 RIP 的路由引入到 ISIS 中

在 AR10 上然后再将 ISIS 引入到 OSPF 中

此时 AR11 可以学习到那个网段的路由(可以学习到 30.1.1.0/24、20.1.1.0/24、13.13.13.13、12.12.12.12)的路由

img

在 AR13 上将 RIP 引入到 ISIS,此时 AR10 关于 ISIS 的路由表学习到了 20.1.1.0/24 和 12.12.12.12 的路由

在 AR10 上将 ISIS 引入到 OSPF,此时 AR11 就可以学习到 30.1.1.0/24、20.1.1.0/24、12.12.12.12、13.13.13.13 的路由了

路由引入的方式

单点双向路由引入

img

单点单向路由引入(需要下发缺省路由实现互访)

img

多点双向路由引入(此处为双点双向)

img

多点单向路由引入

同单点单向,需要下发缺省路由实现互访

不同路由引入方式存在的问题**

单点单向引入场景

什么是单点单向

单点单向:在一台设备上,将某个协议路由引入到另一个协议路由中

单点单向可能造成的问题 —— 次优路径

在单点单向引入场景中,如果将低路由优先级引入到高路由优先级中,可能会存在次优路径;将高路由优先级引入到低路由优先级中,则不会存在次优路径

次优场景

img

在 AR5 上将 RIP 引入到 ISIS 中

AR4、AR6 通过 ISIS 学习到 7.7.7.7,优先级为 15

由于 AR6 在 AR5 进行路由引入前已经通过 RIP 学习到了 7.7.7.7 的路由,优先级为 100;所以在 AR5 进行路由引入后,发现通过 ISIS 学习到的 7.7.7.7 的路由优先级更高

此时 AR6 访问 7.7.7.7 会使用 ISIS 学习到的路由(AR6-AR4-AR5-AR7),造成次优路径

如何解决次优路径 —— 通过调整路由的优先级或过滤路由来实现

1、在 AR6 上将 AR5 引入的路由的优先级调低(低于 RIP 的路由优先级,即将优先级数值调到高于 100)

2、在 AR6 上将从 RIP 学来的路由优先级调高(高于 ISIS 的路由优先级,即将优先级数值调到小于 15)

3、由于 AR6 已经有 RIP 和 ISIS 的地址了,所以可以对从 AR5 引来的路由做过滤

双点单向引入

什么是双点单向

双点单向:在两台设备上,将某个协议路由引入到另一个协议路由中

双点单向可能造成的问题 —— 会造成次优、路由回馈、环路场景

在双点单向引入场景中,如果将低路由优先级引入到高路由优先级中,可能会存在次优路径;将高路由优先级引入到低路由优先级中,则不会存在次优路径

在双点单向引入场景中,会有路由回馈的场景(R1 和 AR2 设备同时运行了 A 协议和 B 协议,此时在 AR1 上将 A 引入 B,在 AR2 上将 B 引入 A,将从 A 协议学到的路由又引入到 A 协议中,就称为路由回馈),如果发生了路由回馈现象可能会引起环路

次优场景

img

在此场景中,AR5 和 AR6 只有一个会有次优(具体谁会次优要看 AR5 和 AR6 谁先做的引入)

假如 AR5 先将 RIP 引入到 ISIS,然后 AR6 再将 RIP 引入到 ISIS

此时 AR5 将 RIP 引入到 ISIS,造成 AR6 去往 7.7.7.7 次优

此时 AR6 关于 RIP 的路由表就没有 7.7.7.7 了,所以此时在 AR6 上将 RIP 引入到 ISIS 中时不引入 7.7.7.7

AR5 去往 7.7.7.7 也不会次优

如何解决次优路径 —— 通过调整路由的优先级或过滤路由来实现

1、在 AR6 上对 AR5 引入的路由修改优先级(高于 ISIS 的路由优先级,即将优先级数值调到小于 15);在 AR5 上对 AR6 引入的路由也修改优先级(高于 ISIS 的路由优先级,即将优先级数值调到小于 15)

2、在 AR6 上对 AR5 引入的路由修改优先级(高于 ISIS 的路由优先级,即将优先级数值调到小于 15);在 AR5 上对 AR6 引入的路由也修改优先级(高于 ISIS 的路由优先级,即将优先级数值调到小于 15)

3、在 AR5 上对 AR6 引入的路由进行过滤,在 AR6 上对 AR5 引入的路由进行过滤

次优与环路同时存在场景

img

将 8.8.8.8 通过 Type2 方式引入到 OSPF 中,设置 Cost 为 2(默认为 1)

然后在 AR5 上将 OSPF 引入到 ISIS 中,在 AR6 上将 ISIS 引入到 OSPF

将 8.8.8.8 引入到 OSPF 中;此时 AR4、AR5、AR6 学习到 8.8.8.8 的路由,优先级为 150,Cost 为 2;此时 AR4、5、6 访问 8.8.8.8 去往 AR8,正常

img

在 AR5 上将 OSPF 引入到 ISIS 中;此时 AR6 学习到 8.8.8.8 的路由,优先级为 15(将之前优先为 150 的替换);此时 AR6 访问 8.8.8.8 去往 AR7,AR6 访问 8.8.8.8 就造成次优路径(单点单向造成次优);AR4 和 AR5 去往 8.8.8.8 还是正常路径,无次优

img

在 AR6 上将 ISIS 引入到 OSPF 中(路由回馈);此时 AR6 去往 8.8.8.8 的路由是从 ISIS 学到的,将 ISIS 引入到 OSPF 时,此时 AR4 会从 AR6 学习到 8.8.8.8 的路由,优先级为 150,Cost 为 1,Type 为 2(将之前 Cost 为 2,Type 为 2 的路由替换);此时 AR4 访问 8.8.8.8 就去往 AR6,AR5 访问 8.8.8.8 去往 AR4,AR6 访问 8.8.8.8 去往 AR5;在此场景下就形成了路由环路

img

如何解决次优与环路问题 —— 通过优先级、过滤或 Tag 解决

1、在 AR6 上将 AR5 引入的路由优先级调低,此时 AR6 去往 8.8.8.8 就走 OSPF,然后在 AR6 上引入 ISIS 时就不会引入 8.8.8.8 的路由了,避免了路由环路与次优

2、在 AR6 上对 AR5 引入的路由进行过滤,此时 AR6 去往 8.8.8.8 就走 OSPF,然后在 AR6 上引入 ISIS 时就不会引入 8.8.8.8 的路由了,避免了路由环路与次优

3、只使用优先级、过滤可以解决次优与环路问题,不过无法解决路由回馈问题,可以使用 tag 技术来避免路由回馈,在 AR5 上将 OSPF 引入 ISIS 时打上 Tag 10,然后在 AR6 上将 ISIS 引入 OSPF 时拒绝引入 Tag 10;在 AR6 上将 ISIS 引入 OSPF 时打上 Tag 20,然后在 AR5 上将 OSPF 引入 ISIS 时拒绝 Tag 20;此时就不存在路由回馈

注意:此场景下 Tag 只可以解决路由回馈问题,无法解决次优路径问题

单点双向引入

什么是单点双向

单点双向:在一台设备上,将 A 协议路由引入到 B 协议路由中,然后再将 B 协议路由引入到 A 协议路由中

单点双向可能引起路由次优,不会引起路由回馈

在单点多向引入场景中,如果将低路由优先级引入到高路由优先级中,可能会存在次优路径

因为在单点引入,此设备上的路由表不会发生变化,所以在进行引入是不会进行回馈

次优场景

在 AR8 上将 8.8.8.8 宣告进 OSPF,在 AR5 上将 ISIS 引入 OSPF,然后将 OSPF 引入 ISIS

img

在 AR5 上将 OSPF 引入 ISIS,AR6 通过 ISIS 学到 8.8.8.8 优先级更高,AR6 去往 8.8.8.8 的下一跳为 AR7

在 AR5 上将 ISIS 引入 OSPF,此时 AR5 上 ISIS 的路由表没有从 OSPF 引入的路由,所以将 ISIS 引入到 OSPF 时,不会发生路由回馈

可以通过通过优先级、过滤解决次优路径

1、在 AR6 上将 AR5 引入的路由优先级调低

2、在 AR6 上对 AR5 引入的路由进行过滤

双点双向引入

什么是双点双向

双点双向:在一台设备上,将 A 协议路由引入到 B 协议路由中,然后再将 B 协议路由引入到 A 协议路由中;在另一台设备上,将 A 协议路由引入到 B 协议路由中,然后再将 B 协议路由引入到 A 协议路由中

双点双向可能引起路由次优、路由环路,一定会存在路由回馈

根据做引入的顺序,解决方式的应用地点可能发生改变

次优与环路场景

img

将 8.8.8.8 通过 Type2 方式引入到 OSPF 中,设置 Cost 为 2(默认为 1)

在 AR5 上将 OSPF 引入到 ISIS 中,然后在 AR6 上将 ISIS 引入到 OSPF(先)

在 AR6 上将 OSPF 引入到 ISIS 中,然后在 AR5 上将 ISIS 引入到 OSPF(后)

在 AR5 上将 OSPF 引入到 ISIS 中,然后在 AR6 上将 ISIS 引入到 OSPF;此时会造成次优与环路(就是多点单向)

img

在 AR6 上将 OSPF 引入到 ISIS 中,然后在 AR5 上将 ISIS 引入到 OSPF;

解决上述问题后,此时在进行引入,又会出现环路和次优的问题(AR4 去往 8.8.8.8 的下一跳为 AR5,AR5 的下一跳为 AR7)

img

并且由于次优,使得双点双向无法实现负载分担(由于 AR6 关于 8.8.8.8 的路由是走 ISIS,所以在 AR6 将 OSPF 引入 ISIS 后,AR7 没有从 AR6 学习到 6.6.6.6 的路由;AR7 对于 8.8.8.8 的路由无法负载或没有备份)

img

如何解决次优与环路、无备用路径的问题 —— 通过优先级、过滤或 Tag 解决

1、在 AR6 上将 AR5 引入的路由优先级调低,此时 AR6 去往 8.8.8.8 就走 OSPF;在 AR5 上将 AR6 引入的路由优先级调低,此时 AR6 将 OSPF 引入 ISIS 时 AR6 也不会产生次优

2、在 AR6 上对 AR5 引入的路由进行过滤,此时 AR6 去往 8.8.8.8 就走 OSPF;在 AR5 上对 AR6 引入的路由进行过滤

3、只使用优先级、过滤可以解决次优与环路问题,不过无法解决路由回馈问题,可以使用 tag 技术来避免路由回馈,在 AR5 上将 OSPF 引入 ISIS 时打上 Tag 10,然后在 AR6 上将 ISIS 引入 OSPF 时拒绝引入 Tag 10;在 AR6 上将 ISIS 引入 OSPF 时打上 Tag 20,然后在 AR5 上将 OSPF 引入 ISIS 时拒绝 Tag 20;在 AR6 上将 OSPF 引入 ISIS 时打上 Tag 30,然后在 AR5 上将 ISIS 引入 OSPF 时拒绝引入 Tag 30;在 AR5 上将 ISIS 引入 OSPF 时打上 Tag 40,然后在 AR5 上将 OSPF 引入 ISIS 时拒绝 Tag 40;

以上解决次优、环路的方法不唯一,只是列举了其中比较常用的方式,具体解决方法根据现场环境进行解决即可


华为双点双向路由引入实验配置

静下心来敲木鱼已于 2023-05-13 21:49:06 修改

img

路由底层搭建

AR1、AR2、AR3、AR5 运行 OSPF 协议

AR1

ospf 1
area 0.0.0.0
interface Serial4/0/0
link-protocol ppp
ip address 15.0.0.1 255.255.255.0
ospf enable 1 area 0.0.0.0
interface GigabitEthernet0/0/0
ip address 12.0.0.1 255.255.255.0
ospf enable 1 area 0.0.0.0
interface GigabitEthernet0/0/1
ip address 13.0.0.1 255.255.255.0
ospf enable 1 area 0.0.0.0
interface LoopBack0
ip address 1.1.1.1 255.255.255.255
ospf enable 1 area 0.0.0.0

AR2

ospf 1
area 0.0.0.0
interface GigabitEthernet0/0/0
ip address 12.0.0.2 255.255.255.0
ospf enable 1 area 0.0.0.0

AR3

ospf 1
area 0.0.0.0
interface GigabitEthernet0/0/1
ip address 13.0.0.3 255.255.255.0
ospf enable 1 area 0.0.0.0

AR5—— 在 AR5 上引入 Loop0 地址(为了方便观察,本次通过路由策略只引入 5.5.5.5 的路由)

ip ip-prefix loop0 index 10 permit 5.5.5.5 32
route-policy loop0 permit node 10
if-match ip-prefix loop0
ospf 1
import-route direct route-policy loop0
area 0.0.0.0
interface Serial4/0/0
link-protocol ppp
ip address 15.0.0.5 255.255.255.0
ospf enable 1 area 0.0.0.0
interface LoopBack0
ip address 5.5.5.5 255.255.255.255

AR2、AR3、AR4 运行 ISIS 协议(level 为 2)

AR2

isis 1
is-level level-2
network-entity 49.0001.2222.2222.2222.00
interface GigabitEthernet0/0/1
ip address 24.0.0.2 255.255.255.0
isis enable 1

AR3

isis 1
is-level level-2
network-entity 49.0001.3333.3333.3333.00
interface GigabitEthernet0/0/0
ip address 34.0.0.3 255.255.255.0
isis enable 1

AR4

isis 1
is-level level-2
network-entity 49.0001.4444.4444.4444.00
interface GigabitEthernet0/0/0
ip address 34.0.0.4 255.255.255.0
isis enable 1
interface GigabitEthernet0/0/1
ip address 24.0.0.4 255.255.255.0
isis enable 1
interface LoopBack0
ip address 4.4.4.4 255.255.255.255
isis enable 1

配置双点双向引入

在 AR2 上将 OSPF 引入 ISIS,然后在 AR3 上将 ISIS 引入 OSPF

故障现象

在 AR2 上将 OSPF 引入 ISIS,会使得 AR3 产生次优路径

img

此时在 AR3 上将 ISIS 引入 OSPF,AR1 去往 5.5.5.5 的路由下一跳为 AR3,此时产生环路

img

img

通过在 AR3 上配置 5.5.5.5 的优先级来解决(将从 OSPF 学来的优先级调到低于 15)

配置前缀列表

ip ip-prefix modify_pre index 10 permit 5.5.5.5 32

配置路由策略修改优先级

route-policy modify_pre permit node 10
if-match ip-prefix modify_pre
apply preference 13
route-policy modify_pre permit node 20

在 OSPF 应用路由策略针对 ase 路由实现优先级的修改

ospf 1
preference ase route-policy modify_pre 150

此时 AR3 和 AR1 去往 5.5.5.5 的路由都回归正常

img

img

在 AR3 上将 OSPF 引入 ISIS,然后在 AR2 上将 ISIS 引入 OSPF

故障现象

在 AR3 上将 OSPF 引入 ISIS,会使得 AR2 产生次优路径

img

此时在 AR2 上将 ISIS 引入 OSPF,AR1 去往 5.5.5.5 的路由下一跳为 AR2,此时产生环路

img

img

并且此时,AR4 关于去往 5.5.5.5 的路由只有一个下一跳(去往 AR3 - 因为 AR2 上的 5.5.5.5 的路由此时走的是 ISIS,在 AR3 无法从 AR2 上学习到 5.5.5.5 的路由)

img

通过在 AR2 上配置 5.5.5.5 的优先级来解决(将从 ISIS 学来的优先级调到高于 150)

配置前缀列表

ip ip-prefix modify_pre index 10 permit 5.5.5.5 32

配置路由策略修改优先级

route-policy modify_pre permit node 10
if-match ip-prefix modify_pre
apply preference 151
route-policy modify_pre permit node 20

在 ISIS 应用路由策略实现优先级的修改

isis 1
is-level level-2
preference route-policy modify_pre

此时 AR2 和 AR1 去往 5.5.5.5 的路由都回归正常

img

img

此时 AR4 去往 5.5.5.5 的路由也有多条路径

img

通过标签来避免路由回馈

img

AR2 在将 OSPF 引入 ISIS 中时,打上标签 10,拒绝引入标签 20

AR3 在将 ISIS 引入 OSPF 中时,打上标签 20,拒绝引入标签 10

AR2 在将 ISIS 引入 OSPF 中时,打上标签 30,拒绝引入标签 40

AR3 在将 OSPF 引入 ISIS 中时,打上标签 40,拒绝引入标签 30

AR2

route-policy ospf2isis permit node 10
apply tag 10
route-policy ospf2isis deny node 20
if-match tag 20
isis 1
cost-style wide   ISIS 需要携带 Tag 时,要把开销方式配置为宽带方式,否则不传递标签属性(Tag 传递依靠扩展 TLV)
import-route ospf 1 route-policy ospf2isis
route-policy isis2ospf permit node 10
apply tag 30
route-policy isis2ospf deny node 20
if-match tag 40
ospf 1
import-route isis 1 route-policy isis2ospf

AR3

route-policy isis2ospf permit node 10
apply tag 20
route-policy isis2ospf deny node 20
if-match tag 10
ospf 1
import-route isis 1 route-policy isis2ospf
route-policy ospf2isis permit node 10
apply tag 40
route-policy ospf2isis deny node 20
if-match tag 30
isis 1
cost-style wide
import-route ospf 1 route-policy ospf2isis

via:

  • 路由基本概念 1—— 路由表信息、路由进表以及转发流程、最长掩码匹配原则 - CSDN 博客
    https://blog.csdn.net/m0_49864110/article/details/125718777

  • 路由基本概念 2—— 路由高级特性(路由递归、等价路由、路由汇总)_锐捷路由优先级 - CSDN 博客
    https://blog.csdn.net/m0_49864110/article/details/131384874

  • 路由基本概念 3—— 路由引入 - CSDN 博客
    https://blog.csdn.net/m0_49864110/article/details/126627749

  • 华为双点双向路由引入实验配置_配置双点双向 - CSDN 博客
    https://blog.csdn.net/m0_49864110/article/details/128679892

相关文章:

路由基础 | 路由引入实验 | 不同路由引入方式存在的问题

注:本文为 “路由基础 | 路由表 | 路由引入” 相关文章合辑。 未整理去重。 路由基本概念 1—— 路由表信息、路由进表以及转发流程、最长掩码匹配原则 静下心来敲木鱼已于 2023-11-26 14:06:22 修改 什么是路由 路由就是指导报文转发的路径信息,可以…...

网络安全不分家 网络安全不涉及什么

何为网络安全 信息安全是指系统的硬件、软件及其信息受到保护,并持续正常运行和服务。信息安全的实质是保护信息系统和信息资源免受各种威胁、干扰和破坏,即保证信息的安全性。 网络安全是指利用网络技术、管理和控制等措施,保证网络系统和…...

智能编程助手功能革新与价值重塑之:GitHub Copilot

引言: GitHub Copilot 的最新更新为开发者带来了显著变化,其中 Agent Mode 功能尤为引人注目。该模式能够自动识别并修复代码错误、自动生成终端命令,并具备多级任务推理能力,这使得开发者在开发复杂功能时,可大幅减少…...

wordpress企业官网建站的常用功能

WordPress 是一个功能强大的内容管理系统(CMS),广泛用于企业官网的建设。以下是企业官网建站中常用的 WordPress 功能: 1. 页面管理 自定义页面模板:企业官网通常需要多种页面布局,如首页、关于我们、产品展示、联系我们等。Wor…...

讯方·智汇云校华为官方授权培训机构

1.官方授权 讯方智汇云校是华为领先级授权培训机构(华为授权培训合作伙伴(HALP)体系,分为认证、优选、领先三个等级,领先级是HALP最高级),代表着华为对培训合作伙伴在专业能力、师资队伍、合作…...

C语言中的文件

文章目录 文件1. 流1.1 文件缓冲1.2 标准流1.3 文本文件和二进制文件 2. 打开/关闭文件2.1 fopen2.2 fclose 3. 读写文件3.1 fgetc & fputc3.2 fgets & futs3.3 fscanf & fprintf3.4 fread & fwrite 4. 文件定位5. 错误处理5.1 errno 文件 1. 流 在 C 语言中…...

利用分治策略优化快速排序

1. 基本思想 分治快速排序(Quick Sort)是一种基于分治法的排序算法,采用递归的方式将一个数组分割成小的子数组,并通过交换元素来使得每个子数组元素按照特定顺序排列,最终将整个数组排序。 快速排序的基本步骤&#…...

前端工程化的具体实现细节

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...

数据分析--数据清洗

一、数据清洗的重要性:数据质量决定分析成败 1.1 真实案例警示 电商平台事故:2019年某电商大促期间,因价格数据未清洗导致错误标价,产生3000万元损失医疗数据分析:未清洗的异常血压值(如300mmHg&#xff…...

✨1.HTML、CSS 和 JavaScript 是什么?

✨✨ HTML、CSS 和 JavaScript 是构建网页的三大核心技术,它们相互协作,让网页呈现出丰富的内容、精美的样式和交互功能。以下为你详细介绍: 🦋1. HTML(超文本标记语言) 定义:HTML 是一种用于描…...

QT--常用对话框

文章目录 前言一、颜色对话框颜色对话框代码解析 二、文本对话框文本对话框代码解析 三、输入对话框1.整型输入对话框2.浮点数输入对话框3.条目对话框 四、提示对话框1.提问对话框2.消息对话框3.警告对话框4.关键对话框 五、进度对话框六、向导对话框总结 前言 今天介绍几种标…...

基于 Ollama 工具的 LLM 大语言模型如何部署,以 DeepSeek 14B 本地部署为例

简简单单 Online zuozuo :本心、输入输出、结果 文章目录 基于 Ollama 工具的 LLM 大语言模型如何部署,以 DeepSeek 14B 本地部署为例前言下载 Ollama实际部署所需的硬件要求设置 LLM 使用 GPU ,发挥 100% GPU 性能Ollama 大模型管理命令大模型的实际运行资源消耗基于 Ollam…...

图的最小生成树算法: Prim算法和Kruskal算法(C++)

上一节我们学习了最短路径算法, 这一节来学习最小生成树. 最小生成树(Minimum Spanning Tree, MST)算法是图论中的一种重要算法, 主要用于在加权无向图中找到一棵生成树, 使得这棵树包含图中的所有顶点, 并且所有边的权重之和最小. 这样的树被称为最小生成树. 最小生成树广泛应…...

WPS的AI助手进化跟踪(灵犀+插件)

Ver V0.0 250216: 如何给WPS安装插件用以支持其他大模型LLM V0.1 250217: WPS的灵犀AI现在是DeepSeek R1(可能是全参数671B) 前言 WPS也有内置的AI,叫灵犀,之前应是自已的LLM模型,只能说是属于“能用,有好过无”,所…...

我用AI做数据分析之数据清洗

我用AI做数据分析之数据清洗 AI与数据分析的融合效果怎样? 这里描述自己在使用AI进行数据分析(数据清洗)过程中的几个小故事: 1. 变量名的翻译 有一个项目是某医生自己收集的数据,变量名使用的是中文,分…...

一周学会Flask3 Python Web开发-request请求对象与url传参

锋哥原创的Flask3 Python Web开发 Flask3视频教程: 2025版 Flask3 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili request请求对象封装了从客户端发来的请求报文信息,我们可以从中获取所有数据。 request对象包含的常用属性&…...

【ISO 14229-1:2023 UDS诊断(ECU复位0x11服务)测试用例CAPL代码全解析④】

ISO 14229-1:2023 UDS诊断【ECU复位0x11服务】_TestCase04 作者:车端域控测试工程师 更新日期:2025年02月17日 关键词:UDS诊断协议、ECU复位服务、0x11服务、ISO 14229-1:2023 TC11-004测试用例 用例ID测试场景验证要点参考条款预期结果TC…...

网络技术变迁:从IPv4走向IPv6

目录 前言 旧时代产物:IPv4 什么是IPv4? IPv4的工作方式 IPv4的缺点 为什么要从IPv4过渡到IPv6? 走向IPv6:新一代互联网协议 IPv6的技术特性 我们需要过渡技术 双栈(Dual Stack) 隧道技术&#…...

DeepSeek教unity------事件管理

1. 定义事件类型 定义一个枚举来表示不同类型的事件。组织和识别不同的事件。 2. 创建事件参数类 为了让事件携带数据,创建一个通用的事件参数类或者为每个事件类型创建特定的参数类。 3. 实现事件管理器 创建一个EventManager类,用于管理事件的注册…...

确保设备始终处于最佳运行状态,延长设备的使用寿命,保障系统的稳定运行的智慧地产开源了

智慧地产视觉监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。通过计算机视觉和…...

【第二十一章 SDIO接口(SDIO)】

第二十一章 SDIO接口 目录 第二十一章 SDIO接口(SDIO) 1 SDIO 主要功能 2 SDIO 总线拓扑 3 SDIO 功能描述 3.1 SDIO 适配器 3.2 SDIOAHB 接口 4 卡功能描述 4.1 卡识别模式 4.2 卡复位 4.3 操作电压范围确认 4.4 卡识别过程 4.5 写数据块 4.6 读数据块 4.7 数据流…...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)

船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险

C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机,它可以执行Java字节码。Java虚拟机是Java平台的一部分,Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用: 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests:发送 …...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障

关键领域软件测试的"安全密码":Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天,软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力,从金融交易到交通管控,这些关乎国计民生的关键领域…...

Linux中《基础IO》详细介绍

目录 理解"文件"狭义理解广义理解文件操作的归类认知系统角度文件类别 回顾C文件接口打开文件写文件读文件稍作修改,实现简单cat命令 输出信息到显示器,你有哪些方法stdin & stdout & stderr打开文件的方式 系统⽂件I/O⼀种传递标志位…...

2.2.2 ASPICE的需求分析

ASPICE的需求分析是汽车软件开发过程中至关重要的一环,它涉及到对需求进行详细分析、验证和确认,以确保软件产品能够满足客户和用户的需求。在ASPICE中,需求分析的关键步骤包括: 需求细化:将从需求收集阶段获得的高层需…...

深度解析云存储:概念、架构与应用实践

在数据爆炸式增长的时代,传统本地存储因容量限制、管理复杂等问题,已难以满足企业和个人的需求。云存储凭借灵活扩展、便捷访问等特性,成为数据存储领域的主流解决方案。从个人照片备份到企业核心数据管理,云存储正重塑数据存储与…...