我的远程服务器上有一个应用程序,只能通过 localhost:3000 访问(无法通过互联网访问)
当我使用带隧道的 Putty 通过 SSH 连接到远程服务器L"*:3000" localhost:3000
并local ports accept connections from other hosts
选中复选框时,我可以通过转到本地计算机来访问该应用程序。我可以通过连接到同一 wifi 的平板电脑http://127.0.0.1:3000
转到(我的本地计算机内部网络地址)来进一步访问该应用程序。http://192.168.0.9:3000
我已经在远程服务器上设置了 OpenVPN,我可以通过 访问该应用程序,http://10.8.0.1:3000
但我需要能够从本地网络上的另一台设备(平板电脑)访问它。我该如何路由,127.0.0.1
以便10.8.0.1
我可以通过 访问 从我的平板电脑访问该应用程序,http://192.168.0.9:3000
就像我使用 putty 时所做的那样?
答案1
如果是 Android 平板电脑,并且至少运行 ICS,请通过 Google Play 安装 OpenVPN。我还没有尝试过,但是这看起来像是 iPad 的 OpenVPN 客户端。如果是 Surface RT,请尝试pptp
在服务器上安装和配置,看看是否可以通过 Surface 上的 PPTP VPN 进行连接(不确定它是否支持)。
否则,您需要代理它。这意味着在您的 PC 上设置 VPN 连接,并在您的 PC 上运行一个程序,该程序侦听本地网络上的套接字(IP + 端口),并将 UDP 转发到 VPN 上的套接字。我认为您可以使用顺便为此目的。然后,您将输入 PC 的本地 IP 和 UDP 端口,以便在平板电脑上执行任何操作。
答案2
如果您建立了 VPN 连接,并且正确设置了网络,那么您将像在本地网络上一样访问系统。您根本不需要端口转发或代理。VPN 应该使 VPN 端点表现得像在远程网络上一样。
如果这样不行,那么你的 VPN 可能设置错误。获取正确的路由可能有点棘手。