我创建了一个 EC2 实例并添加了所有 TCP 和 UDP 端口。ICMP 也...用端口 9000 和 80 启动了我的游戏应用程序,但都没有成功。应用程序启动,我可以从实例连接到它,但我无法从外部连接到它。
telnet instance_dns_name 9000 失败,而 telnet instance_dns_name 3389 有效。
我不知道我错过了什么。同样的问题也发生在微软的 Azure 中。可能与地区有关吗?
我创建了一个 EC2 实例并添加了所有 TCP 和 UDP 端口。ICMP 也...用端口 9000 和 80 启动了我的游戏应用程序,但都没有成功。应用程序启动,我可以从实例连接到它,但我无法从外部连接到它。
telnet instance_dns_name 9000 失败,而 telnet instance_dns_name 3389 有效。
我不知道我错过了什么。同样的问题也发生在微软的 Azure 中。可能与地区有关吗?
您是否在 AWS EC2 安全组页面中打开了端口并关闭了本地防火墙或打开了必要的端口?你可能需要两者都做。
还有一件事很重要...
如果您有Debian或Ubuntu的 Amazon EC2 实例- 默认情况下,它们没有内部防火墙 ( iptables )
另一方面,RedHat 企业版确实有防火墙,如果你想正常工作,你可以在iptables中打开正确的端口或禁用iptables - 你的选择。
我更喜欢完全禁用iptables ,因为您已经拥有与iptables具有相同角色的 Amazon 安全组。
事实证明,实例也有防火墙。当我将入站规则添加到 Windows Server 2008 实例的防火墙时,问题解决了。