我在AWS中设置了一个VPC,并且有一个安全组,允许来自VPC的CIDR块的入站连接并将其分配给我的实例。使用私有IP地址时,SSH和TCP工作正常。但是,在实例上使用公共IP地址时,连接将失败。为什么会这样?为什么安全组不知道连接是否来自VPC,即使它是针对公共IP的?
答案 0 :(得分:0)
当您使用公共IP时,流量退出VPC并返回VPC。此时,安全组会看到来自另一个公共IP的流量,而没有任何可用的VPC /安全组信息。
答案 1 :(得分:0)
当您连接到公共IP时,即使实例位于同一子网中,流量仍然通过互联网网关从VPC传输到互联网,然后返回到VPC。因此它是NAT,并且源私有IP被公共IP隐藏,并且根据您的设置,没有安全组规则允许这种流量。
顺便说一句,如果您使用公共IP连接到同一VPC中的其他主机,AWS将向您收取网络流量费用。