Java Socket连接Google Cloud Ubuntu服务器时出现Connection timed out异常的排查求助
Java Socket连接Google Cloud Ubuntu服务器时出现Connection timed out异常的排查求助
大家好,我遇到了一个Java Socket连接的问题,想请各位帮忙排查一下。
我开发了一套基于Java Socket的服务端和客户端程序,在本地localhost环境下运行时,两者能正常建立连接并通信,完全没有问题。但当我把服务端部署到Google Cloud的Ubuntu服务器上之后,客户端调用new Socket(ip, port)时就抛出了java.net.ConnectException: Connection timed out: connect异常,我使用的端口是18934。
为了解决这个问题,我已经尝试过调整服务器的防火墙和iptables规则,执行了以下命令:
sudo iptables -A INPUT -p tcp --dport 18934 -j ACCEPTsudo ufw allow 18934
另外,我用ping <服务器IP>测试网络连通性时,服务器能够正常回复,说明基础网络是通的,但Java客户端就是无法建立Socket连接,一直报超时错误。
我猜测问题可能出在Ubuntu服务器的配置上,或者Google Cloud有什么我没注意到的安全/网络设置?麻烦各位大佬给点排查思路,谢谢大家!
备注:内容来源于stack exchange,提问作者Drownek
相关产品推荐
相关产品推荐

