连接到远程网络(XFinity 路由器)上的 Raspberry Pi

Connecting to Raspberry Pi on Remote Network (XFinity Router)

我在我的家庭办公室设置了一个 Raspberry Pi 和一个 Linux OS 并安装了 Apache (PHP/MySQL)。一切正常,我已经能够通过 SSH 从我的计算机成功连接到我家中的同一网络。

我在这里看到过许多类似的问题,但 none 可以概述我正在尝试做的事情。我有一个 XFinity 路由器,可以在本地使用 IP 10.0.0.1 访问它的设置。我已经阅读了为 Raspberry Pi 设置的端口转发,但现在我停留在设置的下一步以进行设置,以便我可以远程连接到它(从外部网络我家的)。我希望使用它来托管基于网络的 PHP 脚本,我们可以从任何网络浏览器 运行 以及能够从任何互联网连接通过 SSH 登录。

如果这与这里的其他问题类似,我很抱歉,但 XFinity 界面似乎让我很困扰,而且它让我很难理解端口转发以及如何正确设置它。

感谢您的帮助!

你需要做三件事:

  • 确保您的 Raspberry Pi 每次在您的 LAN 上获得相同的 IP 地址。这可以通过使用 Pi 的 MAC(以太网硬件地址)为 DHCP 预留配置路由器来完成,如果它支持的话。要获取 Pi 的 MAC,您可以键入 ipconfig eth0,或者您可以使用 Advanced IP Scanner for Windows,或我自己的 Pi Finder for Mac。 (或者,您可以将 Pi 设置为使用静态 IP 地址。)

  • 将路由器中的端口 22 (SSH) 转发到您选择的内部 IP 地址。 (如果您的路由器支持将不同的外部地址转发到内部端口 22,我建议这样做以提高安全性。)

  • 获取一致的外部IP地址或名称,这样您就可以在外面找到您的家庭网络。如果您的 ISP 没有提供静态 IP 地址,那么您将需要动态 DNS 服务,例如 Dyn.com、no-ip.com 和 Namecheap 提供的服务。您需要配置您的路由器来更新服务,并非所有路由器都支持所有动态 DNS 服务(或任何)。 (或者,您可以在 Raspberry Pi 或家庭网络上的其他计算机上安装动态 DNS 更新程序客户端,但这可能容易也可能不容易。)

我无法就如何配置您的特定路由器提供具体建议,但这三个步骤通常是执行您想要的操作所必需的,剩下的就是弄清楚您的路由器需要它的具体细节。