目录

简介

先决条件

要求

使用的组件

背景信息

在本地发起的路由中设置的BGP权重路径属性

修改BGP权重路径属性

实际案例场景

简介

本文档介绍边界网关协议(BGP)权重路径属性在网络故障切换场景中的重要性。

先决条件

要求

Cisco 建议您了解以下主题：

- 边界网关协议 (BGP)

- 路由协议重分发

- 运行Cisco IOS®的Cisco路由器

使用的组件

本文档中的信息基于采用Cisco IOS 15.6(2)版的Cisco路由器

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您的网络处于活动状态，请确保您了解所有命令的潜在影响。

背景信息

BGP通常用于在通过内部网关协议(IGP)从LAN收到网络前缀后将网络前缀通告到WAN(WAN)，反之亦然。如果没有正确的配置，BGP在网络从链路故障中恢复后可能无法通过WAN恢复原始路由路径。

在故障转移场景中部署的路由器可能会出现路由滞留的情况，从而导致发生故障和恢复网络事件后，流量通过备份路径重定向。这可能是由于BGP权重路径属性的性质。

发生网络故障后（通常通过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

第二步：路由通过EIGRP接收。

BGP会话由于链路故障而中断。通过网络收敛，同一路由192.168.1.0/24现在通过EIGRP接收。

关键是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#

第三步：路由再次通过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 path属性的值设置为32768，因为它是从BGP角度在路由器本地发起的。

— 通过与WAN的BGP会话接收的原始路由的权重路径属性的值为0。

— 第一条路由具有最高权重，因此在BGP表中被选为最佳路由。

— 这会导致路由表不会收敛到原始状态并保留EIGRP路由条目。

注:BGP Weight Path属性是BGP在Cisco IOS路由器的BGP表中选择最佳路径时检查的第一个路径属性。BGP首选具有最高权重的条目的路径。权重是Cisco特定的参数，仅在配置该参数的路由器中具有本地意义。通过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权重路径属性的默认值。

以下命令将从BGP对等体接收的所有路由的权重路径属性设置为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路径属性的值增加，通过BGP接收的原始路由优先于下一情况：

步骤1:路由通过BGP接收。

BGP Table显示通过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

第二步：路由通过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

第三步：路由再次通过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上的路径。

下一个输出显示CORE交换机如何与两个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

第二步：主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

第三步：恢复主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权重路径属性。

在当前状态下，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

本文档中涉及的行为在现场已广泛可见。网络拓扑和初始症状可能与所涵盖的示例不同。但是，根本原因可能是并且通常如本文档所述。必须验证配置和方案是否满足网络部署中出现此情况的变量。