一、结论:
1、BGP只能建立备份路由,不能建立等价路由.
2、BGP按照下面的规则进行优选路由。
BGP选择路由的策略
当到达同一目的地存在多条路由时,BGP依次对比下列属性来选择路由:
-
优选协议首选值(PrefVal)最高的路由。
协议首选值(PrefVal)是华为设备的特有属性,该属性仅在本地有效。
-
优选本地优先级(Local_Pref)最高的路由。
如果路由没有本地优先级,BGP选路时将该路由按缺省的本地优先级100来处理。
-
依次优选手动聚合路由、自动聚合路由、network命令引入的路由、import-route命令引入的路由、从对等体学习的路由。
-
优选AS路径(AS_Path)最短的路由。
-
依次优选Origin类型为IGP、EGP、Incomplete的路由。
-
对于来自同一AS的路由,优选MED值最低的路由。
-
依次优选EBGP路由、IBGP路由、LocalCross路由、RemoteCross路由。
PE上某个VPN实例的VPNv4路由的ERT匹配其他VPN实例的IRT后复制到该VPN实例,称为LocalCross;从远端PE学习到的VPNv4路由的ERT匹配某个VPN实例的IRT后复制到该VPN实例,称为RemoteCross。
-
优选到BGP下一跳IGP度量值(metric)最小的路由。说明:
在IGP中,对到达同一目的地址的不同路由,IGP根据本身的路由算法计算路由的度量值。
-
优选Cluster_List最短的路由。
-
优选Router ID最小的设备发布的路由。
如果路由携带Originator_ID属性,选路过程中将比较Originator_ID的大小(不再比较Router ID),并优选Originator_ID最小的路由。
-
优选从具有最小IP Address的对等体学来的路由。
3、BGP负载分担
当到达同一目的地址存在多条等价路由时,可以通过BGP等价负载分担实现均衡流量的目的。形成BGP等价负载分担的条件是“BGP选择路由的策略”的1至8条规则中需要比较的属性完全相同。
在大型网路中,到达同一目的地通常会存在多条有效路由,但是BGP只将最优路由发布给对等体,这一特点往往会造成很多流量负载不均衡的情况。通过配置BGP负载分担,可以流量负载均衡,减少网络拥塞。
[Huawei-bgp] ipv4-family unicast
[Huawei-bgp-af-ipv4] maximum load-balancing 2
二、组网图:
三、关键配置:
1、各个邻居之间,都是EBGP邻居。
2、左侧有一个PC,右侧有两个PC,为了验证流量在中间网络上是否总是走一个路由器,而不是负载均衡。
四、实测结果:
1、无论从左边到右边,还是从右边到左边的流量,总是走上面的路由器。而不走下面的路由器。
PC1上的tracert结果:
PC2上的tracert结果:
PC3上的tracert结果:
再做一个实验,将上面的路由器的AS号修改为65010,比下面的路由器的AS号更大,结果如下:
先说结论:BGP仍然是单选一条最优路径,而不会负载分担。选择的最优路由仍然同上面的。
下面是AR9上看到的路由表。
PC1上tracert的结果,可见仍然是走上面的路径。
PC2上tracert的结果,也显示走上面的路径,如下:
PC3上tracert的结果,也显示走上面的路径,如下:
贴上所有设备的配置信息:
AR9路由器配置如下:
<Huawei>dis curr [V200R003C00] # snmp-agent local-engineid 800007DB03000000000000 snmp-agent # clock timezone China-Standard-Time minus 08:00:00 # portal local-server load portalpage.zip # drop illegal-mac alarm # set cpu-usage threshold 80 restore 75 # aaa authentication-scheme default authorization-scheme default accounting-scheme default domain default domain default_admin local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$ local-user admin service-type http # firewall zone Local priority 15 # interface Vlanif1 ip address 10.0.0.1 255.255.255.0 # interface Ethernet0/0/0 # interface Ethernet0/0/1 # interface Ethernet0/0/2 # interface Ethernet0/0/3 # interface Ethernet0/0/4 # interface Ethernet0/0/5 # interface Ethernet0/0/6 # interface Ethernet0/0/7 # interface GigabitEthernet0/0/0 ip address 20.0.0.1 255.255.255.0 # interface GigabitEthernet0/0/1 ip address 30.0.0.1 255.255.255.0 # interface NULL0 # bgp 65001 peer 20.0.0.2 as-number 65010 peer 30.0.0.2 as-number 65003 # ipv4-family unicast undo synchronization network 10.0.0.0 255.255.255.0 network 20.0.0.0 255.255.255.0 network 30.0.0.0 255.255.255.0 peer 20.0.0.2 enable peer 30.0.0.2 enable # user-interface con 0 authentication-mode password user-interface vty 0 4 user-interface vty 16 20 # wlan ac # return <Huawei>
AR4路由器的配置如下:
<Huawei>dis curr [V200R003C00] # snmp-agent local-engineid 800007DB03000000000000 snmp-agent # clock timezone China-Standard-Time minus 08:00:00 # portal local-server load portalpage.zip # drop illegal-mac alarm # set cpu-usage threshold 80 restore 75 # aaa authentication-scheme default authorization-scheme default accounting-scheme default domain default domain default_admin local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$ local-user admin service-type http # firewall zone Local priority 15 # interface GigabitEthernet0/0/0 ip address 20.0.0.2 255.255.255.0 # interface GigabitEthernet0/0/1 ip address 40.0.0.1 255.255.255.0 # interface GigabitEthernet0/0/2 # interface NULL0 # bgp 65010 peer 20.0.0.1 as-number 65001 peer 40.0.0.2 as-number 65004 # ipv4-family unicast undo synchronization peer 20.0.0.1 enable peer 40.0.0.2 enable # user-interface con 0 authentication-mode password user-interface vty 0 4 user-interface vty 16 20 # wlan ac # return <Huawei>
AR5路由器的配置如下:
<Huawei>dis curr [V200R003C00] # snmp-agent local-engineid 800007DB03000000000000 snmp-agent # clock timezone China-Standard-Time minus 08:00:00 # portal local-server load portalpage.zip # drop illegal-mac alarm # set cpu-usage threshold 80 restore 75 # aaa authentication-scheme default authorization-scheme default accounting-scheme default domain default domain default_admin local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$ local-user admin service-type http # firewall zone Local priority 15 # interface GigabitEthernet0/0/0 ip address 30.0.0.2 255.255.255.0 # interface GigabitEthernet0/0/1 ip address 50.0.0.1 255.255.255.0 # interface GigabitEthernet0/0/2 # interface NULL0 # bgp 65003 peer 30.0.0.1 as-number 65001 peer 50.0.0.2 as-number 65004 # ipv4-family unicast undo synchronization peer 30.0.0.1 enable peer 50.0.0.2 enable # user-interface con 0 authentication-mode password user-interface vty 0 4 user-interface vty 16 20 # wlan ac # return <Huawei>
AR10路由器的配置如下:
<Huawei>dis curr [V200R003C00] # snmp-agent local-engineid 800007DB03000000000000 snmp-agent # clock timezone China-Standard-Time minus 08:00:00 # portal local-server load portalpage.zip # drop illegal-mac alarm # set cpu-usage threshold 80 restore 75 # aaa authentication-scheme default authorization-scheme default accounting-scheme default domain default domain default_admin local-user admin password cipher %$%$K8m.Nt84DZ}e#<0`8bmE3Uw}%$%$ local-user admin service-type http # firewall zone Local priority 15 # interface Vlanif1 ip address 90.0.0.1 255.255.255.0 # interface Ethernet0/0/0 # interface Ethernet0/0/1 # interface Ethernet0/0/2 # interface Ethernet0/0/3 # interface Ethernet0/0/4 # interface Ethernet0/0/5 # interface Ethernet0/0/6 # interface Ethernet0/0/7 # interface GigabitEthernet0/0/0 ip address 40.0.0.2 255.255.255.0 # interface GigabitEthernet0/0/1 ip address 50.0.0.2 255.255.255.0 # interface NULL0 # bgp 65004 peer 40.0.0.1 as-number 65010 peer 50.0.0.1 as-number 65003 # ipv4-family unicast undo synchronization network 40.0.0.0 255.255.255.0 network 50.0.0.0 255.255.255.0 network 90.0.0.0 255.255.255.0 peer 40.0.0.1 enable peer 50.0.0.1 enable # user-interface con 0 authentication-mode password user-interface vty 0 4 user-interface vty 16 20 # wlan ac # return <Huawei>
故障切换:
1、模拟主用链路故障,可见流量立即切换到备用链路。
把AR4的端口shutdown, 模拟故障:
2、PC1 在持续ping PC2, 可见中间有一个丢包,然后恢复正常。