如何让服务器可通过互联网访问

如何让服务器可通过互联网访问

我用 Java 编写了一个聊天客户端和服务器。它可以工作,但据我所知,只能在本地运行。目标是让它在网络上运行。

我尝试了很多东西,如果需要的话可以详细说明。我对此完全陌生,所以我想我在这里遭受了很多“不知道我不知道什么”的困扰。

这是我目前所做的:

  • 在我的路由器上启用端口转发。
  • 确保静态本地 IP 地址。
  • 在我的网络上添加了该服务,并使用了适当的端口。
  • 添加了一条允许它通过 Windows 防火墙的入站规则,虽然我不确定是否有必要,但为了覆盖我的基础,我还添加了一条出站规则来匹配。
  • 已利用http://www.canyouseeme.org/以确保我的服务可达。

在 SO 上有一个类似的问题,但它是针对 Web 服务器的,处理

答案1

您需要确保从互联网计算机到桌面的路由路径完整。要实现这一点,您需要删除您想要公开的端口的所有端口阻止(防火墙),并确保流量从您的公共 IP 地址路由到服务器的 IP(如果服务器是私有的)。

这通常都是在您的家庭路由器/wifi/调制解调器盒上完成的,它为您的家庭网络执行网络地址转换(NAT)服务(当您的计算机与互联网通信时假装是您的内部计算机)

因此,您需要:

  • 在您的路由器中,配置防火墙以允许您的服务器使用的特定端口(例如端口 4321)。
  • 在您的路由器中,将端口 4321 配置为实际服务器的内部 IP 地址,也配置为端口 4321。
  • 在您的服务器上,确保您的防火墙允许连接到端口 4321

在您的网络内部测试您的聊天客户端是否正常工作(不涉及 NAT)。然后,通过连接到您转发的端口上的公共 IP 地址来测试您的远程客户端是否正常工作。

相关内容