我在Amazon (Fedora )上运行一个简单的WebSocket服务器。我使用EC2授权打开了相关端口,并检查它是否已打开。Iptables绝对不会运行。但是,我无法从EC2外部连接到端口。
我尝试了以下方法(我的服务器运行在端口7000上):
telnet ec2-public-dns.xx.xx.xx.amazon.com 7000 (来自EC2:连接良好)
nmap localhost(输出包括行: 7000/tcp打开的afs3-文件服务器)
telnet ec2-public-dns.xx.xx.xx.amazon.com 7000 (这一次从我的本地机器:我得到“连接拒绝:无法连接到远程主机”)
奇怪的是:如果我在端口7000上启动Nginx,那么它就能工作,并且可以从外部EC2连接!WebSocket服务器在端口80上出现故障,Nginx在该端口运行良好。
对我来说,这意味着WebSocket服务器出现了问题,但我可以从EC2内部成功地连接到它。(它可以在不同的VPS帐户上正常工作)。
如何进一步调试?如果有人能阻止我扯掉头发,我会非常感激的:)
发布于 2010-04-27 07:02:34
您的服务是否可能只在回送接口上侦听?
在你的亚马逊机箱上运行
netstat -lanp|grep LISTEN|grep 7000 你希望有这样的东西:
tcp 0 0 0.0.0.0:7000 0.0.0.0:* LISTEN 2216/abc而不是
tcp 0 0 127.0.0.1:7000 0.0.0.0:* LISTEN 13798/abchttps://serverfault.com/questions/136125
复制相似问题