家庭路由器难以远程访问

家庭路由器难以远程访问

一两个星期以来,我一直在尝试调试这个问题,但还是没能找出问题所在,或者我是否可以做些什么来解决它。

我有一个家用 Xfinity 路由器,它为 SSH 和 Minecraft 服务器提供端口转发功能,两者都托管在运行 Arch Linux 的台式计算机上。尝试连接到桌面的远程计算机只能间歇性地这样做。以下是我收集的事实:

  1. 远程机器始终可以 ping 我的路由器,从未失败过。
  2. 所有机器都曾无法通过端口转发连接到我的桌面(SSH 和 Minecraft 均是如此)。其中一些机器的 IP 地址已被我的路由器屏蔽,因此我将它们列入了白名单。其他机器根本没有显示被路由器屏蔽,但仍然经常无法连接。
  3. 在远程机器中,有些运行 Arch Linux,有些运行 OSX,还有一台运行 Windows。据我所知,问题似乎不是操作系统或防火墙的问题。
  4. 几台远程机器位于同一个 NAT(另一台家庭 Xfinity 路由器)后面。我最初必须将它们的 IP 地址列入白名单,之后它们有时只能连接到 Minecraft 服务器,然后经过几次成功/失败的尝试后,它们就能够持续连接。重新启动路由器似乎有时可以帮助它们成功,但并非每次都有效。
  5. 即使某些远程计算机在特定时间能够连接,其他计算机仍然无法连接(即使这些计算机过去曾成功连接过)。但是,如果某个 NAT 后面的一台计算机能够连接,则该 NAT 后面的其他计算机似乎也能够连接。
  6. 如果一台机器无法连接到 Minecraft 服务器,它似乎也无法连接到 SSH 服务器(但仍可以成功 ping 路由器)。我只用两台位于不同 NAT 后面的远程机器测试过这个问题。

根据上述事实,似乎路由器之间发生了一些事情,导致连接无法进行。但由于 (1),这似乎与可发现性无关,而可能是基于特定端口连接尝试或 IP 信誉 (?) 的问题。目前,我最好的选择似乎是将 Minecraft 服务器托管在 Digital Ocean 服务器或其他服务器上,因为我不确定除了不断重启路由器/希望它能正常工作直到他们能够可靠地连接(到目前为止,只有一家家庭真正成功了)之外,我还能做些什么来让新用户可靠地使用它。

有谁知道这里发生了什么,将服务器移动到托管服务器是否可以解决这个问题,或者我如何在不移动任何东西的情况下让它工作?

相关内容