本檔案將說明邊界閘道通訊協定(BGP)權重屬性在網路容錯移轉方案中的重要性。
思科建議您瞭解以下主題:
本檔案中的資訊是根據使用Cisco IOS®版本15.6(2)的Cisco路由器。
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
BGP通常用於在通過內部閘道通訊協定(IGP)從區域網路(LAN)接收到網路首碼後,向廣域網(WAN)通告網路首碼,反之亦然。如果沒有正確配置,BGP可能會在網路從鏈路故障中恢復後無法通過WAN恢復原始路由路徑。
在故障轉移場景中部署的路由器可能會有路由停滯,這可能會導致在出現故障和恢復網路事件後通過備份路徑重定向流量。這可能是由於BGP Weight路徑屬性的性質所造成。
發生網路故障後(通常是WAN鏈路),網路可以收斂並使用通過IGP接收的可用備份路徑。
但是,在恢復主路徑時,路由器仍然可以使用備份路徑,無法通過WAN鏈路恢復原始路由。可以看到非對稱路由路徑和次優路由路徑等後果。
在使用兩個WAN路由器的冗餘方案中,這些路由器可以運行BGP以與WAN交換網路字首。類似IGP的增強型內部網關路由協定(EIGRP)可用於與LAN網路裝置交換網路字首。在此描述的拓撲中,BGP路由重分配到EIGRP,而EIGRP路由重分配到WAN路由器上的BGP以實現完全的網路連線。在這些情況下,需要適當的路由過濾或標籤來防止路由在協定之間回饋
可以在下一個拓撲中看到此功能的高級設計:

下一個場景將描述故障轉移情況下BGP Weight屬性的行為。
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。

redistribute eigrp命令在BGP中生成符合條件的EIGRP路由。因此,EIGRP路由會出現在本地BGP表中。
BGP配置:
| WAN_RTR |
|---|
WAN_RTR#show running-config | begin router bgp <snip> |
BGP表:
| WAN_RTR |
|---|
WAN_RTR#show ip bgp <snip> |
下表顯示了EIGRP安裝的路由:
| WAN_RTR |
|---|
WAN_RTR#show ip route <snip> |
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表中:
在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對等體可以使用weight或route-map 命令修改BGP權重的預設值。接下來的命令將從BGP對等體接收的所有路由的Weight path屬性設定為40000。
範例 1
| 權重命令的使用 |
|---|
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 |
附註:路由對映FROM-WAN中的最終允許序列接受來自對等體的其他路由,而不為其分配權40000。
附註:clear ip bgp * soft中的萬用字元刷新來自所有BGP對等體的入站路由。要僅刷新這些示例中使用的對等體,請運行clear ip bgp <ip-address> soft in 命令。
隨著Weight path屬性的值增加,通過BGP接收的原始路由將優先使用,如下例所示:
步驟1.通過BGP接收路由
下一個BGP表顯示通過BGP接收的路由的Weight值現在為40000,而不是零。
BGP表:
| WAN_RTR |
|---|
WAN_RTR#show ip bgp <snip> |
路由表:
| 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接收的路由(再次)
如果權重為40000,則通過BGP接收的路由將選擇本地發起的路由。在WAN路由替換路由表中的EIGRP路由後,網路會正確收斂到其原始狀態。
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路由器和WAN RTR A保持EIGRP鄰接關係,從而到達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鏈路故障

如果鏈路發生故障,核心交換機將通過第二佳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鏈路接收的路由高,並且仍然是最佳路徑。
| 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
|
當WAN路由器將IGP備份路由重新分配到BGP中,並且本地發起的路由比恢復的WAN學習路由的權重更高時,就會發生此行為。網路拓撲和初始症狀可能與此示例不同。在將永久備份路徑路由歸屬於此條件之前,請驗證重分發配置、BGP權重和所選路由。
| 修訂 | 發佈日期 | 意見 |
|---|---|---|
5.0 |
07-Oct-2026
|
為了便於閱讀,更新了拼寫、語法、間距、插入的水平線以分隔各個部分。 |
4.0 |
16-Apr-2025
|
重新認證 |
3.0 |
23-Jan-2024
|
更新的格式。 |
2.0 |
09-Dec-2022
|
已刪除PII。已新增Alt文本。針對標題、機器翻譯、樣式要求、動詞和格式進行了更新。 |
1.0 |
06-Jun-2018
|
初始版本 |