我目前正在设置一台将要共置的 Windows Server 2012 机器。它将有大约 10 台虚拟机,允许各种用户连接并在家中运行它们。大多数虚拟机将是 Windows 8,除非它们是用于基本测试目的。如果需要,我确实可以创建第二台 Windows Sever 2012 机器作为虚拟机。
物理机将直接连接到主机托管服务,因此我将拥有一个特定的静态 IP,我需要将其用于物理机。我是这种网络的新手,我不知道如何设置 a) 具有路由功能的物理机或 b) 设置虚拟机作为路由器。在这两种情况下,我都无法将自己的物理路由器放在该位置,因此需要能够使用虚拟路由器将流量路由到虚拟机。
由于我有一个公共静态 IP,我假设它需要转到物理机,然后通过 RRAS 之类的东西,我会以某种方式创建相当于路由器的东西,它可以 a) 通过 DHCP 为虚拟机分配 IP 或 b) 路由到已分配给每个虚拟机的静态 IP。所有虚拟机都需要能够访问互联网。
我想我的问题是,通过我所描述的内容,我是否可以使用 Windows Server 2012 内置的某些功能来实现我想要的功能,即 1 个物理 NIC、1 个公共静态 IP、1 个物理服务器和 Hyper-V 上的多个 VM?如果可以,有谁知道如何设置它,因为我一直在寻找相关信息,但在大多数情况下,我读到的内容都假设存在一些物理路由器,因此我目前陷入困境。
更新: 我的老板告诉我,出于各种原因,他想把所有东西都放在 Windows 环境中。我读过关于使用带 RRAS 的环回适配器作为解决这个问题的可能方法的文章?有谁知道这是否可行,如果可行,如何操作?
感谢您提供的任何帮助。
答案1
我建议你在虚拟机中运行 pfSense 作为路由器。它相当容易使用,而且免费。
但本质上,您的设置将如下所示:
带有一个 NIC 的物理盒 +---------------------------------------------------------------------+ +------------+ | | | 互联网 |{--}| {Lan Bridge} [路由器] {-VMLAN-} [虚拟机] | +------------+ | | +---------------------------------------------------------------------+
使用这种方法,您的所有虚拟机都拥有一个私有子网(例如 192.168.34.0/24),您的路由器通过物理接口桥接到 World,并具有到 VM LAN 网络的虚拟链路。然后,您的物理系统不再使用其物理接口直接连接,并且还具有到 VM LAN 的虚拟链路上的私有地址。
答案2
我也会在 Linux VM 上使用 pfSense,但正如您在更新中所述,您希望在 Windows 机器上使用,那么这也是可能的,下面详细介绍了两种方法。首先在主机上运行 RRAS,然后是在 VM 上运行 RRAS。
主机上的 RRAS
创建一个内部类型的虚拟交换机,以便主机拥有此交换机的虚拟适配器。您的其他虚拟机也将连接到此交换机以使用 NAT 路由器。
为您的外部 IP 设置物理 NIC,并将您的虚拟适配器设置为静态内部 IP 地址,例如 10.0.0.1,然后可以为其他 VM 分配同一范围内的 IP 地址,或者可能需要使用 DHCP。
安装路由和远程访问作为 Windows 功能
使用向导进行配置,因为这些服务器是远程的,您将需要 VPN 和 NAT。
向导将询问您要使用哪个适配器进行 NAT 互联网连接,请选择您的物理 NIC。
虚拟机上的 RRAS
首先创建虚拟交换机。
- 外部交换机 - 外部类型 - 连接到您的物理 NIC,但不允许主机访问此交换机。
- 内部交换机 - 您的其他虚拟机将连接到此交换机以及主机,以通过 NAT 路由器访问互联网。
在您用作路由器等的虚拟机上,我通常也在此机器上运行 DHCP、DNS。连接两个虚拟适配器,每个交换机一个。
将连接到外部交换机的适配器上的 IP 设置为您的公共地址。
设置一个静态内部 IP 地址,例如 10.0.0.1,然后可以为其他 VM 分配同一范围内的 IP 地址,或者您可能需要使用 DHCP。
安装路由和远程访问作为 Windows 功能
使用向导进行配置,因为这些服务器是远程的,您将需要 VPN 和 NAT。
向导将询问您要使用哪个适配器进行 NAT 互联网连接,请选择您的外部适配器。
Windows 10 和 Windows Server 2016 允许您使用 powershell 配置 NAT,但我不建议在生产环境中这样做。 https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/setup-nat-network