我到处都读到(包括官方文档),无法从互联网访问私有子网中的 EC2 实例,即使它具有公共 IP。
假设我有一个
10.0.0.0/16
VPC,其中包含 10.0.0.0/20
公有子网和 10.0.0.128/20
私有子网,其中包含具有公有 IP 的 EC2 实例。
据我所知,在此配置中,发送到 EC2 实例的数据包将:
10.0.0.1
)10.0.0.0/16
的数据包应转发到本地网络但是,EC2 实例无法回复该数据包(例如,为了建立 TCP 连接),因为它没有到 Internet 网关或 NAT 实例的路由。
因此,根据我的说法,“即使具有公共 IP,也无法从互联网访问私有子网中的 EC2 实例”这一说法并不正确,它实际上是可访问的(如果网络 ACL 和安全组允许)流量),但它无法响应任何请求。
我的推理正确吗?
在评论中,建议我测试并回答我自己的问题:
sudo nc -ul 53
该文本出现在 EC2 实例上,这意味着正如我所想,“无法从互联网访问私有子网中的 EC2 实例”这句话是部分正确。如果我们想将数据发送到此配置中的 EC2 实例: