HCIP-12 路由策略与路由控制

目录
  • 路由控制概述
    • 技术背景
    • 路由控制概述
    • 路由匹配工具
      • 匹配工具1:访问控制列表
        • 通配符
        • ACL的分类与基本ACL
        • ACL的匹配机制
        • ACL的匹配顺序及匹配结果
        • 配置顺序(config模式)
        • 常用匹配举例
      • 匹配工具2:IP前缀列表
        • IP-Prefix的匹配机制
        • IP-Prefix的匹配示例
        • IP-Prefix的基础配置命令
        • IP-Prefix的配置举例
    • 路由策略工具
      • 策略工具1:Filter-Policy
        • Filter-Policy在距离矢量路由协议中的应用
        • Filter-Policy的基础配置命令
        • OSPF中使用Filter-Policy
        • IS-IS中使用Filter-Policy
        • BGP中使用Filter-Policy
      • 策略工具2:Route-Policy
        • Route-Policy的组成
        • Route-Policy的匹配顺序
        • Route-Policy的基础配置命令
  • 路由控制案例
    • 对接收的路由进行过滤
    • 对发布的路由进行过滤
    • 修改路由属性
    • 双点双向路由重发布
      • 次优路径问题
      • 解决次优路径问题
      • 路由环路问题
      • 解决路由环路问题

在复杂的数据通信网络中,根据实际组网需求,往往需要实施一些路由策略对路由信息进行过滤、属性设置等操作,通过对路由的控制,可以影响数据流量转发。
路由策略并非单一的技术或者协议,而是一个技术专题或方法论,里面包含了多种工具及方法。
本文主要介绍网络中常用的路由选择工具以及路由策略的原理与配置。

路由控制概述

技术背景

R1上将业务A、B、C的网段路由引入时希望不引入业务C网段路由,同时R3上将OSPF路由引入到IS-IS中时,同样只希望引入B业务网段路由。
此时需要一个工具在引入路由时进行限制。

路由控制概述

路由控制可以通过路由策略(Route-Policy)实现,路由策略应用灵活而广泛,有以下几种常见方式:
控制路由的发布:通过路由策略对发布的路由进行过滤,只发布满足条件的路由。
控制路由的接收:通过路由策略对接收的路由进行过滤,只接收满足条件的路由。
控制路由的引入:通过路由策略控制从其他路由协议引入的路由条目,只有满足条件的路由才会被引入。

路由匹配工具

匹配工具1:访问控制列表

访问控制列表(Access Control List,ACL)是一个匹配工具,能够对报文及路由进行匹配和区分。
ACL由若干条permit或deny语句组成。每条语句就是该ACL的一条规则,每条语句中的permit或deny就是与这条规则相对应的处理动作。

通配符

ACL的分类与基本ACL

ACL的匹配机制

ACL的匹配顺序及匹配结果

配置顺序(config模式)

系统按照ACL规则编号从小到大的顺序进行报文匹配,规则编号越小越容易被匹配。

常用匹配举例

基本ACL的基础配置命令

1.创建基本ACL
[Huawei] acl [ number ] acl-number [ match-order config ]
使用编号(2000~2999)创建一个数字型的基本ACL,并进入基本ACL视图。
[Huawei] acl name acl-name { basic | acl-number } [ match-order config ]
使用名称创建一个命名型的基本ACL,并进入基本ACL视图。
2. 配置基本ACL的规则
[Huawei-acl-basic-2000] rule [ rule-id ] { deny | permit } [ source { source-address source-wildcard | any } | time-range time-name ]
在基本ACL视图下,通过此命令来配置基本ACL的规则。

匹配工具2:IP前缀列表

IP前缀列表(IP-Prefix List)是将路由条目的网络地址、掩码长度作为匹配条件的过滤器,可在各路由协议发布和接收路由时使用。
不同于ACL,IP-Prefix List能够同时匹配IP地址前缀长度以及掩码长度,增强了匹配的精确度。

IP-Prefix的匹配机制

IP-Prefix的匹配示例

IP-Prefix的基础配置命令

  1. 创建IPv4地址前缀列表
[Huawei] ip ip-prefix ip-prefix-name [ index index-number ] { permit | deny } ipv4-address mask-length [ match-
network ] [ greater-equal greater-equal-value ] [ less-equal less-equal-value ]

