我到处都读到(包括官方文档),无法从互联网访问私有子网中的 EC2 实例,即使它具有公共 IP。
假设我有一个10.0.0.0/16
具有10.0.0.0/20
公有子网和10.0.0.128/20
私有子网的 VPC,其中包含具有公有 IP 的 EC2 实例。
据我所知,在此配置中,发送到 EC2 实例的数据包将:
- 由 VPC 的互联网网关接收,该网关将执行 NAT 并通过其专用网络接口发出该数据包(我猜
10.0.0.1
) - 然后,由于规则规定目标数据包
10.0.0.0/16
应转发到本地网络,因此该数据包可以路由到 EC2 实例
但是,EC2 实例无法回复该数据包(例如,为了建立 TCP 连接),因为它没有到 Internet 网关或 NAT 实例的路由。
因此,根据我的说法,“即使具有公共 IP,也无法从互联网访问私有子网中的 EC2 实例”这一说法是不正确的,它实际上是可以访问的(如果网络 ACL 和安全组允许流量)但它无法响应任何请求。
我的推理正确吗?