如何使用 java 套接字在不同网络之间进行通信?



我的客户端和服务器都有java程序,它们在同一个wifi网络中工作正常。但是我需要客户端能够从开放的互联网连接到服务器。在这样的问题中

如何借助通过不同wifi连接到互联网的IP地址连接客户端和服务器?

https://coderanch.com/t/667020/java/Socket-connections-networks

解决方案是手动将端口从路由器重新路由到服务器,使其对来自外部的连接开放。有没有办法只用服务器上的软件来做到这一点?我不明白为什么需要手动专用端口,因为我安装的计算机上的其他应用程序(如游戏(当然会与它们的服务器来回通信,而无需我手动进入和翻转开关。

如何仅通过服务器上运行的软件来实现此目的?

如果没有其他方法,其他应用程序如何在不手动更改路由器的情况下公开通信,并且通过我的路由器打开端口是否会导致安全问题?

您需要更改应用程序的体系结构。目前,您的服务器位于防火墙后面,该防火墙阻止了来自互联网的连接 - 您想要这个!如果您允许来自互联网的所有流量不分青红皂白地连接到您的服务器,它将非常容易受到攻击。

其他应用程序在没有端口转发的情况下安装和通信,因为开发人员在 Internet 上提供服务器来充当客户端之间的代理。客户端连接到互联网,这在家庭网络上通常不会被阻止。内部连接出去被认为比进来的连接危害小。

相关内容

  • 没有找到相关文章

最新更新