multihomed BGP

解决BGP mulit-home网络负载分担的解决方案---virtual next-hop
 
   在两个BGP互联的网络中,通常会有多个不同的出口。通常,为了保证网络的正常运行,会选择multi-home的出口建设方式,以保证网络的稳定运行。这种方案经常被用于运营商网络之间。
 
   但是,由于BGP协议的特殊性,虽然有BGP multi-path的选项,但是在在两个BGP网络间,由于管理人员、路由策略的不同,往往会导致多出口时无法实现多出口的流量负载分担。这个问题使网 络带宽的利用率有所下降,这对运营商来说,是非常浪费资源的(运营商之间的网络互联费用是及其昂贵的)。
 
 
   根据BGP协议的选路原则:
1、最大的WEIGHT值(CISCO私有),只作用于本路由器
2、最大的local preference优先
3、本网络的用network、aggregate或redistribution IGP产生的路由,network/redistribution的路由优于aggregate产生的路由
4、最短的AS路径优先
5、最低的产生方式优先:IGP<EGP<INCOMPLETE
6、最小的MED值优先
7、eBGP优于iBGP
8、最小的到BGP next hop IP地址的IGP metric值的路径优先
9、当配置了maximum-paths命令,允许有多条路径
10、如果多条路径都是外部路由,先接收到的优先
11、最小的router ID优先
12、当多条路径的源或者是RID相同的时候,最小的cluster ID优先
13、最小的neighbor地址优先
 
   路由反射器会认为来自于路由器A的路由优先。而只对外广播一条最优路由。这种情况下,运营商A流向运营商B的流量大部分将通过路由器A的链路。导致了路由器A的链路拥塞,而路由器B的链路空闲。
 
   为了解决这个问题,从而出现了虚拟下一跳的解决方案。
   虚拟下一跳的方案,主要的目的是将运营商A的A、B两个出口路由器上收到的运营商B的所有路由,强行将下一跳地址改为一个相同的IP地址,再将这些路由广 播到路由反射器,而这个IP地址的路由是指向运营商B的。这时,运营商A的路由反射器中,只有一条最优路由,就是到该虚拟下一跳IP地址的路由。从而避免 了路由反射器只反射一条最优路由的问题。
 
   同样,当在路由器A、B上与路由反射器建立邻居时,即使使用了next-hop-self的命令,由于路由器A、B的Router ID的不一致,在不使用虚拟下一跳的情况下,也会产生只有一条最优路由被广播到网络中的问题。
 
   下面为路由器A与路由器B的虚拟下一跳配置文件:
路由器A:
router ospf 1
 redistribute static metric 1 metric-type 1 subnets route-map virtualaddress-to-ospf
router bgp 100
 neighbor 192.168.1.2 remote-as 100
 neighbor 192.168.1.2 description TO-RouteReflector
 neighbor 192.168.1.2 send-community
 neighbor 192.168.1.2 route-map setnexthop-to-virtualaddress out
 neighbor 192.168.0.2 remote-as 200
 neighbor 192.168.0.2 description ISP-B
route-map setnexthop-to-virtualaddress permit 10
 match ip address prefix-list ISP-B
 set ip next-hop 10.0.0.1
route-map setnexthop-to-virtualaddress permit 20
route-map virtualaddress-to-ospf permit 10
 match ip address prefix-list virtualaddress
ip prefix-list virtualaddress seq 5 permit 10.0.0.1/32
ip prefix-list ISP-B seq 5 permit 172.16.0.0/24
ip prefix-list ISP-B seq 10 permit 172.16.1.0/24
......
ip route 10.0.0.1 255.255.255.255 192.168.0.2
 
路由器B:
router ospf 1
 redistribute static metric 1 metric-type 1 subnets route-map virtualaddress-to-ospf
router bgp 100
 neighbor 192.168.1.2 remote-as 100
 neighbor 192.168.1.2 description TO-RouteReflector
 neighbor 192.168.1.2 send-community
 neighbor 192.168.1.2 route-map setnexthop-to-virtualaddress out
 neighbor 192.168.0.4 remote-as 200
 neighbor 192.168.0.4 description ISP-B
route-map setnexthop-to-virtualaddress permit 10
 match ip address prefix-list ISP-B
 set ip next-hop 10.0.0.1
route-map setnexthop-to-virtualaddress permit 20
route-map virtualaddress-to-ospf permit 10
 match ip address prefix-list virtualaddress
ip prefix-list virtualaddress seq 5 permit 10.0.0.1/32
ip prefix-list ISP-B seq 5 permit 172.16.0.0/24
ip prefix-list ISP-B seq 10 permit 172.16.1.0/24
......
ip route 10.0.0.1 255.255.255.255 192.168.0.4
  

你可能感兴趣的:(网络,职场,休闲,BGP,multihomed)