锐捷BGP选路
BGP选路原则
1.优选Weight值较高的路由(锐捷默认32768,且不可修改,从邻居收到的路由weight为0)
neighbor 2.2.2.2 weight 1
1)匹配路由 acl、前缀列表
ip prefix-list 1 seq 5 permit 23.1.1.0/24
2)配置route-map
route-map A permit 10
match ip address prefix-list1/调用前缀列表
set weight 2
route-map A map permit 20
3)在BGP中针对邻居调用策略
neighbor 13.1.1.3route-mapAin/in代表输入策略机,out代表输出策略机
2. 优选Local Preference较大的路由
bgp default local-preference 101
方法一:bgp default local-preference 101/修改本设备传递的所有BGP路由的本地优先级
方法二:
ip prefix-list 1 seq 5 permit 1.1.1.1/32
route-map Loc permit 10
match ip address prefix-list 1
set local-preference 102
route-map Loc permit 20
neighbor 3.3.3.3 route-map Loc in
3. 优选AS-Path长度较短的路由
使用AS-path的注意事项:
in 将AS添加到原有的AS号的左侧
out 将AS添加到原有的AS号的右侧
ip access-list standard 1
10 permit host 1.1.1.1
route-map As-PATH permit 10
match ip address 1
set as-path prepend(replace 重置) 400 (set as-path replace 1 2 3 4 )
route-map As-PATH permit 20
neigbhor 2.2.2.2 route-map As-PATH in
可以在BGP进程下使用bgp bestpath as-path ignore命令来跳过AS-Path的长度比较
4. 依次选择Origin属性为IGP、EGP、INCOMPLETE类型的路由
IGP>EGP>incomplete
ip access-list standard 1
10 permit host 11.1.1.1
route-map Ori permit 10
match ip address 1
set origin egp
route-map Ori permit 20
neighbor 78.1.1.8 route-map Ori out
5. 优选MED较小的路由
ip access-list standard 1
10 permit host 8.8.8.8
route-map MED permit 10
match ip address 1
set metric 1
route-map MED permit 20
neighbor 12.1.1.1 route-map MED out
其他MED相关配置命令(BGP进程下):
bgp always-compare-med //如果接收到来自不同AS的路由,默认情况下是不会比较其MED值的,只有
来自同一个AS的路由才会比较其MED值。使用这条命令可以使得针对来自不同AS的同一条路由,总是比较其
携带的MED值
bgp deterministic-med //使用该命令后,BGP表里的条目会以AS为组进行排列,先从同一个AS内的所有
路径中选出一条最优,然后再根据BGP选路原则进行优选。
bgp bestpath med missing-as-worst //如果从邻居收到一条BGP路由,没有携带MED值,锐捷默认将它
置为0,也可以使用这条命令将其置为4294967294(32位全1,意味着这条路由在通过MED优选时会被淘汰)
bgp bestpath med confed //只能用来比较AS路径属性中含有AS联盟序列的路由(联邦内子AS间路由)进
行MED值的比较
6. 优选EBGP路由,然后联盟EBGP路由,最后IBGP路由
7. 优选最近的IGP邻居通告的路由
8. 执行等价负载均衡
要实现负载均衡,就要实现前8条都是相同的,且AS表里的AS号都要相同。
maximum-paths ibgp(ebgp) 2
9. 优选BGP Router-ID小的Peer通告的路由
10. 优选Cluster-list长度较短的路由
11. 优选较小Peer地址路由器通告的路由
(下一跳不可达的路由不会参与选路)