虚拟机网络困境

VM Networking Dilemma

一些背景:

我正在尝试为 SANS 560(网络渗透测试和道德黑客)课程设置一个带有少量虚拟机的渗透测试网络,但我遇到了网络配置问题。

绘制网络图(至少它的预期效果):

我的问题:

我如何(假设可能)配置我的主机(使用新 IP 10.10.78.1/16)以能够与其他来宾机器(虚拟机)通信,同时还能够连接到互联网?

我已经尝试设置静态路由以使用新 IP 作为网关(因为路由器位于不同的子网上): route ADD 192.168.0.0 MASK 255.255.255.0 10.10.78.1192.168.0.0是目的地,显然掩码是255.255.255.0,网关是10.10.78.1) - 它没有用(我得到的只是Destination Host Unreachable)

我是否需要在这台 Windows 机器上有两个接口(即一个配置为 10.10.78.1/16 以与其他 VM 通信,另一个配置为 192.168.0.X/24 以访问互联网) 使这种配置成为可能?

我知道网络通常不会这样设置,所以如果您需要我澄清或提供更多信息,请告诉我。

有两种解决方案:

  1. 将 10.10.0.0/16 添加到您的路由器作为辅助 IP 子网 - 如果可能 - 或将 192.168.0.0/24 范围更改为 10.10.0.0/16。
  2. 使用另一台路由器创建 10.10.0.0/16 子网并通过其接口之一将其连接到 192.168.0.0/24。在您的 Internet 路由器上,添加到 10.10.0.0/16 的静态路由。路由器可以是任何东西,硬件路由器、第 3 层交换机或启用路由的 Windows/Linux 机器。

第三种方法 - 运行 同一第 2 层网段中的两个子网通过单臂路由器连接 - 并没有真正达到目的。

编辑:您问题中的路由是错误的方式 - 假设您的子网间路由器使用 192.168.0.99 和 10.10.78.1,在您的 Internet 路由器上,添加路由 10.10.0.0/16 -> 192.168.0.99 和在新子网上使用 10.10.78.1 作为默认网关。

我找到了一个似乎有效的解决方案。

同样,对于上下文,下面是网络上的机器列表:

Name         |  Adapter type  | IP                  |     Static routes?
============================================================================
Windows VM1  |    Bridged     | 192.168.0.11/24     |     Nil
             |    Bridged     | 10.10.78.1/16       |     Yes, see below
-------------|----------------|---------------------|----------------------- 
Windows VM2  |    Bridged     | 10.10.76.1/16       |     Yes, see below
-------------|----------------|---------------------|-----------------------
Linux   VM3  |    Bridged     | 10.10.75.1/16       |     Nil

静态路由:

VM1 的静态路由:

  • 注意:在 192.168.0.11/24 的适配器设置中,我将默认网关设置为我的互联网路由器 (192.168.0.1) 的 IP,并且网络掩码为 255.255.255.0
  • 注意:在 10.10.78.1/16 的适配器设置中,我将默认网关留空(因为它是在添加静态路由时设置的),网络掩码为255.255.0.0
  • route -P ADD 10.10.0.0 MASK 255.255.0.0 192.168.0.11(必须使用 -P 以便路由在重新启动之间保持不变)

VM2 的静态路由:

  • route -P ADD 10.10.0.0 MASK 255.255.0.0 10.10.76.1(必须使用 -P 以便路由在重新启动之间保持不变)
  • 注意:您必须运行netsh advfirewall set allprofiles state off允许10.10.0.0/上的其他虚拟机(包括其他Windows机器) 16 个子网与这台机器通信。

此配置允许以下行为:

  • VM1 可以发起与 VM2VM3
  • 的连接
  • VM2VM3 都无法发起与 VM1
  • 的连接
  • VM2VM3 可以相互通信(即可以在任一方向上相互发起连接

此外,此配置应允许所有 VM 与课程后面为实验室设置的 VPN 通信,因为它们都在 10.10.x.x/16 网络上配置了一个适配器。