AWS单VGW场景下S2S VPN出站流量优先级设置方案咨询
AWS单VGW场景下S2S VPN出站流量优先级设置方案咨询
嗨,针对你这个场景,其实有挺直接的方法来设置出站流量的优先级,我给你分两种常用配置场景来梳理:
一、如果你的S2S VPN用的是BGP协议(大部分生产环境都是这种)
因为AWS的VGW和CGW之间默认是通过BGP交换路由的,你可以通过调整BGP的路径属性来控制选路优先级:
- 调整本地优先级(Local Preference):在你想优先使用的那条VPN对应的Customer Gateway(CGW)设备上,给BGP会话设置更高的本地优先级值(默认是100,数值越大优先级越高)。VGW收到这个属性后,会优先选择这条路径来发送出站流量到对应站点的CIDR块。
- 调整MED值(多出口鉴别器):反过来,给你作为备用的那条VPN对应的CGW设置更高的MED值(默认是0,数值越小优先级越高)。这样VGW会优先选择MED值更小的那条路径。
- 调整AS_PATH长度:如果允许的话,让备用VPN的BGP路径包含更多的AS号,AS_PATH越短的路径会被BGP优先选择。
二、如果你的S2S VPN用的是静态路由
这种情况下,你可以直接在VGW的路由表中设置静态路由的权重:
- 针对目标的本地CIDR块,添加两条静态路由:一条指向你想优先的那个CGW对应的VPN连接,设置一个较高的权重(比如10);另一条指向备用的VPN连接,设置较低的权重(比如1)。
- AWS VGW会优先选择权重更高的路由进行流量转发,当优先的VPN连接出现故障时,会自动切换到权重较低的备用路由。
验证方法
你可以在VPC内的EC2实例上执行traceroute <本地站点IP>命令,查看流量经过的隧道IP,确认是否走了优先的那条VPN;也可以登录AWS控制台查看VGW的路由表,确认权重高的路由处于活跃状态。
备注:内容来源于stack exchange,提问作者J88




