lolozen Asked: 2023-02-23 15:51:38 +0800 CST2023-02-23 15:51:38 +0800 CST 2023-02-23 15:51:38 +0800 CST 我们可以将 vpn 流量从需要的端口重定向到需要的端口吗? 772 我想连接到与我共享他的 vpn 的朋友以远程访问我的文档。在学校,大多数“不必要”的端口都是关闭的,假设他的端口是 1194。 我是否可以将我的 vpn 连接(例如,使用在我家托管的代理)从端口 443 重定向到 1194,这样连接就会从一个开放的端口出去,并被重定向到我朋友 vpn 的好端口? 我不知道我是否足够清楚所以我做了一个小架构: networking 1 个回答 Voted Best Answer user1686 2023-02-23T20:01:35+08:002023-02-23T20:01:35+08:00 从技术上讲,是的,这是可能的——代理只需要接受您与 proxy:443 的连接并与 friend:1194 建立连接,即它基本上需要做代理所做的事情。 大多数此类代理仅处理 TCP(OpenVPN 支持但不建议使用),但也应该有一些可以中继 UDP 流。但请记住,防火墙规则分别适用于 TCP 和 UDP——仅仅因为 TCP 端口 443 处于打开状态,并不意味着 UDP 端口 443 也会打开。 另一种方法是在您的家庭路由器上使用 DNAT 和 SNAT(如“NAT 发夹”或“NAT 反射”,它通常用于内部“端口转发”,但同样可以用于外部中继)。这对于 TCP 和 UDP 应该同样有效。然而,大多数家庭路由器不允许足够灵活的配置。 最后,因为这是一个 VPN,你可以设置从家里到你朋友的 VPN 的永久连接,然后设置你自己的从学校到你家服务器的 VPN,并配置路由以在两个网络之间正确转发数据包。(这就像在两个以太网 LAN 之间转发数据包一样。) 我通常会推荐第三个选项,因为它只涉及非常典型的网络配置(即没有特殊代理或任何东西)并且还可以让你使用更方便的 VPN 协议从学校连接(例如,如果你的朋友使用 OpenVPN,你可以使用 WireGuard , 或相反亦然)。
从技术上讲,是的,这是可能的——代理只需要接受您与 proxy:443 的连接并与 friend:1194 建立连接,即它基本上需要做代理所做的事情。
大多数此类代理仅处理 TCP(OpenVPN 支持但不建议使用),但也应该有一些可以中继 UDP 流。但请记住,防火墙规则分别适用于 TCP 和 UDP——仅仅因为 TCP 端口 443 处于打开状态,并不意味着 UDP 端口 443 也会打开。
另一种方法是在您的家庭路由器上使用 DNAT 和 SNAT(如“NAT 发夹”或“NAT 反射”,它通常用于内部“端口转发”,但同样可以用于外部中继)。这对于 TCP 和 UDP 应该同样有效。然而,大多数家庭路由器不允许足够灵活的配置。
最后,因为这是一个 VPN,你可以设置从家里到你朋友的 VPN 的永久连接,然后设置你自己的从学校到你家服务器的 VPN,并配置路由以在两个网络之间正确转发数据包。(这就像在两个以太网 LAN 之间转发数据包一样。)
我通常会推荐第三个选项,因为它只涉及非常典型的网络配置(即没有特殊代理或任何东西)并且还可以让你使用更方便的 VPN 协议从学校连接(例如,如果你的朋友使用 OpenVPN,你可以使用 WireGuard , 或相反亦然)。