一、技术背景
(1)当BGP设备学习到去往同一个目的网络的多条BGP路由(路径)时,设备将这些路由都装载到BGP路由表,并在这些条目中进行路由优选,最终决策出最优(Best)的路由,将该BGP路由加载到全局路由表中,作为数据转发的依据。
(2)当存在多路径时,BGP只会将其选择出来的最优路由通告给其他对等体。
(3)BGP定义了一系列路由优选规则,从而使得设备能够在多条路由中选择出最优的路由。BGP在选择路由时严格按照先后顺序比较路由的属性,如果通过当前的属性就可以选出最优路由,BGP将不再进行后面的比较。
BGP路由表示例 :
注:可用的(Valid),可用的路由在表项行首存在“*”号,可用意味着该BGP路由的Next_hop是路由可达的,设备在其全局路由表中查询到了去往该Hext_hop地址的路由,即认为该BGP路由可用。
优选的(best),最优的路由将出现“>”符号,它将被加载到设备的全局路由表中。
二、BGP路由优选规则
1.优选具有最大Preferred-Value的路由
2.优选具有最大Local_Preference的路由
3.优选起源于本地的路由
4.优选AS_Path最短的路由
5.Origin(IGP > EGP > Incomplete)
6.优选MED最小的路由
7.优选EBGP对等体所通告的路由
8.优选到Next_Hop的IGP度量值最小的路由
9.BGP路由负载分担
10.优选Cluster_List 最短的路由
11.优选Router-ID最小的BGP对等体发来的路由
12.优选Peer-IP地址最小的对等体发来的路由
三、Preferred-Value
(1)私有的路径属性,相当于路由的权重值,取值范围:0~65535;该值越大,则路由越优先。
(2)Preferred-Value只能在路由器本地配置,而且只影响本设备的路由优选。该属性不会传播给任何BGP对等体。
(3)路由器本地始发的BGP路由默认的Preferred-Value为0,从其他BGP对等体学习到的路由默认Preferred-Value也为0。
四、Local_Preference
(1)也即本地优先级属性,是公认自决属性,用于告诉AS中的路由器,哪条路径是离开AS的首选路径。
(2)Local_Preference属性值越大则BGP路由越优,缺省的Local_Preference值为100。
(3)该属性只能被传递给IBGP对等体,而不能传递给EBGP对等体。
五、源于本地的路由
(1)在其他条件相同的情况下,优选本地生成的路由(本地生成的路由优先级高于从邻居学来的路由)
(2)本地生成的路由包括通过network或import-route命令引入的路由、手工汇总路由和自动汇总路由。这些本地生成的路由之间的优选如下:
1.优选汇总路由(汇总路由优先级高于非汇总路由)。
2.通过aggregate命令生成的手动汇总路由的优先级高于通过summary automatic命令生成的自动汇总路由。
3.通过network命令引入的路由的优先级高于import-route命令引入的路由。
六、AS_Path最短的路由
AS_Path最短的路径则最优先。
七、Origin(IGP > EGP > Incomplete)
查看Origin