创建IPv4地址前缀列表或增加其中一个表项。
ip-prefix-name:指定地址前缀列表的名称。
index index-number:指定本匹配项在地址前缀列表中的序号。
permit:指定地址前缀列表的匹配模式为允许。
deny:指定地址前缀列表的匹配模式为拒绝。
ipv4-address mask-length:指定IP地址和指定掩码长度。
greater-equal greater-equal-value:指定掩码长度匹配范围的下限。
less-equal less-equal-value:指定掩码长度匹配范围的上限。

IP-Prefix的配置举例

单语句匹配
ip ip-prefix aa index 10 permit 10.1.1.0 24
Case1:路由10.1.1.0/24被Permit,其他都被Deny。
ip ip-prefix bb index 10 deny 10.1.1.0 24
□ Case2:路由全部被Deny。

多语句匹配
ip ip-prefix aa index 10 deny 10.1.1.0 24
ip ip-prefix aa index 20 permit 10.1.1.1 32
Case1:路由10.1.1.0/24被Deny,路由10.1.1.1/32被Permit,其他路由都被Deny。
ip ip-prefix bb index 10 permit 10.1.1.0 24 greater-equal 26 less-equal 32
Case2:路由10.1.1.0/26,10.1.1.1/32被Permit,其他路由被Deny。

通配地址匹配
ip ip-prefix aa index 10 permit 10.0.0.0 8 less-equal 32
Case1:所有掩码长度在8到32的路由都被Permit。
ip ip-prefix bb index 10 deny 10.1.1.0 24 less-equal 32
ip ip-prefix bb index 20 permit 10.1.0.0 16 less-equal 32
Case2:路由10.1.0.0/16被Permit,其他路由被Deny。

路由策略工具

策略工具1:Filter-Policy

Filter-Policy(过滤-策略)是一个很常用的路由信息过滤工具,能够对接收、发布、引入的路由进行过滤,可应用于IS-IS、OSPF、BGP等协议


如图所示,R1、R2、R3之间运行BGP路由协议,路由在各个设备之间传递,当需要根据实际需求过滤某些路由信息的时候可以使用Filter-Policy实现。

Filter-Policy在距离矢量路由协议中的应用

在距离矢量路由协议中,设备之间传递的是路由信息,如果需要对这种路由信息进行某种过滤,可以使用Filter-Policy实现,出方向和入方向的生效位置如图所示。

在链路状态路由协议中,各路由设备之间传递的是LSA信息,然后设备根据LSA汇总成的LSDB信息计算出路由表。但是Filter-Policy只能过滤路由信息,无法过滤LSA。

Filter-Policy的基础配置命令

  1. 在OSPF中的应用
    [Huawei-ospf-100] filter-policy { acl-number | acl-name acl-name | ip-prefix ip-prefix-name | route-policy route-policy-name[ secondary ] } import
    按照过滤策略,设置OSPF对接收的路由进行过滤。
    [Huawei-ospf-100] filter-policy { acl-number | acl-name acl-name | ip-prefix ip-prefix-name | route-policy route-policy-name } export [ protocol [ process-id ] ]
    按照过滤策略,设置对引入的路由在向外发布时进行过滤。
  2. 在IS-IS中的应用
[Huawei-isis-1] filter-policy { acl-number | acl-name acl-name | ip-prefix ip-prefix-name | route-policy route-policy-
name } import

配置IS-IS路由加入IP路由表时的过滤策略。

[Huawei-isis-1] filter-policy { acl-number | acl-name acl-name | ip-prefix ip-prefix-name | route-policy route-policy-
name } export [ protocol [ process-id ] ]

配置IS-IS对已引入的路由在向外发布时进行过滤的过滤策略。
3. 在BGP中的应用
[Huawei-bgp-af-ipv4] filter-policy { acl-number | acl-name acl-name | ip-prefix ip-prefix-name } import
配置对接收的路由信息进行过滤。
[Huawei-bgp-af-ipv4] filter-policy { acl-number | acl-name acl-name | ip-prefix ip-prefix-name } export [ protocol [ process-id ] ]
配置对发布的路由进行过滤,只有通过过滤的路由才被BGP发布。
[Huawei-bgp-af-ipv4] peer { group-name | ipv4-address } filter-policy { acl-number | acl-name acl-name } { import | export }
配置向对等体(组)发布或从对等体(组)接收路由时的过滤策略。

