热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HCIP第十天(OSPF选路原则、防环、重发布、路由策略)

目录OSPF的选路原则不同类型的LSA之间的比较OSPF的防环重发布作用条件规则配置RIPA-B静态-B直连-BOSPFA-B静态-B直连-B双点重发布路由策略1、抓取

目录

OSPF的选路原则

不同类型的LSA之间的比较

OSPF的防环

重发布

作用

条件

规则

配置

RIP

A -> B

静态 -> B

直连 -> B

OSPF

A -> B

静态 -> B

直连 -> B

双点重发布

路由策略

1、抓取流量(控制层流量)

2、路由策略

3、Route-policy(路由策略)

ROUTE-POLICY的配置指南


OSPF的选路原则

1、域内(支持1类和2类LSA)

如果学到的路由都是通过1类,2类LSA获取到域内路由,该情况会直接比较开销值,优先选择开销值较小的路线,如果两条路由的开销值相同,则负载均衡

2、域间(支持3类LSA)

如果学到的路由都是通过3类LSA获取的域间路由,该情况会直接比较开销值,优先选择开销值小的路线,如果两条路的开销值相同,则负载均衡。

3、域外(支持5类和7类LSA)

1)5类LSA和7类LSA类型1的选路原则:直接比较路由的总开销(种子度量值家沿途累加开销值),优先选择总开销较小的路线。如果总开销相同,则将形成负载均衡。

2)5类LSA和7类LSA类型2的选路原则:先比较种子度量值,优选种子度量值小的;如果种子度量值相同,则比较沿途累加的开销值,选择沿路累加开销值小的;如果沿途累加开销值也相同,则负载均衡。

Type 1:如果是类型1,则传递的度量值是种子度量值家沿途累加度量值。

Type 2:如果是类型2,则传递的度量值为种子度量值。默认选择类型2。

注意:类型1和类型2之间存在一个优先选路规则,即类型1永远优于类型2。

命令:[r3]display ospf lsdb ase    //该命令可以展开所有5类LSA

不同类型的LSA之间的比较

1、域内和域间

域内路由通过1类和2类LSA学习路由信息,域间路由通过3类LSA学习路由信息,域内路由优先级高于域间路由。

2、域间和域外

域外路由通过5类和7类LSA学习路由信息。域间路由优先级高于域外路由。

3、5类和7类LSA

在华为体系中,5类和7类LSA可以看作是一类相同的LSA,开销值相同时也会负载均衡。

OSPF的防环

1、域间防环

1)星型拓扑的区域划分规则就是一种防环手段。

2)区域之间存在水平分割机制(区域水平分割)。

2、域内防环

OSPF在区域内部传递的是拓扑信息,需要通过SPF算法(最短路径优先算法)计算路由条目,所以域内的防环主要依靠SPF算法。

重发布

作用

在一个网络中,若运行多种路由协议或者相同协议的不同进程,由于协议之间不能直接沟通计算,进程之间也是独立进行转发和运算的,所以需要使用重发布来实现路由下共享。

条件

1、必须存在ASBR(同时连接两种协议或同时运行两个进程,同时学习到两边的路由信息,之后进行路由共享)。

2、必须关注种子度量值(起始度量)。A、B协议的度量计算逻辑不同,无法直接使用。故在将A协议重发布到B协议时,ASBR将不携带A协议原先所设定的开销值,而是在共享到B协议时,由ASBR在路由中添加一个新的起始度量值。

规则

1、在将A协议重发布到B协议时,需要在ASBR上的B协议中进行配置。

2、将A协议发布到B协议上,是将ASBR上所有通过A协议学习到的路由信息和ASBR上宣告在A协议上的所有直连网段的路由,全部共享到B协议中。

单点:两个协议或两个进程之间存在个ASBR。

双点:两个协议或两个进程之间存在2个ASBR。

多点:两个协议或两个进程之间存在多个ASBR。

单向:仅将A协议路由共享到B协议当中。

双向:A/B协议的路由军互相共享。

配置

A -> B ---- 一种动态路由协议共享到另一种动态路由协议中

静态 -> B ---- 将ASBR上的静态路由共享到动态路由协议中

直连 -> B ---- 将ASBR上的直连路由共享到动态路由协议中

RIP

A -> B

[r2-rip-1]import-route ospf 1

结论:RIP在重发布获取其他协议的路由后,会将其种子度量值设置为0。

修改种子度量值的方法:

1、[r2-rip-1]default-cost 2     //在ASBR进程中修改默认种子度量值

注意:该修改命令将会影响所有往RIP进程中重发布的路由信息。

2、[r2-rip-1]import-route ospf 1 cost 3   //在ASBR上执行重发布时修改种子度量值

注意:该修改命令仅影响本次重发布路由的种子度量值

