实施BGP路由负载分担
应用环境
路由负载分担是到一个目的地址的流量可以分别走不同的路径。负载分担将流量分散到不同的路径上,最后到达同一目的地,这样可以避免所有的流量都走同一条路径造成的流量阻塞。
流量的负载分担也可提高网络的可靠性。如果参与负载分担的一个接口Down掉后,流量还能可靠地从其它的接口发出。
BGP路由负载分担原则体现在BGP的选路策略中,在所有高优先级路由属性相同,且有多条AS_Path完全相同的外部路由时,BGP根据所配置的最大负载分担的路由条数进行负载分担。
配置思路
在实施BGP负载分担时,采用如下的配置思路:
1. 在域内BGP对等体之间配置IBGP连接。
2. 在域间BGP对等体之间配置EBGP连接。
3. 在BGP路由器上配置负载分担。
配置注意事项
如果配置了BGP负载分担,则不论是否配置了peer next-hop-local命令,本地路由器向IBGP对等体组发布路由时都先将下一跳地址改变为自身地址。
配置实例
如下图所示,所有路由器都配置BGP,RouterA在AS65008中,RouterB和RouterC在AS65009中。RouterA与RouterB、RouterC之间运行EBGP,RouterB和RouterC之间运行IBGP。在RouterA上配置负载分担。
配置BGP负载分担的组网图
适用产品和版本
采用NE系列路由器,版本为(VRP5.30)及后续版本。
配置步骤
步骤 1 配置各接口的IP地址(略)
步骤 2 配置BGP连接
# 配置RouterA。 # 配置RouterA的EBGP对等体RouterB和RouterC。 [RouterA] bgp 65008 [RouterA-bgp] router-id 1.1.1.1 [RouterA-bgp] peer 200.1.1.1 as-number 65009 [RouterA-bgp] peer 200.1.2.1 as-number 65009 # 配置RouterA发布路由8.0.0.0/8。 [RouterA-bgp] ipv4-family unicast [RouterA-bgp-af-ipv4] network 8.0.0.0 255.0.0.0 [RouterA-bgp-af-ipv4] quit # 配置RouterB。 # 配置RouterB的EBGP对等体为RouterA,IBGP对等体为RouterC。 [RouterB] bgp 65009 [RouterB-bgp] router-id 2.2.2.2 [RouterB-bgp] peer 200.1.1.2 as-number 65008 [RouterB-bgp] peer 9.1.1.2 as-number 65009 # 配置RouterB发布路由9.1.1.0/24,并在向RouterC发布路由时将路由的下一跳改为自身。 [RouterB-bgp] ipv4-family unicast [RouterB-bgp-af-ipv4] peer 9.1.1.2 next-hop-local [RouterB-bgp-af-ipv4] network 9.1.1.0 255.255.255.0 [RouterB-bgp-af-ipv4] quit # 配置RouterC。 # 配置RouterC的EBGP对等体是RouterA,IBGP对等体是RouterB。 [RouterC] bgp 65009 [RouterC-bgp] router-id 3.3.3.3 [RouterC-bgp] peer 200.1.2.2 as-number 65008 [RouterC-bgp] peer 9.1.1.1 as-number 65009 # 配置RouterC发布路由9.1.1.0/24,并在向RouterB发布路由时将路由的下一跳改为自身。 [RouterC-bgp] ipv4-family unicast [RouterC-bgp-af-ipv4] peer 9.1.1.1 next-hop-local [RouterC-bgp-af-ipv4] network 9.1.1.0 255.255.255.0 [RouterC-bgp-af-ipv4] quit
# 查看RouterA的路由表。
[RouterA] display bgp routing-table
Total Number of Routes: 3
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
Network NextHop MED LocPrf PrefVal Path/Ogn
*> 8.0.0.0 0.0.0.0 0 0 i
*> 9.1.1.0/24 200.1.1.1 0 0 65009i
* 200.1.2.1 0 0 65009i
从路由表中可以看出,到目的地址9.1.1.0/24有两条有效路由,其中下一跳为200.1.1.1的路由是最优路由(因为RouterB的路由器ID要小一些)。
步骤 3 配置负载分担
# 配置RouterA的最大负载分担数是2。 [RouterA] bgp 65008 [RouterA-bgp] ipv4-family unicast [RouterA-bgp-af-ipv4] maximum load-balancing 2
验证结果
如果配置成功,则:
在RouterA上使用命令display bgp routing-table查看路由表。
[RouterA] display bgp routing-table
Total Number of Routes: 3
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
Network NextHop MED LocPrf PrefVal Path/Ogn
*> 8.0.0.0 0.0.0.0 0 0 i
*> 9.1.1.0/24 200.1.1.1 0 0 65009i
*> 200.1.2.1 0 0 65009i
从路由表中可以看到,BGP路由9.1.1.0/24存在两个下一跳,分别是200.1.1.1和200.1.2.1,且都是最优路由。





