我想知道是否有办法通过互联网在客户端和服务器之间建立连接,并让他们两个程序化设置所有需要的路由器/防火墙配置更改,以打开所需的外部端口进行通信。
假设服务器和客户端都已知IP地址,并且在此示例中不需要DNS来查找IP地址。如何让服务器在启动时配置通过防火墙的访问权限并告诉路由器如何将正确的通信路由到服务器。我认为客户端可能不需要这样的东西,因为它只需要知道服务器的外部IP地址和端口号。如果我对自己的假设有误,请告诉我。
示例如果我有两个房子房子(A)有一个服务器,房子(B)有一个客户端,两个站点都知道其他房屋外部IP地址是什么,并知道他们将使用什么端口Java应用程序如何做所有配置或至少尽可能多地说windows,mac,ubuntu。这个想法是服务器的用户和客户端不应该做一堆防火墙/路由器配置来运行应用程序。如果在示例中它显示了在终止服务器时如何释放连接,那也很好。关闭java服务器的示例应该关闭防火墙和路由器上的端口设置。安全和干净的房子。
答案 0 :(得分:1)
没有简单的方法,因为它取决于操作系统和机器上运行的许多可能的防火墙应用程序。另外,如果您的应用程序崩溃,您将永远不会回放原始参数,这在谈论安全性时可能会出现问题。
您应尝试使用标准通信模板,而不是尝试设置自定义配置/ http如http。这将使您的应用程序运行的概率很高,而无需在任何地方进行其他配置(因为如果您不允许使用http端口,几乎没有互联网连接点。)