目錄

簡介

必要條件

需求

採用元件

背景資訊

本地路由中的BGP權重路徑屬性集

修改BGP權重路徑屬性

真實案例場景

簡介

本檔案介紹邊界閘道通訊協定(BGP)權重路徑屬性在網路容錯移轉方案中的重要性。

必要條件

需求

思科建議您瞭解以下主題：

- 邊界閘道通訊協定(BGP)

- 路由協定重分發

- 執行Cisco IOS®的Cisco路由器

採用元件

本檔案中的資訊是根據使用Cisco IOS版本15.6(2)的Cisco路由器

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路運作中，請確保您瞭解任何指令可能造成的影響。

背景資訊

BGP通常用於在從Lan區域網路(LAN)經由內部閘道通訊協定(IGP)接收到網路首碼後，向Wan區域網路(WAN)通告網路首碼，反之亦然。如果沒有正確配置，BGP可能會在網路從鏈路故障中恢復後無法通過WAN恢復原始路由路徑。

在故障轉移場景中部署的路由器可能會發生路由停滯，這可能會導致在出現故障和恢復網路事件後通過備份路徑重定向流量。這可能是由於BGP Weight路徑屬性的性質所造成。

發生網路故障後（通常是WAN鏈路），網路可以收斂並使用通過IGP接收的可用備份路徑。

但是，在恢復主路徑時，路由器仍然可以使用備份路徑，無法通過WAN鏈路恢復原始路由。

可以看到非對稱路由路徑和次優路由路徑等後果。

在使用兩個WAN路由器的冗餘方案中，這些路由器可以運行BGP以與WAN交換網路字首。類似IGP的增強型內部網關路由協定(EIGRP)可用於與LAN網路裝置交換網路字首。要完成完全的網路連線，通常需要在這些協定之間進行相互重分發。

註：本文檔使用術語字首和路由可互換使用。

此功能的高級設計可以在下一個拓撲中看到：

本地路由中的BGP權重路徑屬性集

下一個場景將描述故障轉移情況下BGP權重路徑屬性的行為。

步驟1.路由是透過BGP接收的。

如圖所示，名為WAN RTR的路由器通過BGP接收192.168.1.0/24網路。

管理距離(AD)為20時，路由會將其安裝到路由表中。

BGP表：

WAN_RTR

WAN_RTR#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*>  192.168.1.0      10.1.2.2                 0             0 2 i

路由表顯示BGP安裝的路由：

WAN_RTR

WAN_RTR#show ip route

<snip>

B     192.168.1.0/24 [20/0] via 10.1.2.2, 00:00:42

步驟2.路由通過EIGRP接收。

BGP會話由於鏈路故障而關閉。通過網路融合，現在通過EIGRP接收相同的路由192.168.1.0/24。

關鍵是BGP可以通告或重新分發EIGRP路由（在下一路由器配置的幫助下）。如果是這種情況，現在會將EIGRP路由新增到BGP表中。

注意：當路由器在本地建立網路字首時，BGP權重路徑屬性預設設定為32768。

BGP配置：

WAN_RTR

WAN_RTR#show running-config | begin router bgp

<snip>

router bgp 1

redistribute eigrp 1

neighbor 10.1.2.2 remote-as 2

!

註:BGP命令network 192.168.1.0 mask 255.255.255.0可以顯示相同的結果。

BGP表：

WAN_RTR

WAN_RTR#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*>  192.168.1.0      10.1.3.3            156160         32768 ?

路由表顯示EIGRP安裝的路由：

WAN_RTR

WAN_RTR#show ip route

<snip>

D     192.168.1.0/24 [90/156160] via 10.1.3.3, 00:00:02, FastEthernet0/1

WAN_RTR#

步驟3.路由再次通過BGP接收。

現在，EIGRP路由重新分發到BGP中，並且再次通過BGP接收原始路由後，BGP表中現在有2個用於192.168.1.0/24網路的條目。

BGP表：

WAN_RTR

WAN_RTR#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*   192.168.1.0      10.1.2.2                 0             0 2 i

*>                   10.1.3.3            156160         32768 ?

在BGP表中：

— 仍然可以看到步驟2中由重新分發到BGP的EIGRP路由建立的條目。

— 原始路由通過重新建立的BGP會話新增回來。

在BGP最佳路徑選取視點中：

— 重新分發到BGP的EIGRP路由的Weight路徑屬性的值設定為32768，因為它在本地從BGP角度起源於路由器。

— 通過與WAN的BGP會話接收的原始路由的Weight路徑屬性的值為0。

— 第一條路由的Weight最高，因此被選為BGP表中最佳路由。

— 這會導致路由表收斂到原始狀態並保留EIGRP路由條目。

註:BGP Weight Path屬性是BGP檢查在Cisco IOS路由器的BGP表中選擇最佳路徑的第一個路徑屬性。BGP優先使用具有最高Weight的專案的路徑。Weight是一個思科特定的引數，只在設定該引數的路由器上產生本地意義。透過BGP最佳路徑選取演演算法的詳細資訊。

路由表：

WAN_RTR

WAN_RTR#show ip route

<snip>

D     192.168.1.0/24 [90/156160] via 10.1.3.3, 00:08:55, FastEthernet0/1

修改BGP權重路徑屬性

在配置的每個BGP對等體中，可以使用weight命令或route-map修改BGP權重路徑屬性的預設值。

接下來的命令將從BGP對等體接收的所有路由的Weight path屬性設定為40000。

範例 1

使用weight命令

router bgp 1

neighbor 10.1.2.2 weight 40000

範例 2

使用route-map命令設定「權重路徑」屬性

route-map FROM-WAN permit 10

set weight 40000

!

router bgp 1

neighbor 10.1.2.2 route-map FROM-WAN in

!