注意:以上两种命令,当存在冲突时,将以命令匹配的更精确的这条命令来执行。

静态 -> B

[r2-rip-1]import-route static

结论:

1、缺省路由无法直接通过重发布导入到B协议中,只能通过自己匹配。

2、种子度量值默认为0,修改方法同上。

直连 -> B

[r2-rip-1]import-route direct

结论:

1、处理R1是直连路由外,其他三条直连网段都会导入;

2、直连导入的默认种子度量值0;

3、若ASBR进行了A->B的重发布,同时进行路直连路由到B的重发布,并且里面包含相同的路由信息,则优先选择直连重发布的路由信息而不卡开销值。

OSPF

A -> B

[r2-ospf-1]import-route rip 1

结论:

OSPF重发布获取其他路由协议时,会将其种子度量值设为1,度量值类型设为类型2。

修改种子度量值和开销值类型的方法:

[r2-ospf-1]default cost ?    //在ASBR的OSPF进程中,修改种子度量值(范围是0-16777214)

[r2-ospf-1]default type ?    //在ASBR的OSPF进程中,修改默认的开销值类型(类型1和类型2)

注意:以上两种修改方法将影响所有导入OSPF进程中的路由的初始种子度量值和开销值类型。

静态 -> B

[r2-ospf-1]import-route static

结论:

1、缺省路由无法直接通过重发布导入到B协议中,只能手动配置;

2、种子度量值也默认为1,开销值类型为类型2。(修改方法同上)

display ospf 1 routing   //查看OSPF进程路由信息

[r2-ospf-1]default-route-advertise   //该命令的实质是将路由表中的缺省路由重发布到OSPF进程中

直连 -> B

[r2-ospf-1]import-route direct

结论:

1、处理R3是直连路由外,其他三条直连网段都会导入;

2、种子度量值默认为1,开销值类型为类型2;

3、若ASBR进行了A -> B的重发布,同时进行了直连路由到B的重发布,并且里面包含 相同的路由信息,则优先选择直连重发布的路由信息而不看开销值。

双点重发布

默认RIP和OSPF协议若进行双点重发布,由于两者的优先级不同,故第一台ASBR的重发布动作结束后,将影响其他ASBR设备的路由表。使得路由可能被传回到源协议,发生路由回馈 --- A协议的路由重发布到B协议后,又被B协议重发布回A协议。

注意:路由回馈可能造成选路不佳,甚至出现环路。

所以需要消除路由回馈,华为设备的消除方法是将OSPF协议内部路由的默认优先级设计为10,但是重发布进来的路由(5类/7类LSA学到的)的优先级设置为150。---  150的 优先级大于所有IGP协议的优先级。通过这种方法,可以避免路由回馈的产生。

在多点的重发布中,由于重发布技术的种子度量值问题,将必然导致选路不佳;只能依赖由策略来认为干涉选路。

控制层流量:路由协议发送路由信息是产生的流量。

数据层流量:设备访问目标地址是产生的流量。

路由策略

在控制层流量转发的过程中,截取流量,之后,修改流量中的参数或直接不转发,最终影响路由器路由表的生成,以达到干涉选路的目的。

1、抓取流量(控制层流量)

(1)通过ACL列表进行抓取,本身用于限制数据层流量的进出,也可以用于抓取控制层流量,单由于通配符的设计,导致其无法精确匹配控制层流量。

(2)通过前缀列表哦进行抓取( IP-Prefix)

[r1]ip ip-prefix aa permit 192.168.1.0 24   //网段信息,包含网络号和掩码

[r1]display ip ip-prefix aa    //查看前缀列表的规则

前缀列表的规则默认是一10为不掉自动添加,便于插入和删除规则。

前缀列表的匹配规则:

自上而下,逐一匹配,一旦匹配上将按照该规则执行,而不在向下匹配。末尾隐含拒绝所有。

命令:

[r1]ip ip-prefix aa index 15 permit 192.168.3.0 24 //通过序号插入规则

[r1]undo ip ip-prefix aa index 15  //通过序号删除规则

前缀列表进行范围匹配:

[r1]ip ip-prefix aa permit 192.168.3.0 24 less-equal 28  //匹配路由的掩码范围在24-28之间 

[r1]ip ip-prefix aa permit 192.168.4.0 24 greater-equal

28  //前后如果矛盾,则按照后面的为准,前面的数字含有将不再代表掩码长度,而代表前24为固定

[r1]ip ip-prefix aa permit 192.168.5.0 24 greater-equal

28 less-equal 30   //匹配前24位固定,掩码长度在28-30之间的路由信息

[r1]ip ip-prefix aa permit 192.168.6.0 24 greater-equal

28 less-equal 28   //匹配前24位固定,掩码长度必须为28位的网段

匹配主机路由:

