在多个主机上使用VMware分布式交换机来伪装NAT

我需要为networking内的某些机器构build一个NAT。 希望用dvSwitch做到这一点 – 因为在这种情况下,攻击问题的逻辑方式似乎只有30个主机。

为了让NAT的VM能够访问“真实”的networking。 我提供了一个“路由器”虚拟机,它可以访问WAN /外部networking,也可以作为NAT机器的DHCP服务器。

问题空间

当连接到NAT接口的机器和路由器在同一个主机上时,他们从路由器虚拟机获得一个IP,并且完美地工作(路由到外部)。

不幸的是,连接到dvSwitch的其他主机上的机器没有获得IP,而进一步的tcpdump显示在dvSwitch内没有通过主机的networking数据。

有没有人使用dvSwitch实现NAT解决scheme之前,他们可以分享?

谢谢。

编辑:

包括图 。

回答协同

那么你的问题可能是你的设置过于复杂,因为你的问题:)

DHCP不通过路由器边界而不启用中继

一旦你已经实现了,那么你的其他“机器”将能够与你的DHCP服务器触摸基地:P

有些问题可能有助于澄清事情:

  • 你的图中哪个系统是DHCP服务器?
  • NAT在哪里进行?
  • 你是否证实dvSwitch实际上工作正常? (您可以尝试将静态IP分配给其他主机上的某个虚拟机,并查看是否可以ping通或以其他方式连接到其他虚拟机)。

我已经build立了DHCP系统,并且没有任何问题,所以可以做这样的事情。 我的猜测是,dvSwitch只是没有正确configuration。

祝你好运,

–jed

好吧,最后我我明白了,让我testing一下我的假设;

  1. 你有许多虚拟机需要以NAT方式访问某种forms的“正确的”networking,他们也需要获得他们的DHCP地址 – 我不清楚他们是否需要同时访问另一个内部networking – 也许你可以澄清这一点。
  2. 您希望使用dvSwitch来保存pipe理员(实际上大多数VCP现在在生产环境中避开了dvSwitches,宁愿等待下一个版本)。
  3. 你看到在整个dvSwitch行为不一致(顺便见第2条)。

如果这是正确的,那么我认为你可以通过以下做法让自己更容易:

  1. 创build您的dvSwitch,连接到vNIC1的所有适当的虚拟机和您提名的“路由器/ DHCP”虚拟机的vNIC1,设置客户端使用DHCP。
  2. 将“路由器/ DHCP”虚拟机的vNIC2连接到“正确的”networkingdv / vSwitch端口。
  3. 在“路由器/ DHCP”服务器上安装操作系统和路由器/ DHCP守护程序/服务,根据需要进行configuration。

如有需要,可select将VM vNIC2连接到其他内部networking。

这应该允许所有适当的虚拟机从“路由器/ DHCP”虚拟机获取他们的DHCP信息,虚拟机也将自己作为默认网关传递 – 反过来,NAT将路由来自该接口的所有stream量。 如果需要,您可以简单地使用虚拟机上的静态路由,将非NAT需要的stream量指向vNIC2,以便根据需要由内部networking处理。

这是否有意义 – 我知道这非常接近我认为你的build议,但代替更清晰的文本/图表这是我现在可以做的最好的。

没有更多关于你的环境的信息,我不能确切地说出了什么问题。 我怀疑你所遇到的问题可能与你在分布式交换机环境和你的物理交换机中如何设置(或者更具体的说不是设置)VLAN和PVLAN有关,但可能仅仅是上行链路端口不是在所有主机上正确configuration。 因此,您的dVSwitch在所有主机上的精确configuration非常重要。 正如其他人所指出的那样,dVSwitch目前并不是最简单的工作,而对其进行更改可能会违反直觉,容易出错。 您的dVSwitch屏幕快照与突出显示的NAT dVPortgroup标识所有主机上的上行path将非常照亮。

最好的起点是“ vSpherenetworking指南” ,尽pipe它与VMware \ Cisco Nexus1000v DMZ指南并不直接相关,但值得一读。