1. 程式人生 > >使用本地優先級影響選路

使用本地優先級影響選路

code pro ota png 建立 peer 協議 做出 col

配置不同本地優先級會影響BGP的路由選擇,當一個運行BGP的路由器有多條路由到達同一目的地址時,會優選本地優先級最高的路由。缺省情況下,BGP本地優先級的值為100。本地優先級屬性僅在IBGP對等體之間交換,不通告給其他AS.
通常用於數據包如何離開本AS,越大越優先。

技術分享圖片

拓撲圖上:R4和R2 R3建立IBGP鄰居,R1同R2和R3建立直連的EBGP鄰居。
R1上通告三個環回接口到BGP中,R4和R5分別通告一個環回口到BGP中。 AS200內部使用RIP做為IGP協議。R4用來建立BGP鄰居的環回口為loop0,IP地址4.4.4.4。為避免路由通告失敗,R4上通告的路由是44.44.44.0/24。

本次實驗的目的是通過改變本地優先級來影響BGP的選路,本地優先級用於影響路由的出站流量,越大越優先。這個屬性會在AS內傳播,並不會傳遞給EBGP鄰居。

實驗一:R3針對R1通告的路由,更改本地優先級為200,觀察R3和R4BGP表,本地優先級的變化,以及R4選路的變化。本次實驗在R3上完成。
在R4看來,去往R1通告的路由,有兩條路徑可選,一為R2,一為R3,由於R2的Router-ID較小,所以R4優選R2出站去往1.1.1.0/24 10.1.1.0/24 100.1.1.0/24.

R3:

route-policy prefrence permit node 10 
 apply local-preference 3333 

bgp 200
 router-id 3.3.3.3
 peer 123.1.1.1 route-policy prefrence import

結果觀察:

  1. 觀察R3針對R1傳遞過來的路由的本地優先級
  2. 觀察R4針對R3傳遞過來的路由的本地優先級,是否會影響R4選路
  3. 觀察R5針對R4傳遞過來的1.1.1.0/24 10.1.1.0/24 100.1.1.0/24這幾條路由,其本地優先級是多少

  4. 觀察R3針對R1傳遞過來的路由的本地優先級

    [R3-bgp]display bgp routing-table 
    
    BGP Local router ID is 3.3.3.3 
    Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete
    
    Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
    
    *>   1.1.1.0/24         123.1.1.1       0          3333       0      100i
    *>i  5.5.5.0/24         4.4.4.4         0          100        0      300i
    *>   10.1.1.0/24        123.1.1.1       0          3333       0      100i
    *>i  44.44.44.0/24      4.4.4.4         0          100        0      i
    *>   100.1.1.0/24       123.1.1.1       0          3333       0      100i

R3上在鄰居123.1.1.1的import方向應用了route-policy,更改了路由的本地優先級為3333.觀察R3的BGP表,這三條路由的本地優先級已經更改了。

  1. 觀察R4針對R3傳遞過來的路由的本地優先級,是否會影響R4選路

    <R4>display bgp routing-table 
    
    BGP Local router ID is 4.4.4.4 
    Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete
    
    Total Number of Routes: 8
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
    
    *>i  1.1.1.0/24         3.3.3.3         0          3333       0      100i
    * i                     2.2.2.2         0          100        0      100i
    *>   5.5.5.0/24         45.1.1.5        0                     0      300i
    *>i  10.1.1.0/24        3.3.3.3         0          3333       0      100i
    * i                     2.2.2.2         0          100        0      100i
    *>   44.44.44.0/24      0.0.0.0         0                     0      i
    *>i  100.1.1.0/24       3.3.3.3         0          3333       0      100i
    * i                     2.2.2.2         0          100        0      100i

在R4上觀察BGP表,發現R4去往R1通告的三條路由,其最優的路徑是選擇R3做為下一跳。因為R3發布的路由有較高的本地優先級。

  1. 觀察R5針對R4傳遞過來的1.1.1.0/24 10.1.1.0/24 100.1.1.0/24這幾條路由,其本地優先級是多少

    <R5>display bgp routing-table 
    
    BGP Local router ID is 45.1.1.5 
    Status codes: * - valid, > - best, d - damped,
               h - history,  i - internal, s - suppressed, S - Stale
               Origin : i - IGP, e - EGP, ? - incomplete
    
    Total Number of Routes: 5
      Network            NextHop        MED        LocPrf    PrefVal Path/Ogn
    
    *>   1.1.1.0/24         45.1.1.4                              0      200 100i
    *>   5.5.5.0/24         0.0.0.0         0                     0      i
    *>   10.1.1.0/24        45.1.1.4                              0      200 100i
    *>   44.44.44.0/24      45.1.1.4        0                     0      200i
    *>   100.1.1.0/24       45.1.1.4                              0      200 100i

R5上看到的關於1.1.1.0/24 10.1.1.0/24 100.1.1.0/24這幾條路由,其本地優先級為空。只有在IBGP傳遞的路由才會攜帶本地優先級屬性。

實驗二、在R3上做針對IBGP鄰居R4做出方向的route-policy,更改1.1.1.0/24 10.1.1.0/24 100.1.1.0/24這幾條路由的選路。

  1. 先去掉R3上的針對peer 123.1.1.1的route-policy相關配置。
  2. 配置針對R4的export方向的route-policy
    peer 4.4.4.4 route-policy prefrence export
  3. 在R4上使用refresh bgp all import/export刷新路由。
  4. 結論,在R3針對R4的出方向做路由策略後,R4針對R3發布的路由,其本地優先級進行了更改,策略生效。

實驗三、在R4上,針對IBGP鄰居R2發布的路由,入方向做路由策略,更改其發布的路由的本地優先級。
結論:生效。

總結:

  1. 在路由器上可以針對EBGP和IBGP鄰居的入站方向使用Route-policy影響本地及下遊路由器接收路由的本地優先級
  2. 在路由器上可以針對IBGP的出站方向使用route-policy影響本AS下遊路由器接收的路由的本地優先級。
  3. 本地優先級僅在IBGP鄰居之間傳遞,不會將屬性傳遞給EBGP鄰居。(第1條講的是,路由器針對EBGP鄰居在自己的入向做Route-Policy,影響自己及下遊路由器)
  4. 默認值為100,取值為0到42億之間。

使用本地優先級影響選路