BGP选路规则
前提:路由下一跳不可达或没有解决同步问题,则不能参与路由选择:
能改的其实就前一半
1. 选择weight值最高的路由——思科私有
2. 选择LOCAL_PREF较大的路由
3. 选择通过network或者aggregate发起的本地路由。
4. 选择AS路径较短的路由
5. 依次选择origin属性为IGP、 EGP和INCOMPLETE类型的路由
6. 选择MED较小的路由
7. 优选EBGP而不是IBGP
8. 选择下一跳IGP度量值较小的路由
9. 负载均衡, BGP默认不支持负载均衡。若配置负载均衡,则不比较后面的参数。负载均衡非常苛刻,需要前8条都满足
(maximum-paths n)
10. 如果都是EBGP路由,则选择先收到的那条(最老的)
11. 选择BGP Router ID小的BGP对等体通告的路由
12. 优先选择最短的cluster-list
13. 优先选择邻居IP地址最小的路由(neighbor指定的地址)
补充说明:
第3点:本地发起的路由有多种方式,如在BGP进程下用network命令,或将其它路由协议重分布进BGP,或者手工汇总。通过命令network和重分布的优先于手工汇总。
第4点:在做聚合路由时,使用as-set后产生的AS-Path列表中{ }里的AS号长度只算一个AS号的长度,在联盟内的AS-Path列表中()的AS号长度不做计算依据。
第9点:等价负载均衡,当前面8条选路原则都无法优选出最优路由时,并且在BGP进程下面配置了maximum-paths,那么将执行负载均衡。
第10条,第11条:如果BGP进程下使用bgp bestpath compare-routerid命令,则忽略第10条,进行第11条的比较
默认情况下, BGP 选择最短AS path作为(>)最优路径
Local preference 使用
bgp default local-preference value
此命令更改默认的本地优先级。
向IBGP邻居发布的所有路由都将本地优先级设置指定的值
1. IBGP邻居之间,选择离开本AS的出口。
2. 默认为100 , 越大越优。
3. Local preference是公认自由属性
Router A配置route-map
调整后的BGP表