![我可以通过运行在远程 VPS 上的 VPN 从笔记本电脑连接到家里的服务器吗?](https://linux22.com/image/780763/%E6%88%91%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E8%BF%90%E8%A1%8C%E5%9C%A8%E8%BF%9C%E7%A8%8B%20VPS%20%E4%B8%8A%E7%9A%84%20VPN%20%E4%BB%8E%E7%AC%94%E8%AE%B0%E6%9C%AC%E7%94%B5%E8%84%91%E8%BF%9E%E6%8E%A5%E5%88%B0%E5%AE%B6%E9%87%8C%E7%9A%84%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%90%97%EF%BC%9F.png)
在我目前的设置中,我在家里运行着一台服务器,我的笔记本电脑可以通过 SSH 远程连接到该服务器(例如从星巴克)。为此,我需要从我的 ISP 获取一个静态 IP(因为他们使用 CGNAT),然后我家里的路由器将一个端口转发到我的服务器。
我很快就要搬家了,在新地址无法访问路由器,可能也没有静态 IP。但是,我仍然希望能够远程访问也将位于这个新地址的服务器。
根据我对网络的有限了解,我的计划如下:首先,我将租用一台 VPS,并在这台 VPS 上运行我自己的 wireguard VPN。然后,我可以将我的笔记本电脑(来自星巴克)和家庭服务器(连接到某个路由器,也可能位于 CGNAT 后面)连接到这台 VPS 上运行的 VPN。
这会起作用吗?有什么事情会使事情变得复杂吗?
答案1
是的,您可以在 VPS 上安装 VPN 并使用它来连接到您的家庭网络。
这种 VPN 的架构被称为hub-and-spoke
WireGuard,可以轻松完成。
服务器上的设置与经典教程相同。也就是说,你必须告诉哪些对等点已连接到服务器。
对于客户端来说,设置并不难,因为您只需更改AllowedIPs
配置文件部分中的网络掩码。
默认值为,/32
表示只允许特定的 IP 地址连接。
如果将其更改为,/24
则意味着允许 IP 地址以 1 到 254 结尾的子网上的所有主机连接。
假设 VPN 子网为192.168.100.0/24
且服务器具有 VPN 地址,192.168.100.1
那么您必须将allowedIPs
所有客户端上的 从更改192.168.100.1/32
为192.168.100.0/24
。