网上插座

时间:2011-09-21 15:16:36

标签: java sockets

我正在用Java实现一个Socket程序,并意识到Socket和ServerSocket类只能在我的LocalNetwork中使用。我需要做什么,以便远程PC(不同的路由器)可以连接到我的PC(服务器)?我应该使用什么API?

3 个答案:

答案 0 :(得分:5)

SocketServerSocket没有任何内容限制它们到本地网络。防火墙等可能存在问题,但类本身不会产生任何额外的约束。

答案 1 :(得分:1)

没有限制,它也可以在互联网上使用,理想情况下你要做的是确保防火墙允许你连接到套接字监听的端口,你可以通过你的端口创建一个端口转发DMZ或NAT用于过滤和转发请求到监听机器。

答案 2 :(得分:1)

  

“Socket和ServerSocket类只能在我的LocalNetwork中使用。”

你从哪里得到的?

无论如何,Socket和ServerSocket根本不限于本地网络。这不是本地的:

Socket s = new Socket("www.java2s.com", 80);

但是,如果您的客户端和服务器位于不同的网络上,则必须设置正确的路由(即配置路由器的DMZ等)。