VPC A与同CIDR的VPC C对等连接失败,求故障排查方案
问题分析与解决方案
核心故障原因
CIDR重叠引发路由冲突
VPC B和VPC C的原始CIDR均为10.0.0.0/16,而VPC A的路由表中已将10.0.0.0/16指向pcx1(与VPC B的对等连接)。AWS不允许同一目标CIDR在路由表中设置多个下一跳,导致VPC A无法通过pcx2访问VPC C的原始10.0.0.0/16网段。VPC C的EC2实例可能未部署在新增CIDR网段
你为VPC C附加了10.1.0.0/16,但如果EC2实例仍处于原10.0.0.0/16子网中,VPC A访问该实例时,流量会按路由规则被导向VPC B,而非VPC C。
修复步骤
步骤1:调整VPC C的实例部署(若需保留原CIDR)
- 将VPC C中需要与VPC A通信的EC2实例迁移到
10.1.0.0/16网段的子网内; - 确认这些子网关联的路由表已配置指向pcx2的
192.168.0.0/22路由(你已完成此配置)。
步骤2:验证对等连接状态
- 检查pcx2的状态是否为已接受:在AWS控制台的VPC对等连接页面,确认VPC C侧已接受该连接请求。
步骤3:确认安全组与本地路由
- 检查VPC C的路由表是否包含AWS自动添加的本地路由(目标为
10.0.0.0/16和10.1.0.0/16,下一跳为本地),确保实例能在VPC内部正常通信; - 再次核对安全组规则:确认VPC C实例的安全组确实允许来自
192.168.0.0/22的ICMP-IPv4流量。
替代方案(若需保留VPC C原CIDR与VPC A通信)
由于VPC B和VPC C的CIDR重叠,无法在VPC A中通过路由区分两者的10.0.0.0/16网段,可选择:
- 为VPC B更换非重叠的CIDR(需重新部署实例或迁移子网,操作复杂度较高);
- 使用AWS Transit Gateway替代VPC对等连接,通过中转网关实现VPC A与多个重叠CIDR的VPC通信(更适合多VPC场景)。
验证方法
- 在VPC A的EC2实例上执行
ping <VPC C实例的10.1.0.0/16网段IP>,检查连通性; - 在VPC A实例上执行
ip route命令,确认10.1.0.0/16的下一跳为pcx2; - 查看VPC C实例的安全组入站规则,确认
192.168.0.0/22的ICMP流量已被允许。
内容的提问来源于stack exchange,提问作者unemployedTeeth
相关产品推荐
相关产品推荐