[r1]ip ip-prefix aa permit 0.0.0.0 0 greater-equal 32  //匹配所有

[r1]ip ip-prefix aa permit 0.0.0.0 0 less-equal 32   //匹配缺省路由

2、路由策略

(1)RIP的merticin和merticout (偏移列表)

该偏移列表只能应用在距离矢量型协议上,链路状态是无法使用的。

[r1]ip ip-prefix aa permit 23.0.0.0 24   //该命令是通过前缀列表抓取目标网段的流量

[r1-GigabitEthernet0/0/1]rip metricin ip-prefix aa 10   //该命令是在路由器结课上做入方向上的偏移列表

(2)filter-policy(过滤列表/过滤策略)

 [r1]ip ip-prefix bb deny 34.0.0.0 24    //由于过滤列表本身并不具备过滤功能,所以在进行流量抓取时,需要使用抓取流量列表的过滤功能

[r1]ip ip-prefix bb deny 34.0.0.0 24

[r1-rip-1]filter-policy ip-prefix bb import

GigabitEthernet 0/0/0   //在进程中调用过滤列表(注意:按需求确认是否需要选择作用的接口)

过滤列表

过滤列表,可以在距离矢量型协议上使用,也可以在链路状态型协议中使用。但是注意:在链路状态型协议中使用时,在一个区域内,由于没有办法过滤拓扑信息,所以只能在入方向进行调用,用来影响自身,并且只是在路由加表时不向路由表中加表,并不是将拓扑信息过滤掉。若是想在出方向进行调用,可以在ABR或者ASBR上针对三类、五类、七类LSA进行过滤。

3、Route-policy(路由策略)

(1)先抓取流量

Basic ACL 2000, 1 rule

Acl's step is 5

rule 5 permit source 1.1.1.0 0

Basic ACL 2001, 1 rule

Acl's step is 5

rule 5 permit source 2.2.2.0 0

ip ip-prefix aa index 10 permit 3.3.3.0 24

ip ip-prefix bb index 10 permit 4.4.4.0 24

(2)路由策略

[r2]route-policy aa deny node 10   //加一个列表的条目序号,一般是以10为步调手动添加

[r2]route-policy aa deny node 10

[r2-route-policy]if-match acl 2000   //如果匹配到ACL2000抓取到的流量

[r2]route-policy aa permit node 20

Info: New Sequence of this List.

[r2-route-policy]if-match acl 2001

[r2-route-policy]apply cost-type type-1

[r2]route-policy aa permit node 30

[r2-route-policy]if-match ip-prefix aa

[r2-route-policy]apply cost 10

[r2]route-policy aa permit node 40

Info: New Sequence of this List.

[r2-route-policy]if-match ip-prefix bb

[r2-route-policy]apply cost-type type-1   //单条规则中如果存在多个小动作或者匹配规则,则它们之间将按照“与”的关系执行。而规则直接按则按照原则,满足“或”的关系即可。

[r2-route-policy]apply tag 6666

[r2]route-policy aa permit node 50   //放通所有流量

(路由策略的匹配规则:自上而下,逐一匹配,一旦匹配上将按照该规则执行,而不再向下匹配。末尾隐含拒绝所有。)

(3)在重发布中进行调用

[r2-ospf-1]import-route rip 1 route-policy aa

ROUTE-POLICY的配置指南

1、即便要拒绝一个流量,在抓取时也使用允许,之后再路由策略中进行拒绝。

2、再一条规则中,若没有进行流量匹配的动作,则代表匹配所有流量,如果没有相应的应用(小动作),则仅对匹配的流量执行大动作即可。因此大动作为允许的空表,代表允许所有。



推荐阅读
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了在rhel5.5操作系统下搭建网关+LAMP+postfix+dhcp的步骤和配置方法。通过配置dhcp自动分配ip、实现外网访问公司网站、内网收发邮件、内网上网以及SNAT转换等功能。详细介绍了安装dhcp和配置相关文件的步骤,并提供了相关的命令和配置示例。 ... [详细]
  • 本文介绍了一个Java猜拳小游戏的代码,通过使用Scanner类获取用户输入的拳的数字,并随机生成计算机的拳,然后判断胜负。该游戏可以选择剪刀、石头、布三种拳,通过比较两者的拳来决定胜负。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • HDFS2.x新特性
    一、集群间数据拷贝scp实现两个远程主机之间的文件复制scp-rhello.txtroothadoop103:useratguiguhello.txt推pushscp-rr ... [详细]
  • 本文介绍了如何按需加载elementui的部分模块,以及如何设置覆盖某些属性。通过import引入Dialog模块,并使用Vue.component进行全局设置。同时使用Vue.use引入ElementUI和VueAxios模块。通过extends进行属性覆盖设置。 ... [详细]
author-avatar
minimiai_559
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有