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

AWS子网路由表是否仅作用于出站流量?入站流量如何路由?

根据AWS官方文档定义:

若子网关联的路由表包含指向互联网网关(Internet Gateway)的路由,该子网即为公有子网(public subnet)。

关于VPC公有子网路由与入站流量规则的解答

路由表作用范围纠正

你认为子网路由表仅对所属子网出站流量生效的认知不准确。
子网关联的路由表是VPC路由器转发该子网所有进出流量的核心依据,入站、出站流量的下一跳转发都要遵循路由表的最长前缀匹配规则。你会产生“仅作用于出站”的错觉,本质是因为公有子网路由表中指向互联网网关(IGW)的0.0.0.0/0路由,同时承担了两个转发职责:

  • 转发子网内实例发往公网的出站流量到IGW
  • 转发从IGW进入VPC、目标地址是该子网内实例的入站流量到对应实例

你推测的「入站流量默认通过IGW的路由表放行」是错误认知:IGW本身没有独立可配置的路由表,它只做两个操作:一是完成实例私网IP和公网IP的双向NAT转换,二是严格按照子网关联的路由表转发流量,本身没有额外的放行/拦截逻辑。

子网入站流量的生效规则

公网入站流量能到达子网内的实例,必须同时满足以下所有条件:

  • 实例所在子网为公有子网,关联路由表存在指向IGW的0.0.0.0/0路由,且实例已经绑定公网IP(弹性公网IP或子网自动分配的公网IP)
  • 子网关联的网络ACL为无状态规则,需要同时放行对应流量的入方向、以及回包的出方向权限
  • 实例绑定的安全组为有状态规则,入方向放行对应流量的访问权限即可,回包会自动放行无需额外配置
  • 实例操作系统内部的本地防火墙(如Linux的firewalld/iptables、Windows Defender防火墙)没有拦截对应流量

入站流量连通性验证方式

可以按以下逻辑逐一排查验证:

  • 先确认基础网络配置:实例有公网IP、所属子网路由表配置了指向IGW的全公网段路由
  • 依次检查安全组、网络ACL规则,放行测试用的协议和端口:比如测试ping就放行ICMP协议,测试Web服务就放行TCP 80/443端口,测试阶段源地址可以临时设置为0.0.0.0/0,验证完成后及时收紧权限
  • 检查实例内部系统防火墙是否放行对应流量
  • 从公网侧发起访问测试:
    • 测试ICMP连通性直接执行ping <实例公网IP>
    • 测试TCP端口连通性可以用telnet <实例公网IP> <端口号>或nc -zv <实例公网IP> <端口号>

ping命令的传输要求

ping命令完全依赖双向数据包传输才能正常运行。
它基于ICMP协议实现:源端向目标发送ICMP Echo Request(类型8)请求报文,目标端收到请求后必须返回ICMP Echo Reply(类型0)应答报文,源端成功收到应答报文才会判定连通成功、输出延迟、丢包率等统计信息。任意一个方向的报文被路由、访问控制规则或系统防火墙拦截,ping都会失败。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.03 07:45:39