路径属性---BGP的选路

2024-02-27 01:44
文章标签 路径 属性 bgp 选路

本文主要是介绍路径属性---BGP的选路,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、路径属性

1、定义

路径属性:path attributes,作用类似于metric,用于度量BGP的路由优劣(用来进行选路)

2、分类

公认强制属性:所有的BGP的update消息都要包含该属性

AS路径(AS-path)

下一跳(next-hop)

起源(Origin)

公认自由属性:该属性是可选可不选的,但是所有的BGP进程都能识别

本地优先级(local preferent)

可选传递属性:即使BGP进程不能识别该属性,也会继续传递下去

团体属性(community)

可选非传递属性:如果BGP进程不能识别该属性,可以忽略这条update,并且不传递下去MED

路径属性---BGP的选路
0---必须保证参加选路的BGP路由必须路由可达(可用)

二、BGP选路原则

1.如果此路由的下一跳不可达,忽略此路由

2.Preferred-Value值数值越高越优先,华为私有属性,仅本地有意义

3.Local-Preference值最高的路由优先

4.聚合路由优先于非聚合路由

5.本地手动聚合路由的优先级高于本地自动聚合的路由

6.本地通过Network命令引入的路由的优先级高于本地通过Import-route命令引入的路由

7.As-path的长度最短的路径优先

8.比较Origin属性,IGP优于EGP,EGP优于Incomplete

9.选择MED较小的路由

10.EBGP路由优于IBGP路由

11.BGP优先选择到BGP下一跳的IGP度量值最低的路径

当以上全部相同,则为等价路由,可以负载分担(注意:AS_Path必须一致,当负载分担时,以下

3条原则无效)

12.比较Cluster_list长度,短者优先

13.比较Originator_ID(如果没有Originator_ID,则用Router_ID比较),选择数值较小的路径。

14.比较对等体的IP地址,选择IP地址数值最小的路径。

1.优选PV属性值最大的路由-----华为体系的私有属性,相当于一条路由的权重,数值越大,路由信
息越优
限制条件:该属性不能传递,一般用来干涉本设备的选路利用PV 属性控制选路:
方法1:全局修改
方法2:使用路由策略
1).抓取流量
2).创建路由策略
注意:一定要方通空表去方通剩余没有匹配到的数据
三:BGP调用
[r4-bgp] peer 3.3.3.3 route-policy pv import---注意因为PV属性不能传递,所以只能选择入方向修
优选LP属性值大的越优
通过LP属性干涉 BGP 的选路
方法1:全局修改
[r3-bgp]default local-preference 150 ----R3传递的所以路由信息都会修改该值为150
方法2:通过利用策略进行修改
1).抓取流量
2).使用路由策略
3).bgp调用
[r3-bgp] peer 4.4.4.4 route-policy lp export---注意选择的方向
干涉选路
适用场景:干涉 AS 内部的选路
手工聚合优于自动聚合优于network优于import
BGP 路由信息面对多条路径的情况,更希望选择负载分担,来降低设备压力
优选AS_path属性最短的路由
最后经过的 AS 号会携带在 AS_ path属性最前面
建议使用additive相当于不会清除原本的路由本身携带的as号
over:先清除原本的as号在添加
100 1 2 3 --出向修改AS号
1 2 3 100 --入向修改
配置方法
[r2]ip ip-prefix as permit 1.1.1.0 24 ---抓取流量
路由策略
[r2]route-policy as permit node 10
Info: New Sequence of this List.
[r2-route-policy]if-match ip-prefix as
r2-route-policy]apply as-path 1 2 3 additive
[r2-route-policy]apply as-path 100 100 100 100 additive ---指令可用优化,相当 于只延长AS号长
度,而不影响路由传递
[r2]route-policy as permit node 20 ---方通所有流量
Info: New Sequence of this List.
调用
[r2-bgp]peer 12.0.0.1 route-policy as import
比较起源属性 i>e>?
配置
优选MED属性最小的路由信息--多出口鉴别属性
默认值: 和到达该网段的cost有关,路由表中记录的cost等同于MED
传递规则: IGP/EBGP对等体之间传递
作用: 用来干涉其他 AS 设备访问本AS
问题: 不符合实际情况
选路不佳
如果设备收到一条 IBGP 路由中携带 MED 属性,在传递给自身 EBGP 对等体时将不 会携带该属性,
之后将按0来处理,建议边界设备出口设备都宣告
配置注意:只能在出方向修改
1).抓取流量
[r2]ip ip-prefix med permit 4.4.4.4 32
2).路由策略
[r2]route-policy med permit node 10
Info: New Sequence of this List.
[r2-route-policy]if-match ip
[r2-route-policy]if-match ip-prefix med
[r2-route-policy]apply cost 10
[r2]route-policy med permit node 20
3).调用
[r2-bgp]peer 12.0.0.1 route-policy med export --只能出向调用
6.EBGP 路由 >IBGP 路由
7.优选到达下一跳属性开销最小的路由信息
四:BGP的路由过滤
三种
1.通过路由策略实现路由过滤
1).抓取流量
[r2]ip ip-prefix p1 permit 192.168.0.0 24
2).创建路由策略
[r2]route-policy p1 deny node 10 ----过滤流量选择拒绝
Info: New Sequence of this List.
[r2-route-policy]if-match ip-prefix p1
[r2]route-policy p1 permit node 20
3).BGP调用
[r2-bgp]peer 12.0.0.1 route-policy p1 import
2.通过前缀列表过滤流量
1).抓取流量
[r2]ip ip-prefix p2 deny 192.168.1.0 24 ---拒绝流量选择deny
[r2]ip ip-prefix p2 permit 0.0.0.0 0 less-equal 32 ---注意:同样需要方通剩余所有流量
[r2-bgp]peer 12.0.0.1 ip-prefix p2 import ---BGP调用
3.过滤列表
1).抓取流量
注意:华为定义 ACL 列表末尾是不做处理
2).调用
[r2-bgp]peer 12.0.0.1 filter-policy 2000 import ---BGP调用
五:BGP 的社团属性
1.配置:
注意:目前大部分厂商默认在传递 BGP 路由信息时是不传递社团属性的,所以,如果需要传递社团
属性,需要通过命令开启。
[r1-bgp]peer 12.0.0.2 advertise-community
这个社团属性只能一对一传递
[r1]route-policy com permit node 10
Info: New Sequence of this List.
[r1-route-policy]apply community 1:10
调用路由策略方法2
[r1-bgp]network 192.168.0.0 route-policy com
[r1-bgp]network 192.168.1.0 route-policy com
--宣告路由的同时调用策略
为了抓取标签流量,网络中设计了一个专门抓取标签的工具
community-filter --社团属性过滤器
[r2]ip community-filter 1 permit 1:10
2.做路由策略
route-policy com permit node 10
if-match community-filter 1 ----匹配过滤器抓取到的流量
apply preferred-value 100
route-policy com permit node 20---方通空表,否则会拒绝所有不是1:10标签的流量
3.bgp调用

