我在Java中使用Socket编程。它在我的电脑中正常工作。但是,当我在我的计算机中运行服务器并在另一台计算机上运行客户端时,它无法运行。但是,当我在另一台计算机上运行服务器并在我的计算机中运行客户端时,它正在工作。
答案 0 :(得分:2)
在这种情况下,堆栈跟踪和一些代码片段可能非常有用。但是我可以假设以下原因:
要检查路由,请尝试从客户端ping服务器。如果ping工作,您可能有防火墙问题。如果两台计算机都在同一网络中,请检查个人防火墙配置。可能您的服务器计算机不允许“陌生人”连接到您选择的端口。
我个人通常会先尝试停止两台机器上的filrewalls。如果这有助于我再次启动它们并学习如何创建允许我的应用程序工作的防火墙规则。
答案 1 :(得分:0)
如果您无法ping服务器,可能您的服务器位于路由器后面,在这种情况下,您的路由器应配置为将您的请求从您的路由重定向到您的服务器。另一方面,您应该关闭你是防火墙。如果你的服务器是Linux服务器,在某些情况下,即使你可以ping你的服务器,你仍然无法访问你的网络服务。所以,你也应该关闭你的selinux。