使用 OpenVPN 连接 2 台虚拟机

使用 OpenVPN 连接 2 台虚拟机

我正在尝试通过 OpenVPN 连接两台 Windows Virtualbox 虚拟机。两台机器都是 Windows 10 机器,分别名为 VM-Client 和 VM-Server,但我希望它们位于不同的网络中。

目前,我可以在 VM-Server 上连接 OpenVPN,但无法在 VM-Client 上连接。尝试将 VM1-Client 连接到 VM-Server 时出现 TLS 错误。我在虚拟机和主机(也是 Windows)上都打开了端口 1194。

我还在路由器上设置了端口转发。我已经研究了这个问题两个星期,但我主要是让 VM 来宾托管 VPN 配置解决方案。我在 Virtualbox 中尝试了不同的网络配置,例如:

  • VM-Client 和 VM-Server 均具有 NAT 连接
  • VM-Client 具有桥接连接,VM-Server 具有 NAT 连接
  • VM-Client 和服务器均具有仅主机连接和 NAT 连接
  • 将两个虚拟机连接到 NAT 网络

我还尝试通过在 VM-Client 的路由表中输入新路由将流量从 VM-Client 路由到 VM-Server,但我很确定我做错了。

有人知道如何在 Virtualbox 和 OpenVPN 中成功建立此连接吗?所有提供帮助的解决方案的尝试都将不胜感激。

答案1

您可以使用多种选项来连接两台虚拟机:

  • 使用“内部网络”模式,为两个虚拟机指定相同的名称。

  • 创建一个风俗VirtualBox 的“工具”部分中的 NAT 网络。虽然所有使用默认 NAT 模式的虚拟机彼此隔离,但所有使用相同自定义 NAT 网络的虚拟机都将连接起来。

  • 将两个虚拟机连接到同一个“桥接”接口(这当然也会将它们连接到同一个物理网络)。

我希望它们位于不同的网络中

为此,你通常需要一个路由器实际在两个网络之间转发数据包。

“路由器”可以是运行某些具有路由功能的操作系统(例如 Linux)的第三台虚拟机,也可以是主机操作系统(虚拟机通过“仅主机”接口与其通信)。VM1-客户端的路由表VM3-Server 需要引用 VM2-Router 作为网关。

VM1-Client <==[internal network A]==> VM2-Router <==[internal network 2]==> VM3-Server

相关内容