这篇关于路径属性---BGP的选路的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/750847

相关文章

Linux修改pip和conda缓存路径的几种方法

《Linux修改pip和conda缓存路径的几种方法》在Python生态中,pip和conda是两种常见的软件包管理工具,它们在安装、更新和卸载软件包时都会使用缓存来提高效率,适当地修改它们的缓存路径... 目录一、pip 和 conda 的缓存机制1. pip 的缓存机制默认缓存路径2. conda 的缓

浅析CSS 中z - index属性的作用及在什么情况下会失效

《浅析CSS中z-index属性的作用及在什么情况下会失效》z-index属性用于控制元素的堆叠顺序,值越大,元素越显示在上层,它需要元素具有定位属性(如relative、absolute、fi... 目录1. z-index 属性的作用2. z-index 失效的情况2.1 元素没有定位属性2.2 元素处

Windows系统下如何查找JDK的安装路径

《Windows系统下如何查找JDK的安装路径》:本文主要介绍Windows系统下如何查找JDK的安装路径,文中介绍了三种方法,分别是通过命令行检查、使用verbose选项查找jre目录、以及查看... 目录一、确认是否安装了JDK二、查找路径三、另外一种方式如果很久之前安装了JDK,或者在别人的电脑上,想

Python中Windows和macOS文件路径格式不一致的解决方法

《Python中Windows和macOS文件路径格式不一致的解决方法》在Python中,Windows和macOS的文件路径字符串格式不一致主要体现在路径分隔符上,这种差异可能导致跨平台代码在处理文... 目录方法 1:使用 os.path 模块方法 2:使用 pathlib 模块(推荐)方法 3:统一使

一文教你解决Python不支持中文路径的问题

《一文教你解决Python不支持中文路径的问题》Python是一种广泛使用的高级编程语言,然而在处理包含中文字符的文件路径时,Python有时会表现出一些不友好的行为,下面小编就来为大家介绍一下具体的... 目录问题背景解决方案1. 设置正确的文件编码2. 使用pathlib模块3. 转换路径为Unicod

HTML5 data-*自定义数据属性的示例代码

《HTML5data-*自定义数据属性的示例代码》HTML5的自定义数据属性(data-*)提供了一种标准化的方法在HTML元素上存储额外信息,可以通过JavaScript访问、修改和在CSS中使用... 目录引言基本概念使用自定义数据属性1. 在 html 中定义2. 通过 JavaScript 访问3.

CSS模拟 html 的 title 属性(鼠标悬浮显示提示文字效果)

《CSS模拟html的title属性(鼠标悬浮显示提示文字效果)》:本文主要介绍了如何使用CSS模拟HTML的title属性,通过鼠标悬浮显示提示文字效果,通过设置`.tipBox`和`.tipBox.tipContent`的样式,实现了提示内容的隐藏和显示,详细内容请阅读本文,希望能对你有所帮助... 效

解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题

《解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题》在Spring开发中,@Autowired注解常用于实现依赖注入,它可以应用于类的属性、构造器或setter方法上,然... 目录1. 为什么 @Autowired 在属性上被警告?1.1 隐式依赖注入1.2 IDE 的警告:

HTML5中下拉框<select>标签的属性和样式详解

《HTML5中下拉框<select>标签的属性和样式详解》在HTML5中,下拉框(select标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中选择值的方式,本文将深入探讨select标签的... 在html5中,下拉框(<select>标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中

MySQL9.0默认路径安装下重置root密码

《MySQL9.0默认路径安装下重置root密码》本文主要介绍了MySQL9.0默认路径安装下重置root密码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录问题描述环境描述解决方法正常模式下修改密码报错原因问题描述mysqlChina编程采用默认安装路径,