You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CloudFormation路由配置报错求助:CIDR与VPC CIDR冲突

问题分析与解决建议

报错核心原因

报错信息:目标CIDR块192.168.9.0/27等于或比该VPC的某一CIDR块更具体,此路由只能指向接口

AWS的规则是:当你在VPC路由表中配置的目标CIDR是**当前VPC自身CIDR的子集(更具体的网段)**时,这条路由的目标不能指向Transit Gateway或其他网关类资源,只能指向接口类资源(比如弹性网卡、NAT网关、VPC端点等)。

本质是:192.168.9.0/27属于当前VPC的内部网段范围,这类流量应该在VPC内部处理,AWS不允许将其转发到Transit Gateway。

排查与解决步骤

  • 核实VPC的CIDR范围
    检查RoutingDomain栈中VPC的CIDR配置,确认是否包含192.168.9.0/27(比如VPC CIDR是192.168.9.0/24,那么/27就是它的子集)。如果确实是VPC内部网段,说明这条路由的配置逻辑错误——同VPC内的子网通信无需手动配置路由,AWS会自动处理。

  • 检查路由参数的正确性
    模板中RoutingDomainPrivateRoute的默认值是192.168.9.0/24,但报错的是/27,说明实际部署时可能传入了192.168.9.0/27作为参数值。确认这条路由的用途:如果是跨VPC通信,目标CIDR应该是其他VPC的网段,而非当前VPC的子集。

  • 修正路由配置

    • 若参数传错:将RoutingDomainPrivateRoute的参数值改为正确的远程VPC CIDR(确保不是当前VPC的子集)。
    • 若逻辑错误:删除这条指向Transit Gateway的内部CIDR路由,无需手动配置同VPC内的子网通信路由。
  • 校验Transit Gateway反向路由
    同步检查Transit Gateway路由表中的TransitGatewayRouteCIDR3(默认192.168.9.0/24)配置,确保它指向正确的VPC附件,避免出现路由环路。

代码重点检查点

你的模板中RDPrivateRoute1是VPC路由表的路由资源,目标CIDR来自RoutingDomainPrivateRoute参数:

"RDPrivateRoute1": {
    "Type": "AWS::EC2::Route",
    "Properties": {
        "RouteTableId": {
            "Fn::ImportValue": {
                "Fn::Sub": "${RoutingDomainStackName}-RouteTableIDC"
            }
        },
        "DestinationCidrBlock": {
            "Ref": "RoutingDomainPrivateRoute"
        },
        "GatewayId": {
            "Fn::ImportValue": {
                "Fn::Sub": "${TransitGatewayStackName}-TransitGatewayID"
            }
        }
    }
}

重点确认DestinationCidrBlock对应的参数值是否为当前VPC的子集,若是则修改参数或删除该路由资源。

内容的提问来源于stack exchange,提问作者DrewCargle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 15:42:36