clear ip bgp * soft in

範例 3

使用route-map命令為某些路由設定權重路徑屬性

ip prefix-list NETWORKS permit 192.168.1.0/24

!

route-map FROM-WAN permit 10

match ip address prefix NETWORKS

set weight 40000

route-map FROM-WAN permit 100

!

router bgp 1

neighbor 10.1.2.2 route-map FROM-WAN in

!

clear ip bgp * soft in

隨著Weight path屬性的值增加，通過BGP接收的原始路由將優先使用，如下例所示：

步驟1.路由是透過BGP接收的。

BGP表顯示，通過BGP接收的路由現在的Weight值為40000，而不是零。

BGP表：

WAN_RTR

WAN_RTR#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*>  192.168.1.0      10.1.2.2                 0         40000 2 i

WAN_RTR#

路由表：

WAN_RTR

WAN_RTR#show ip route

<snip>

B     192.168.1.0/24 [20/0] via 10.1.2.2, 00:09:53

步驟2.路由通過EIGRP接收。

本地生成的路由在BGP表中仍然具有32768值。

BGP表：

WAN_RTR

WAN_RTR#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*>  192.168.1.0      10.1.3.3            156160         32768 ?

路由表：

WAN_RTR

WAN_RTR#show ip route

<snip>

D     192.168.1.0/24 [90/156160] via 10.1.3.3, 00:01:41, FastEthernet0/1

步驟3.路由再次通過BGP接收。

使用Weight 40000，現在通過BGP接收的路由會通過本地原始路由進行選擇。這使得網路正確收斂到其原始狀態。

BGP表：

WAN_RTR

WAN_RTR#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*>  192.168.1.0      10.1.2.2                 0         40000 2 i

路由表：

WAN_RTR

WAN_RTR#show ip route

<snip>

B     192.168.1.0/24 [20/0] via 10.1.2.2, 00:00:25

真實案例場景

以下情境為例：

步驟1.原始網路狀態。

核心第3層交換機通過EIGRP從WAN RTR A和WAN RTR B接收192.168.1.0/24路由。通過WAN RTR A的路徑被選擇。

下一個輸出顯示了核心交換機如何與兩台WAN路由器保持EIGRP鄰接關係，以及如何選擇WAN RTR A以到達192.168.1.0/24網路。

核心

CORE#show ip eigrp neighbors

EIGRP-IPv4 Neighbors for AS(1)

H   Address                 Interface              Hold Uptime   SRTT   RTO  Q  Seq

(sec)         (ms)       Cnt Num

0   10.1.2.2  (WAN_RTR_A)   Fa0/0                    10 00:05:15   79  1066  0  10

1   10.1.3.3  (WAN_RTR_B)   Fa0/1                    12 00:06:22   76   456  0  5

CORE#show ip route

<snip>

D EX  192.168.1.0/24 [170/28416] via 10.1.2.2, 00:00:32, FastEthernet0/0

CORE#show ip eigrp topology

EIGRP-IPv4 Topology Table for AS(1)/ID(10.10.10.10)

<snip>

P 192.168.1.0/24, 1 successors, FD is 28416, tag is 4

via 10.1.2.2 (28416/2816), FastEthernet0/0

via 10.1.3.3 (281856/2816), FastEthernet0/1

步驟2.主WAN鏈路故障。

在鏈路出現故障時，CORE交換機現在通過第二佳EIGRP路徑（即WAN RTR B）安裝路由。

核心

CORE#show ip route

<snip>

D EX  192.168.1.0/24 [170/281856] via 10.1.3.3, 00:00:05, FastEthernet0/1

CORE#show ip eigrp topology

EIGRP-IPv4 Topology Table for AS(1)/ID(10.10.10.10)

<snip>

P 192.168.1.0/24, 1 successors, FD is 28416, tag is 4

via 10.1.3.3 (281856/2816), FastEthernet0/1

步驟3.恢復主WAN鏈路。

主WAN鏈路已恢復。但是，CORE交換機仍會通過備份路徑進行路由，如下面的輸出所示：

核心

CORE#show ip route

<snip>

D EX  192.168.1.0/24 [170/281856] via 10.1.3.3, 00:06:09, FastEthernet0/1

CORE#show ip eigrp topology

EIGRP-IPv4 Topology Table for AS(1)/ID(10.10.10.10)

<snip>

P 192.168.1.0/24, 1 successors, FD is 28416, tag is 4

via 10.1.3.3 (281856/2816), FastEthernet0/1

此行為的原因在於BGP Weight路徑屬性，如前所述。

在當前狀態下，WAN RTR A顯示路由表中通過EIGRP的路由和BGP表中從EIGRP重新分發的路由，因為權重路徑屬性值的最高值比從重新建立的WAN鏈路通過BGP接收的路由的權重值高。

WAN_RTR_A

WAN_RTR_A#show ip bgp

<snip>

Network          Next Hop            Metric LocPrf Weight Path

*   192.168.1.0      10.2.4.4                 0             0 4 i

*>                   10.1.2.1            284416         32768 ?

WAN_RTR_A#show ip bgp summary

BGP router identifier 10.20.20.20, local AS number 2

<snip>

Neighbor        V           AS MsgRcvd MsgSent   TblVer  InQ OutQ Up/Down  State/PfxRcd

10.2.4.4        4            4      12      12       16    0    0 00:03:54   (UP) 4

WAN_RTR_A#show ip route

<snip>

D EX  192.168.1.0/24 [170/284416] via 10.1.2.1, 00:08:22, FastEthernet0/0

本文所述行為已廣泛存在於現場中。網路拓撲和初始症狀可能與涵蓋的範例不同。然而，根本原因可能是且通常如本文檔所述。必須驗證配置和方案是否滿足網路部署中出現此條件的變數。