OSPF中使用Filter-Policy

IS-IS中使用Filter-Policy

BGP中使用Filter-Policy

策略工具2:Route-Policy

Route-Policy是一个策略工具,用于过滤路由信息,以及为过滤后的路由信息设置路由属性。
一个Route-Policy由一个或多个节点(Node)构成,每个节点都可以是一系列条件语句(匹配条件)以及执行语句(执行动作)的集合,这些集合按照编号从小到大的顺序排列。

Route-Policy的组成

一个Route-Policy由一个或多个节点构成,每个节点包括多个if-match和apply子句。

permit或deny:指定Route-Policy节点的匹配模式为允许或拒绝。
node:指定Route-Policy的节点号。整数形式,取值范围是0~65535。
if-match子句:定义该节点的匹配条件。
apply子句:定义针对被匹配路由执行的操作。

Route-Policy的匹配顺序

路由策略使用不同的匹配条件和匹配模式选择路由和改变路由属性。

Route-Policy的基础配置命令

  1. 创建Route-Policy
    [Huawei] route-policy route-policy-name { permit | deny } node node
    创建路由策略并进入Route-Policy视图。
    2.(可选)配置if-match子句
    [Huawei-route-policy] if-match ?
    acl 匹配基本ACL
    cost 匹配路由信息的cost
    interface 匹配路由信息的出接口
    ip-prefix 匹配前缀列表
  2. (可选)配置apply子句
    [Huawei-route-policy] apply ?
    cost 设置路由的cost
    cost-type {type-1 | type-2} 设置OSPF的开销类型
    ip-address next-hop 设置IPv4路由信息的下一跳地址
    preference 设置路由协议的优先级
    tag 设置路由信息的标记域
    ……

路由控制案例

对接收的路由进行过滤

R1 、 R2 、 R3 运 行 OSPF , R1 将 192.168.1.0/24 、192.168.2.0/24、192.168.3.0/24和192.168.4.0/24宣告进OSPF。
现在要求R2不能访问R1上192.168.1.0/24网段,但是R3可以正常访问。
为实现该需求,可以在R2上对接收的路由使用FilterPolicy进行过滤。

R2的配置如下:

[R2] ip ip-prefix in index 10 permit 192.168.2.0 24
[R2] ip ip-prefix in index 10 permit 192.168.3.0 24
[R2] ip ip-prefix in index 10 permit 192.168.4.0 24
[R2] ospf
[R2-ospf-1] filter-policy ip-prefix in import

对发布的路由进行过滤


R1、R2、R3运行OSPF,R1将直连网段192.168.1.0/24、192.168.2.0/24 、 192.168.3.0/24 和 192.168.4.0/24 引 入OSPF。
现在要求R2、R3只能学习到192.168.1.0/24网段的路由,学习不到其他三个网段的路由。
为实现该需求,可以在R1上使用Filter-Policy对引入的路由在发布时进行过滤。

R1的配置如下:
[R1] ip ip-prefix out index 10 permit 192.168.1.0 24
[R1] ospf
[R1-ospf-1] import-route direct
[R1-ospf-1] filter-policy ip-prefix out export

修改路由属性

R1、R2、R3运行OSPF,R1将直连网段192.168.1.0/24引入OSPF。
现在要求 R2 、 R3 学到的 OSPF 路 由 192.168.1.0/24 为external-type 1路由(默认为external-type 2路由)。
为实现该需求,可以在R1上使用Route-Policy在引入路由时修改外部路由的类型为external-type 1。

R1的配置如下:

[R1] ip ip-prefix external index 10 permit 192.168.1.0 24
[R1] route-policy RP permit node 10
[R1-route-policy] if-match ip-prefix external
[R1-route-policy] apply cost-type type-1
[R1-route-policy] quit
[R1] ospf
[R1-ospf-1] import-route direct route-policy RP

双点双向路由重发布

在边界路由器上把两个路由域的路由相互引入,称之为双向路由重发布。
两个路由域存在两个边界路由器,并且都执行双向路由重分发,此时称为双点双向路由重发布。
双点双向路由重发布是一种经典的路由模型,因单点的双向路由重发布缺乏冗余性,一旦单点的边界路由器故障,那么两个路由域之间的通信可能就会出现问题,因此在大型网络部署中一般采用双点双向路由重发布。
双点双向重路由发布虽然增强了网络的可靠性,但是容易引发:次优路径、路由环路等问题。

