1

我正在使用图库提供的 Azure 虚拟机(Windows Server 2008 R2 映像),并使用门户创建了公共端口和私有端口。我远程登录了虚拟机,并在虚拟机内运行了一个 TCP 服务器应用程序(TCP 服务器绑定到虚拟机的专用端口)。我面临的问题是我无法通过公共 IP 和端口(来自外部机器)连接它。我在 VM 的防火墙中创建了一个入站规则,我在其中启用了与 VM 的专用端口的连接。我尝试重新创建 VM,以及新端口。问题仍然存在。我观察到的另一件事是,我的 TCP 客户端能够连接到 VM 的 RemoteDesktop 端口以及 PowerShell 端口。但没有连接到我通过门户创建的端口。请提出什么问题?

注意:我还观察到一些奇怪的行为。我在防火墙的入站规则中为我的 TCP 服务器应用程序启用了所有端口,发现一些未知 IP(类似于 azure 内部 IP)正在连接到我的服务器。为什么会这样?

4

1 回答 1

1

我想了解您如何尝试连接虚拟机,使用 RDP 或尝试测试连接,例如使用端口 Ping。

默认情况下配置 RDP 和 Powershell 的端点。因此,如果您尝试使用远程桌面连接,您可以使用 MSTSC 从 Run 直接连接到 VM,并使用以下格式 xx.xx.xx.xx:3389 提供 VM 的 IP,后跟端口号

但是,如果您想测试与 VM 的连接,我建议您使用端口 Ping 而不是 ICMP ping,因为 ICMP 流量被 Azure 负载均衡器阻止并且 ping 请求超时。虽然 Ping.exe 使用 ICMP,但其他工具(例如PsPingNmap或 )Telnet允许您测试与特定 TCP 端口的连接。

另一方面,在创建 VM 后,您可以根据需要额外添加端点。您还可以通过为端点的网络访问控制列表 (ACL) 配置规则来管理到公共端口的传入流量。

  • 虚拟机在内部使用专用端口来侦听该端点上的流量。
  • Azure 负载均衡器使用公共端口从
    外部资源与虚拟机通信。创建端点后,您可以使用网络访问控制列表 (ACL) 定义有助于隔离和控制公共端口上的传入流量的规则。有关详细信息,请参阅关于网络访问控制列表。
于 2015-01-07T12:38:07.770 回答