我正在尝试进行此设置但遇到了不少麻烦。
- 主机操作系统: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
)