次优路径问题

以10.1.1.0/24为例:
R1将直连路由10.1.1.0/24引入到OSPF中。
R2、R3执行双向路由重发布,R2先将10.1.1.0/24重发布到IS-IS中,R3将会学习到来自R4的IS-IS路由。
对R3而言,IS-IS路由(优先级15)优于OSPF外部路由(优先级150),因此优选来自R4的IS-IS路由。后续R3访问10.1.1.0/24网段的路径为:R3->R4->R2->R1,这是次优路径。

解决次优路径问题


解决方案一:在R3的IS-IS进程内,通过Filter-Policy禁止来自R4的10.1.1.0/24路由加入本地路由表。
在R3上执行以下操作:

[R3] acl 2001
[R3-acl-basic-2001] rule 5 deny source 10.1.1.0 0
[R3-acl-basic-2001] rule 10 permit
[R3] isis
[R3-isis-1] filter-policy 2001 import

解决方案二:R3通过ACL匹配10.1.1.0/24路由,在Route-Policy中调用该条ACL,将匹配这条ACL的路由的优先级设置为14(优于IS-IS)。在OSPF视图下使用preference ase命令调用RoutePolicy修改外部路由的优先级。
在R3上执行以下操作:

[R3]acl 2000
[R3-acl-basic-2000] rule permit source 10.1.1.0 0
[R3-acl-basic-2000] quit
[R3]route-policy hcip permit node 10
[R3-route-policy] if-match acl 2000
[R3-route-policy] apply preference 14
[R3-route-policy] quit
[R3]ospf 1
[R3-ospf-1] preference ase route-policy hcip

路由环路问题


场景描述:

  1. R1将直连路由10.1.1.0/24引入到OSPF中。
  2. R1、R2、R3运行OSPF协议,10.1.1.0/24网段路由在全OSPF域内通告。
  3. R2执行了双向路由重发布。
  4. R2、R3、R4运行IS-IS协议, 10.1.1.0/24网段路由在全IS-IS域内通告。
  5. R3执行了双向路由重发布。
  6. 10.1.1.0/24网段路由再次被通告进OSPF域内,形成路由环路。

解决路由环路问题

解决方案一:在R3的OSPF中引入IS-IS路由时,通过RoutePolicy过滤掉10.1.1.0/24路由。
在R3上执行以下操作:

[R3] acl 2001
[R3-acl-basic-2001] rule 5 deny source 10.1.1.0 0
[R3-acl-basic-2001] rule 10 permit
[R3] route-policy RP permit node 10
[R3-route-policy] if-match 2001
[R3-route-policy] quit
[R3] ospf
[R3-ospf-1] import-route isis 1 route-policy RP


解决方案二:使用Tag实现有选择性地路由引入,在R2上将路由10.1.1.0/24从OSPF引入到IS-IS中时打上Tag 200,在R3上将IS-IS引入到OSPF中时,过滤携带Tag 200的路由。
在R2上执行如下操作:

[R2]acl 2000
[R2-acl-basic-2000]rule permit source 10.1.1.0 0
[R2-acl-basic-2000]quit
[R2]route-policy hcip permit node 10
[R2-route-policy]if-match acl 2000
[R2-route-policy]apply tag 200
[R2-route-policy]quit
[R2]isis 1
[R2-isis-1]import-route ospf route-policy hcip

在R3上执行如下操作:

[R3]route-policy hcip deny node 10
[R3-route-policy]if-match tag 200
[R3-route-policy]quit
[R3]route-policy hcip permit node 20
[R3]ospf 1
[R3-ospf-1]import-route isis route-policy hcip

在路由重发布的实际应用中,通过IP前缀进行路由匹配固然可行,但当网络规模较大时,配置工作量较大;通过Tag进行路由匹配可以极大简化配置工作量。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/844771.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PostgreSQL创建只读用户

1、创建一个用户名为<readonlyuser>,密码为<your_password>的用户CREATE USER <readonlyuser> WITH ENCRYPTED PASSWORD <your_password>;2、修改用户只读事务属性ALTER USER <readonlyuser> SET default_transaction_read_only=on;3、设置USAG…

