将流量从一个 VPS 转发到另一个 VPS,以利用 GCP 的网络和快速连接

将流量从一个 VPS 转发到另一个 VPS,以利用 GCP 的网络和快速连接

我目前有一个 VPN 托管在很远的 VPS 上。因此,我的连接速度很慢。我假设,如果我有一个离我很近的 VPS,我可以连接到更近的 VPS,并使用它通过云提供商网络进行隧道传输,从而减少延迟。

我该如何配置两台服务器(服务器 A 和服务器 B),以便使用 OpenVPN 连接到服务器 B,并将所有流量转发到服务器 B?我的公网 IP 是服务器 A 的公网 IP 地址还是服务器 B 的公网 IP 地址?

我在 Google 云端平台上。

以下是一幅绘图:

绘画形式的理念

答案1

它可能会减少延迟有些如果内部网络比互联网具有更好的路由,但大多数延迟可能来自物理距离,因此无论您通过什么网络访问,遥远的虚拟机都不会感觉像是本地的。

我该如何配置两台服务器(服务器 A 和服务器 B),以便我使用 OpenVPN 连接到服务器 B,并将所有流量转发到服务器 B?

  1. 首先在服务器之间设置另一个 VPN/隧道。它不需要是同一类型;您最好选择静态 WireGuard 或 GRE 隧道而不是 OpenVPN。(如果将 WireGuard 与 wg-quick 一起使用,请指定自定义 Table= 选项,这将有助于以后的配置。)

  2. 配置 IP 路由,使得服务器 B 能够通过 A 访问您的 OpenVPN 客户端。(通过 A 在 B 上添加静态路由应该足够了;位于中间的 A 已经有双向路由。)

  3. 在 A 上,使用“策略路由”,以便数据包OpenVPN 接口(或 IP 范围)选择不同的路由表,该路由表将所有内容通过 AB 隧道而不是常规默认网关进行引导。

  4. 在 B 上,没有什么特别的,只是一般的 IP 转发。确保您的 NAT(MASQUERADE)配置仅适用于 B(网络边界),而不适用于 A。

我的公网 IP 是服务器 A 的公网 IP 地址还是服务器 B 的公网 IP 地址?

实际上,B 是最有用的选择。

从技术上讲,它也可能是 A,但平台可能会阻止 B 发起以 A 为源的流量,当然返回流量将直接通过互联网流向 A,而不是通过 B 进入 GCP,这将使练习的意义丧失一半。

相关内容