BGP路径属性的基本概念


提示:以下是本篇文章正文内容,下面案例可供参考

一、BGP路径属性的分类

公认属性:

公认必遵属性:所有BGP实现都必须能识别且在Update报文中必须携带;
origin 、AS-path、nexthop
公认自决属性:所有BGP实现都必须能识别,但不要求必须包含在update报文;
Local-perference、ATOMIC-Aggregate

可选属性:

可选传递:设备可不支持属性,但也应当接收包含该属性的路由并传递给其他对等体;
Community、Aggregator
可选非传递:设备可不支持该属性,不识别的BGP进程忽略包含这个属性的路由更新,并不传递给其他对等体;
MED、Originator-ID、Cluster-list、pre-value

二、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(如果没有,用routher-id比较)选择数值较小路径
14、比较对等体的IP地址,选择IP地址数值最小的路径

三、 BGP属性选路配置

一共12种配置,这里只介绍最常用的3种配置

1、根据Local-perference控制选路(越大越优)

1、为公认自决属性,用于告诉AS中的路由器,哪条路径是离开AS的首选路径
2、Local-perference属性只能在IBGP对等体间传递(除非做了策略否则local-preference值在ibgp对等体间传递过程中不会丢失),而不能再egbp对等体传递,如果在ebgp对等体间收到的路由的路径属性中携带了local-preference,则会触发notifacation报文,造成会话中断
3、但可以在AS边界路由器上使用import方向的策略来修改local-preference属性值,是在收到路由后为本地路由赋予local-preference

2、使用AS-PATH属性控制选路(越少越优)

1、为公认必遵属性,是前往目标网络的路由经过的AS号列表
2、作用:确保路由在ebgp对等体之间传递无环;另外也作为路由优选的衡量标准之一;
3、路由在被通告给ebgp对等体时,路由器会在该路由的AS-PATH中追加上本地的AS号;路由被通告给ibgp对等体时,as-path不会发生改变
4、使用route-policy修改bgp路由的as-path:
apply as-path xxx additvie:在已有as-path基础上追加xxx
apply as-path xxx overwrite:将已有AS-PATH
值替换成xxx
apply as-path none overwrite:清空路由的AS-PATH属性
5、使用route-policy修改bgp路由的as-path时,可以在ebgp对等体间改变ebgp路由的as-path属性,从而影响bgp路由的优选。在华为路由器上,在ibgp对等体间,也可以使用route-policy,修改bgp路由的as-path。无论何种场景,改变bgp路由的as-path都必须十分谨慎,建议跟上一个经过的AS号保持一致
6、Bestroute as-path-ignore命令
用来配置BGP在选择最优路由时忽略AS路径属性。配置该命令后,BGP将不比较AS路径的长度,越小越优

3、通过MED属性控制选路(越小越优)

为可选非传递属性,是一种度量值
一般情况下,BGP设备只比较来自同一AS(不同对等体)的路由的MED值。可以通过配置命令来允许BGP比较来自不同AS的路由的MED属性值
执行compare-different-as-med命令后,系统将比较来自不同AS来自不同AS中的对等体的路由的MED值。

4、多网段情况下只匹配某一网段选路

Origin属于公有必遵,用来定义路径信息的来源,其作用是标记一条路由时如何成为BGP路由的,EBGP邻居之间起作用。
它有三种属性:①IGP:优先级最高,②EBGP:优先级次之,③Incomplete:优先级最低

四、BGP路由反射器

为保证IBGP对等体之间的连通性,需要在IBGP对等体之间建立全连接关系。假设在一个AS内部有n台设备,那么建立的IBGP连接数就为n(n-1)/2。当设备数目很多时,设备配置将十分复杂,而且配置后网络资源和CPU资源的消耗都很大。在IBGP对等体间使用路由反射器RR(routher reflector)可以解决以上问题。
集群ID用于防止集群内多个路由器反射器和集群间的路由环路,当一个集群里有多个路由反射器时,必须为同一个集群内的所有路由反射器配置相同的集群ID。

RR向IGBP邻居发布路由规则如下:
1、从非客户端学到的路由,发布给所有客户端。
2、从客户端学到的路由,发布给所有非客户端和客户端(发起此路由的客户端除外)。
3、从EBGP对等体学到的路由,发布到所有的非客户端和客户端。

五、BGP路由聚合(汇总)

IP route-static 192.168.0.0 255.255.252.0 NULL0 创建静态路由
network 192.168.0.0 255.255.252.0
将此聚合通告出去,因为手动汇总的192.168.0.0不存在在路由表,要把它加入到NULL0里才能在bgp进程里用上面network来通告这条路由。
手动路由聚合:
aggregate 192.168.0.0 255.255.252.0
detail-suppredded as-set
配置手动路由聚合用aggregate,detail-supperssed是抑制明细路由的通告,增加as-set关键字后,该汇总路由将继承明细路由的路径属性,其中对明细路由as-path属性可以起到汇总路由防环作用。

猜你喜欢

转载自blog.csdn.net/KY09BOSS/article/details/112584717
今日推荐