CTF学习(23)MISC(被劫持的神秘礼物)

题目提示你帮帮小明?找到帐号密码,串在一起,用32位小写MD5哈希一下得到的就是答案 1.使用wireshark打开文件后在第一个TCP流中发现账号和密码数据: name=admina&word=adminb 拼接后: adminaadminb 2.通过在线网站解密获得flag 1d240aafe21a86afc11f38a45b541a49 FLAG:fl…

2、Redis高级特性和应用(慢查询、Pipeline、事务、Lua)

Redis高级特性和应用(慢查询、Pipeline、事务、Lua) Redis的慢查询 许多存储系统(例如 MySQL)提供慢查询日志帮助开发和运维人员定位系统存在的慢操作。所谓慢查询日志就是系统在命令执行前后计算每条命令的执行时间,当超过预设阀值,就将这条命令的相关信息(例如:发生时间,…

EXT4文件系统损坏导致的实例无法启动的排查与修复

原文:https://bbs.huaweicloud.com/blogs/174945 现象 某现网局点进行POC时,发现某DN core掉,且一直无法启动。 core文件堆栈和dn的pg_log日志中的堆栈信息一致。堆栈中显示 checkpoint 时进行 buffer 落盘时导致corelog中报错信息为:could not flush dirty data: Cannot a…

Devfreq学习笔记

一、简介 当今的复杂SoC由多个子模块协同工作组成。在执行各种用例的操作系统中,并非SoC中的所有模块都需要始终保持最高性能。为方便起见,将SoC中的子模块分组为域,从而允许某些域以较低的电压和频率运行,而其他域以较高的电压/频率对运行。 对于这些设备支持的频率和电压…

HCIP-11 IP路由基础和路由引入

由于不同路由协议工作原理不同,因此到达同一目的网段可能会生成多个路由条目,路由器根据路由协议的优先级以及路由开销选择最优路由,并且把最优路由放入FIB表。路由器根据FIB表执行数据转发。 当网络规模较大且使用多种路由协议时,路由协议间通过路由引入的方式实现路由的相…

京东面试:聊聊Spring事务?Spring事务的10种失效场景?加入型传播和嵌套型传播有什么区别?

本文原文链接 文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 …

文件上传漏洞靶场通关详解

文件上传漏洞&靶场通关详解 什么是文件上传漏洞? 大部分网站都拥有上传文件的部分,文件上传漏洞是由于网站开发者对用户上传文件的过滤不够严格,攻击者可以通过这些漏洞上传可执行文件(如木马,恶意脚本和WebShell等等),从而达到随意控制网站的目的。文件上传漏洞有哪些危害…

ubuntu24.04系统gnome46用到扩展

现放一张桌面截图:从左到右侧分别是如下扩展: 1、logo-activities 通过他可以添加活动图标 2、Applications Menu 应用程序菜单 3、Places Status Indicator 目录位置 4、Favorite Apps Menu 应用程序菜单,这个我主要用来装饰 5、Astra Monitor Gnome状态栏中显示…

2024-2025-1 20241329 《计算机基础与程序设计》第十周学习总结

作业信息 作业归属课程:2024-2025-1-计算机基础与程序设计 作业要求:2024-2025-1计算机基础与程序设计第十周作业 作业目标:信息系统、数据库与SQL、人工智能与专家系统、人工神经网络、模拟与离散事件、排队系统、天气与地震模型、图形图像 作业正文:2024-2025-1 20241329…

2024-2025-1 20241301 《计算机基础与程序设计》第十周学习总结

|这个作业属于哪个课程|2024-2025-1-计算机基础与程序设计| |这个作业要求在哪里|2024-2025-1计算机基础与程序设计第一周作业| |这个作业的目标|<复习知识,巩固基础>| |作业正文|https://www.cnblogs.com/HonJo/p/18580240| 一、教材学习内容总结 (一)字符串 C语言中…

高级程序语言设计第九次个人作业

班级链接:https://edu.cnblogs.com/campus/fzu 作业要求:https://edu.cnblogs.com/campus/fzu/2024C/homework/13311 学号:102400130 姓名:杨子旭 {{uploading-image-965852.png(uploading...)}} {{uploading-image-100243.png(uploading...)}} {{uploading-image-635326.p…