首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows 10 pro作为两个接口之间的NAT (通过主机上的VPN连接路由VM通信)

Windows 10 pro作为两个接口之间的NAT (通过主机上的VPN连接路由VM通信)
EN

Server Fault用户
提问于 2018-05-10 07:37:41
回答 1查看 22.3K关注 0票数 4

我有一个windows 10 pro主机,虚拟机运行在Hyper-V。VM与主机在一个专用局域网上。我想提供互联网连接到VM,并让VM流量通过VPN连接配置在主机上。特定的软件VPN (脉冲安全)不会创建与vswitch“可桥接”的接口。

我的超VVM在192.168.4.0/24,我的windows 10主机在192.168.4.215/24上有一个虚拟接口,我想把它用作V流量的网关。我想使用windows主机上的路由表来路由192.168.4.0/24上的VM流量,以通过主机上配置的VPN接口。

我通常通过将VM放在LAN上,为同一LAN上的主机创建虚拟接口,然后将虚拟接口连接到物理接口(物理NIC或无线NIC),从而向VM提供internet连接。然而,在这种情况下,VM通信量将绕过windows主机上配置的软件VPN --我希望VM流量通过VPN路由,就像主机应用程序的流量被路由一样。

当我激活VPN连接(脉冲安全)时,主机上会出现一个新的虚拟接口,位于10.0.0.100/32,默认路由将自动添加到主机的路由表中,指向10.0.0.100作为默认网关。这有效地使windows主机及其桌面应用程序生成的所有外部通信量都通过vpn接口。

我希望将主机配置为重新路由/转发从192.168.4.0/24传入的所有IP流量到虚拟专用网接口,可能是NATed。通常,我会将我想连接的接口连接到一起,但是这个特定的vpn适配器将拒绝连接到任何东西。

在win10 pro中有实现这一目标的方法吗?还是我需要windows服务器?这也是很烦人的,因为这个特定的vpn软件在Linux中不受很好的支持。

EN

回答 1

Server Fault用户

发布于 2018-05-10 08:35:29

通过创建HyperV NAT接口,我成功地在Windows 10上实现了一些功能。我相信你会需要windows 10专业版的。Win10的家没有超V(目前为止)。

这样做的效果很好:

https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/setup-nat-network

  1. 使用上面链接中的说明使用powershell创建NAT接口。根据文档,显然只有一个这样的接口,但在我的计算机上,目前有两个活动的vNAT接口:一个是我自己创建的,另一个叫做DockerNAT,它是由DockerNAT创建的。这个步骤将给您一个新的vSwitch,并在主机上为它分配一个IP。
  2. 在Hyper-V中,编辑VM的设置以添加连接到步骤1中创建的NAT交换机接口的新网络接口。
  3. 在VM上,在NAT子网上为新的nic分配一个静态IP (例如ip addr add dev ethX 192.168.0.100/24),并将默认网关配置为vSwitch IP,例如(route add default gw 192.168.0.1 ethX)
  4. 将任何名称服务器添加到/etc/presv.conf (e.g. echo "nameserver 8.8.8.8" >> /etc/network/interfaces)

使用NAT接口的效果是,使用NAT vSwitch的任何VM产生的流量都将伪装在网关IP (我的示例中是192.168.0.1)后面,并将使用windows主机的路由表在内部重新路由。因此,当我打开VPN,这将重新路由所有的流量到虚拟专用网。

在很多情况下,我想直接从主机访问VM,NAT使得这很困难(192.168.0.1之后的一切)。与其做一堆动态端口转发(powershell也是可能的),我只是在主机和VM之间创建了另一个内部网络,而不是NAtted (例如192.168.5.0/24)。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/911578

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档