我有2个solaris机器,我有一个应用程序通过端口8556打开一个套接字,但由于某种原因连接不断被拒绝。
当我在第二台服务器(serverb)上运行netstat命令时:
$ netstat -an | grep 8556 127.0.0.1.8556 *.* 0 0 128000 0 LISTEN
这似乎表明端口是开放的,我甚至可以telnet到本地主机:
$ telnet 127.0.0.1 8556 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. ^]
但是当我尝试从第一台机器telnet时,连接失败:
bash-3.00# telnet serverb 8556 Trying 5.5.112.112... telnet: Unable to connect to remote host: Connection refused
我可以成功地从服务器ssh到serverb,但套接字连接被拒绝。 我已经尝试了主机名和IP地址,但没有运气。 另外,我可以telnet到端口22和23从servera到serverb,这些端口似乎是开放的,这只是端口8556的一个问题。
这里可能是什么问题?
侦听套接字绑定到127.0.0.1 ,因为您的netstat输出显示。 它没有绑定到5.5.112.112或0.0.0.0 (它充当通配符)。