无为长老的小内功——V5&V7平台版本VPN路由与VPNv4路由选路规则总结与案例分析
一、VPN路由传递过程
在BGP MPLS-VPN环境中,VPN路由使用VPNV4地址族和BGP扩展属性,通过MP-BGP协议进行传输,并以BGP路由的形式体现。
我们先来回顾一下VPN路由的传递过程:
1) CE路由表中的路由,经过PE-CE间的路由协议传递到PE相应的VPN路由表中;
2) 在PE上,VPN的路由表被附加上相应的RD值和RT属性后被导入到VPNv4路由表中;
3) PE通过MP-BGP协议将VPNv4路由传递给远端PE, 远端PE收到后,将VPNv4路由添加到自己的VPNv4路由表中;
4) 在远端PE上,VPNv4路由表中的路由与VPN的RT(import)属性进行匹配,匹配上的VPNv4路由,被导入到相应的VPN路由表中;
5) 远端PE VPN路由表中的路由,经过PE-CE间路由协议通告给远端CE,CE进行路由计算后,将这些路由加入到自己的路由表中。
综上所述,VPN路由表包括从CE学习到的路由,从VPNV4路由表中根据RT值导入的路由。VPNv4路由表包括所有通过MP-BGP学习到的私网路由表,以及本地导入的路由表,按照不同的RD值进行排列。
需要注意的是,BGP路由反射器反射的是VPNv4路由表的最佳路由。
二、BGP选路规则
VPN路由虽然也是BGP路由,但是其选路原则不同于BGP的选路规则,BGP选路规则如下:
1) 丢弃下一跳(NEXT_HOP)不可达的路由;
2) 优选首选值(Preferred-value)最大的路由;
3) 优选本地优先级(LOCAL_PREF)最高的路由;
4) 依次选择network命令生成的路由、import-route命令引入的路由、聚合路由;
5) 优选AS路径(AS_PATH)最短的路由;
6) 依次选择ORIGIN类型为IGP、EGP、Incomplete的路由;
7) 优选MED值最低的路由;
8) 依次选择从EBGP、联盟EBGP、联盟IBGP、IBGP学来的路由;
9) 优选下一跳Cost值最低的路由;
10) 优选CLUSTER_LIST长度最短的路由;
11) 优选ORIGINATOR_ID最小的路由;
12) 优选Router ID最小的路由器发布的路由;
13) 优选IP地址最小的对等体发布的路由。
三、不同于BGP的选路规则,V5平台版本的VPN路由与VPNv4路由选路规则如下(注意VPN路由与VPNv4路由选路规则的区别):