在 Virtualbox Guest 上设置网络以访问主机 VPN

在 Virtualbox Guest 上设置网络以访问主机 VPN

我正在尝试进行此设置但遇到了不少麻烦。

  • 主机操作系统:Windows 8 64位
  • 客户操作系统:CentOS 6.5 64位

我正在使用主机上的 Cisco VPN 客户端连接到我想从客户操作系统访问的多个远程服务器。

目前我的主机上有以下适配器:

  • 英特尔以太网连接 I217-LM - 主机上的连接(域访问/互联网)
  • VirtualBox 仅主机以太网适配器 - VirtualBox
  • Cisco Systems VPN 适配器 64 位 Windows - VPN 使用

我的问题是,当我在 VirtualBox 中设置 Cisco VPN 和 VirtualBox 适配器之间的桥接器时,我似乎无法通过 VPN ping 通远程服务器。

对于我来说,预期的设置是能够从客户操作系统访问互联网和远程服务器,而不会失去在主机操作系统上对它们的访问权限。

答案1

为了让流量通过 VPN,我只需将适配器设置为“NAT”。

答案2

为了解决这个问题,您需要向 vbox 客户机添加 2 个 NIC:一个 NAT,它将透明地使用主机上的 VPN,另一个桥接,它将绕过 VPN 并从您的 LAN 获取 IP。然后,您需要运行自己的名称服务器,并为可通过 VPN 访问的域提供转发功能。此外,您需要为应该通过 VPN 路由的所有子网定义静态路由。确保为 VPN 的名称服务器添加一些条目。

例如你的named.conf有:

options {
    directory   "/var/cache/bind";
    auth-nxdomain no;
        version "not specified";
    listen-on { any; };
    listen-on-v6 { any; }; 

        forward only;

        forwarders {
             [IP of lan gateway];
            };

};

(局域网网关通常兼作本地 DNS)

然后你named.conf.custom-zones有:

zone "vpndomain.com" IN {
    type forward;
    forward only;
    forwarders {
    [IP of nameserver of VPN];
      };
};

然后您还需要定义一组静态路由,以使 VPN 上的所有目的地都通过 NAT IP,例如:

/sbin/ip route del default via 10.0.3.2

/sbin/ip route add default via [Ip of LAN gateway]

/sbin/route add -net x.y.0.0  netmask 255.255.0.0 gw 10.0.3.2 dev enp0s8
/sbin/route add -net a.b.0.0  netmask 255.255.0.0 gw 10.0.3.2 dev enp0s8

/sbin/route add -host [IP of nameserver in VPN] gw 10.0.3.2 dev enp0s8

(本例中enp0s8为 NAT 的 NIC,请检查ipconfig

相关内容