一、技术背景

  (1)当BGP设备学习到去往同一个目的网络的多条BGP路由(路径)时,设备将这些路由都装载到BGP路由表,并在这些条目中进行路由优选,最终决策出最优(Best)的路由,将该BGP路由加载到全局路由表中,作为数据转发的依据。

  (2)当存在多路径时,BGP只会将其选择出来的最优路由通告给其他对等体

  (3)BGP定义了一系列路由优选规则,从而使得设备能够在多条路由中选择出最优的路由。BGP在选择路由时严格按照先后顺序比较路由的属性,如果通过当前的属性就可以选出最优路由,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