【面试理论】BGP属性详解

2021-02-24 10:59:18 浏览数 (2)

立秋一般预示着炎热的夏天即将过去,秋季即将来临。

七月初八

立秋(节气)以后,秋后下一次雨凉快一次,因而有“一场秋雨一场寒,十场秋雨要穿棉”的说法。立秋是古时“四时八节”之一,民间有祭祀土地神,庆祝丰收的习俗。

BGP

公认必遵属性

所有BGP设备都可以识别此类属性,且必须存在于Update报文中。如果缺少这类属性,路由信息就会出错

1、Origin属性:用来定义路径信息的来源,标记一条路由是怎么成为BGP路由的。它有以下3种类型:

IGP:具有最高的优先级。通过network命令注入到BGP路由表的路由,其Origin属性为IGP。

EGP:优先级次之。通过EGP得到的路由信息,其Origin属性为EGP。

Incomplete:优先级最低。通过其他方式学习到的路由信息。比如BGP通过import-route命令引入的路由,其Origin属性为Incomplete。

2、AS_Path属性:

a)按矢量顺序记录了某条路由从本地到目的地址所要经过的所有AS编号。

当BGP Speaker将这条路由通告到EBGP对等体时,便会在Update报文中创建一个携带本地AS号的AS_Path列表。

当BGP Speaker将这条路由通告给IBGP对等体时,便会在Update报文中创建一个空的AS_Path列表。

当BGP Speaker将这条路由通告给EBGP对等体时,便会把本地AS编号添加在AS_Path列表的最前面(最左面)。收到此路由的BGP设备根据AS_Path属性就可以知道去目的地址所要经过的AS。离本地AS最近的相邻AS号排在前面,其他AS号按顺序依次排列。

当BGP Speaker将这条路由通告给IBGP对等体时,不会改变这条路由相关的AS_Path属性。

b)AS间防环:在接收路由时,设备如果发现AS_Path列表中有本AS号,则不接收该路由,从而避免了AS间的路由环路。

c)控制选路:当收到相同前缀的BGP路由,优选AS_Path列表AS号个数少的。

3、Next_Hop属性

作用:记录了路由的下一跳信息。

BGP的下一跳属性和IGP的有所不同,不一定就是邻居设备的IP地址。

通常情况下,Next_Hop属性遵循下面的规则:

1、BGP Speaker在向EBGP对等体发布某条路由时,会把该路由信息的下一跳属性设置为本地与对端建立BGP邻居关系的接口地址。

2、BGP Speaker将本地始发路由发布给IBGP对等体时,会把该路由信息的下一跳属性设置为本地与对端建立BGP邻居关系的接口地址。

3、BGP Speaker在向IBGP对等体发布从EBGP对等体学来的路由时,并不改变该路由信息的下一跳属性。

BGP

公认任意属性

所有BGP设备都可以识别此类属性,但不要求必须存在于Update报文中,即就算缺少这类属性,路由信息也不会出错。主要有以下属性:

1、Local_Pref属性

作用:表明路由的BGP优先级,用于判断流量离开AS时的最佳路由。

使用场景:当BGP的设备通过不同的IBGP对等体得到目的地址相同但下一跳不同的多条路由时,将优先选择Local_Pref属性值较高的路由。

特点:

a)Local_Pref属性仅在IBGP对等体之间有效,不通告给其他AS。

b)Local_Pref属性可以手动配置,如果路由没有配置Local_Pref属性,BGP选路时将该路由的Local_Pref值按缺省值100来处理。

2、ATOMIC-AGGREGATE:原子聚合属性

作用:用于提醒管理员哪些路由被抑制了明细;

产生条件:手工聚合,并抑制明细。

BGP

可选过渡属性

BGP设备可以不识别此类属性,如果BGP设备不识别此类属性,但它仍然会接收这类属性,并通告给其他对等体

1、AGGREGATOR:聚合者,用于标识是哪个AS中的哪一台路由器上进行聚合的;携带ROUTER-ID,以及AS号。

2、COMMUNITY:相当于IGP的TAG,有基本的团体属性和扩展的团体属性。

a).基本的团体属性(32bit):

自定义:(格式NN:NN),无特殊含义的tag,主要用于路由策略。

公有:有特殊含义的tag,BGP路由收到后会进行特定的行为。

b).扩展的团体属性(64bit):

Route-target:路由目标,控制VPNV4路由进入哪一个VRF,通过他可以实现不同VRF之间的路由互通Soo(site-of-origin):

Soo主要用于防止VPN某站点有多个CE接入不同的PE时,从CE发往PE的VPN路由可能经过骨干网又回到了该站点的路由环路。

BGP

可选非过渡属性

BGP设备可以不识别此类属性,如果BGP设备不识别此类属性,则会被忽略该属性,且不会通告给其他对等体。主要包含以下属性:

1、MED(MULTI_EXIT_DISC):

作用:用于判断流量进入AS时的最佳路由。

应用场景:当一个运行BGP的设备通过不同的EBGP对等体得到目的地址相同但下一跳不同的多条路由时,在其它条件相同的情况下,将优先选择MED值较小者作为最佳路由。

特点:MED属性仅在相邻两个AS之间传递,收到此属性的AS一方不会再将其通告给任何其他第三方AS。

MED属性可以手动配置,如果路由没有配置MED属性,BGP选路时将该路由的MED值按缺省值0来处理。

2、Cluster-list属性:

路由反射器和它的客户机组成一个集群(Cluster),使用AS内唯一的Cluster ID作为标识。

作用:为了防止集群间产生路由环路,路由反射器使用Cluster_List属性,记录路由经过的所有集群的Cluster ID。

当一条路由第一次被RR反射的时候,RR会把本地Cluster ID添加到Cluster_List的前面。如果没有Cluster_List属性,RR就创建一个。当RR接收到一条更新路由时,RR会检查Cluster_List。

如果Cluster_List中已经有本地Cluster ID,丢弃该路由;

如果没有本地Cluster ID,将其加入Cluster_List,然后反射该更新路由。

3、Originator_ID属性:

Originator_ID由RR产生,使用的Router-ID的值标识路由的始发者。

作用:防止集群内产生路由环路。

当一条路由第一次被RR反射的时候,RR将Originator_ID属性加入这条路由,标识这条路由的发起设备。如果一条路由中已经存在了Originator_ID属性,则RR不会创建新的Originator_ID属性。当设备接收到这条路由的时候,将比较收到的Originator _ID和本地的Router-ID,如果两个ID相同,则不接收此路由。

0 人点赞