无法通过私有 IP 访问同一 VPC 中的 EC2 实例

Not able to access EC2 instance in same VPC via private IP

我在同一子网中有 2 个 EC2 实例(一个 window 和一个 linux)。我正在尝试通过私有 IP 从另一个实例访问一个实例,但我无法这样做。

在安全组中,两个实例属于同一个安全组,安全组允许来自同一个安全组的所有流量。

我什至无法使用私有 IP 地址从另一个实例 ping 一个实例。

任何指示这里可能是错误的。

这可能是启用 Windows 防火墙的结果,默认设置会阻止 ping 访问(除其他外)。

禁用它应该可以 inbound/outbound 访问 ping 工作。这是一项临时措施,不应视为永久解决方法。

您应该在 Windows 防火墙中启用白名单,以允许您希望入站或出站的端口具有网络访问权限 to/from 网络中的其他资源。

this link 中提供了更多信息。

默认情况下,Windows 防火墙将拒绝所有入站请求(包括 ping),但防火墙还包含一个例外列表(否则它会阻止一切!)。这些例外是一组规则,描述了开箱即用应允许的连接。

要允许任何其他连接,您只需向防火墙添加一个新规则。 Windows 防火墙 GUI 中有一个向导用于查看和创建规则,但我发现使用像这样的 PowerShell 单行代码更容易允许 ping:

New-NetFirewallRule -DisplayName "Inbound LAN Ping" -Direction Inbound -Protocol ICMPv4 -IcmpType 8 -RemoteAddress 192.168.1.0/24 -Action Allow

以上将允许 192.198.1.1 ... 192.168.1.255 之间的任何 IP 向您的 Windows 主机发送 ping 请求(所有其他 RemoteAddress 仍将被忽略)。我在这里假设你的 Linux 机器的 IP 是 192.168.1.1 并且你的 Windows 机器的 IP 是 192.168.1.123.

根据经验,您应该只打开最少数量的端口,在尽可能少的 IP/IP 范围内。