BGP路由优选原则二-本地优先级


昨天学习了Preferred-Value属性对于选路的影响,今天继续学习第二条原则。

一、优选Local_Preference属性值最大的路由

Preferred-Value属性相同的情况下比较Local_Preference本地优先级,值越大越优。Local_Preference只在AS内部IBGP间传递时有效。

Local_Preference属性

以上图为例,R4、R5通告路由给R2和R3不会携带Local_Preference属性,因为它们是EBGP对等体。然后R2学习到路由,通告给R1时会打上自己的默认本地优先级100。

Local_Preference默认为100

R1从R2、R3学习到的Local_Preference默认都为100,在保证第一条选路规则相同的情况下可以通过修改Local_Preference的大小让R1从指定路径转发路由。

默认本地优先级

修改Local_Preference的方式有两种:

  • 在BGP视图通过default local-preference修改所有从自身通告的路由的本地优先级
  • 通过路由策略的方式,指定通告给IBGP对等体时的Local_Preference的大小

1.1 修改默认本地优先级

修改本地优先级在自己的BGP视图修改也就是进行路由通告的路由器上修改,也就是在AR3、AR2上修改,然后它们通告给AR1时就会是修改后的本地优先级了。

修改AR3的本地优先级为200时AR1优先从AR3转发路由。

# 进入BGP视图
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 2.2.2.2 as-number 100 
 peer 2.2.2.2 connect-interface LoopBack0
 peer 10.1.35.5 as-number 300 
 #
 ipv4-family unicast
  undo synchronization
  default local-preference 200 # 修改默认的本地优先级,对所有IBGP通告路由本地优先级都为200,影响较大
  peer 1.1.1.1 enable
  peer 1.1.1.1 next-hop-local 
  peer 2.2.2.2 enable
  peer 10.1.35.5 enable

AR1上查看BGP路由:

查看本地优先级

查看本地优先级

通过修改本地默认的优先级对所有IBGP对等体生效。

1.2 通过路由策略修改Local_Preference

在AR3上通过路由策略匹配前缀列表,然后在AR3通告给AR1时设置本地优先级为300,时AR1优先从AR3转发路由。

# 配置前缀列表匹配到指定的路由
ip ip-prefix 1 index 10 permit 192.168.1.0 24

# 配置路由策略,节点10匹配前缀列表设置本地优先级,节点20允许所有
route-policy 1 permit node 10 
 if-match ip-prefix 1 
 apply local-preference 300 
#
route-policy 1 permit node 20 

# 在BGP视图应用路由策略
bgp 100
 peer 1.1.1.1 as-number 100 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 2.2.2.2 as-number 100 
 peer 2.2.2.2 connect-interface LoopBack0
 peer 10.1.35.5 as-number 300 
 #
 ipv4-family unicast
  undo synchronization
  peer 1.1.1.1 enable
  peer 1.1.1.1 route-policy 1 export      # 在向AR1通告路由时调用路由策略
  peer 1.1.1.1 next-hop-local 
  peer 2.2.2.2 enable
  peer 10.1.35.5 enable

AR1上查看效果:

[AR1]dis bgp routing-table

 BGP Local router ID is 1.1.1.1 
 Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete


 Total Number of Routes: 2
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn

 *>i  192.168.1.0        3.3.3.3         0          300        0      300i
 * i                     2.2.2.2         0          100        0      200i
 
 
# 查看路由详细信息
[AR1]dis bgp routing-table 192.168.1.0

 BGP local router ID : 1.1.1.1
 Local AS number : 100
 Paths:   2 available, 1 best, 1 select
 BGP routing table entry information of 192.168.1.0/24:
 From: 3.3.3.3 (3.3.3.3)
 Route Duration: 00h04m03s  
 Relay IP Nexthop: 10.1.13.3
 Relay IP Out-Interface: GigabitEthernet0/0/1
 Original nexthop: 3.3.3.3
 Qos information : 0x0
 AS-path 300, origin igp, MED 0, localpref 300, pref-val 0, valid, internal, bes
t, select, active, pre 255, IGP cost 1
 Not advertised to any peer yet

 BGP routing table entry information of 192.168.1.0/24:
 From: 2.2.2.2 (2.2.2.2)
 Route Duration: 01h20m02s  
 Relay IP Nexthop: 10.1.12.2
 Relay IP Out-Interface: GigabitEthernet0/0/0
 Original nexthop: 2.2.2.2
 Qos information : 0x0
 AS-path 200, origin igp, MED 0, localpref 100, pref-val 0, valid, internal, pre
 255, IGP cost 1, not preferred for Local_Pref
 Not advertised to any peer yet

通过路由策略的方式可以更加针对特定路由条目和对等体进行设置。

总结:在下一跳可达、相同Preferred-Value的情况下将会比较Local_Preference,本地优先级越大越优先,本地优先级只在AS内部有效,只会通告给IBGP邻居。可以通过修改本地默认优先级或路由策略来进行修改。

如果对文章感兴趣欢迎微信搜索公众号:不喜欢热闹的孩子
不喜欢热闹的孩子


Chuck 2024年6月5日 10:59 收藏文档