首页/云/云网络与负载均衡速查/自定义路由表与交换机关联

自定义路由表与交换机关联

不同子网需要不同出口时(例如生产子网走 NAT 出公网、DMZ 子网走自建防火墙),用自定义路由表区分:创建路由表、添加路由条目、把交换机关联过去。切换关联会立即改变该子网的流量走向。

自定义路由表干什么

VPC 创建时会自带一张系统路由表,所有交换机默认关联它。当不同子网需要不同出口时——例如生产子网走 NAT 网关出公网、DMZ 子网走自建防火墙、灰度子网走独立链路——就要用自定义路由表区分:先创建路由表,再添加路由条目,最后把交换机关联过去。关联动作立即生效,会改变该子网全部的流量走向。

创建与关联

创建与关联
# 阿里云 CLI 示例
aliyun vpc CreateRouteTable --RegionId cn-hangzhou \
  --VpcId vpc-bp1xxxxxxxx --RouteTableName rt-dmz
aliyun vpc CreateRouteEntry --RegionId cn-hangzhou \
  --RouteTableId vtb-bp1xxxxxxxx --DestinationCidrBlock 0.0.0.0/0 \
  --NextHopType NatGateway --NextHopId ngw-bp1xxxxxxxx
aliyun vpc AssociateRouteTable --RegionId cn-hangzhou \
  --RouteTableId vtb-bp1xxxxxxxx --VSwitchId vsw-bp1xxxxxxxx

基本信息

创建顺序先建路由表 → 添加条目 → 关联交换机
生效时机关联后立即生效,无需重启实例
回退方式把交换机重新关联回系统路由表即可还原
典型场景多出口分流、安全区分层、灰度环境独立出口

典型使用场景

  • 生产与测试子网分别走不同 NAT 网关,隔离出口带宽并便于分开计费
  • DMZ 子网的出网流量强制经过自建防火墙做检测与审计
  • 灰度环境使用独立出口,避免灰度链路问题影响到线上主链路
  • 按业务线拆分出口,便于按子网统计流量、定位异常来源
  • 内网访问走专线、公网访问走 NAT,用不同路由条目区分两类出口

路由匹配怎么走

同一条流量可能命中多条路由,云上通常按最长前缀匹配:掩码越长的条目优先级越高,因此 10.10.1.0/24 会盖住 10.10.0.0/16,默认路由 0.0.0.0/0 作为兜底最后才被选中。理解这一点,可以在不删除旧条目的前提下用更细的网段做临时分流;反过来,如果发现流量走向和预期不符,先按掩码长度把所有候选条目列出来逐一比对。

路由条目读法

字段含义注意点
目标网段DestinationCidrBlock0.0.0.0/0 表示默认路由
下一跳类型NextHopTypeNAT 网关、实例、对等连接等
下一跳实例NextHopId必须真实存在且可用
路由优先级掩码最长匹配优先同掩码冲突时需人工取舍
切换关联前先在新路由表里补齐业务所需条目,避免切换瞬间丢路由。
自定义路由表不会自动继承系统路由表的条目,网关路由、对等连接路由等都要在新表里重新加。变更后用实例内的 ip route 与平台侧路由列表双向核对,确认出口一致。

易错点

  • 新建的自定义路由表没有默认路由,切换后子网实例立刻断网
  • 关联操作即时生效,在业务高峰执行会造成短暂断流
  • 路由条目下一跳资源被删除后条目残留,形成流量黑洞
  • 同一子网被多条路由覆盖却未理清掩码优先级,实际出口与预期不符

数据来源与参考

  • 阿里云 VPC 自定义路由表文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