我希望在我的Xen Project机器上安装一个运行Zentyal防火墙的VM。我的机器有三块网卡:一块集成的,还有两块隐蔽的类似的网卡(它们使用相同的Realtek芯片,但来自不同的制造商)。为了使防火墙以最佳方式工作,我想要做的是将两个独立的NIC分配给我的防火墙虚拟机,并将集成卡用于Dom0和其他虚拟机。在过去,我已经能够用其他虚拟化软件做类似的事情,但还没有找到用Xen Project做这件事的方法。
This page提供了许多有用的配置,但我不认为它们中的任何一个都符合我想要做的事情。这是完全可能的吗,或者我必须放弃虚拟化我的防火墙计算机的希望?
发布于 2016-12-04 05:23:11
我认为解决这个问题的最好方法是在Xen中使用PCI passthrough。这意味着您可以将1个NIC连接到dom0 (然后可以桥接这些NIC,以允许其他虚拟机通过相同的接口连接-查看其中一个Xen articles on network configuration,并允许防火墙VM完全控制其他两个NIC)。
这个过程有些复杂,可能会因发行版而异,因此我建议您查看我链接的第一篇文章,但我将描述基本的过程。
使用lspci检查要通过的两个网卡的PCI地址。您的卡的输出行将如下所示(尽管细节将非常不同,但结构将是相同的):
00:19.0 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)
00:19.1 Ethernet controller: Intel Corporation 82579LM Gigabit Network Connection (rev 04)记下第一列(本例中为00:19.0和00:19.1 )。使用以下格式将其添加到防火墙VM的配置中:
pci=['00:19.0','00:19.1']这将导致VM无法启动,因为它将无法通过设备。为了让设备通过,需要使用如下命令将它们绑定到dom0上的pciback驱动程序:
xl pci-assignable-add 00:19.0
xl pci-assignable-add 00:19.1这可能在所有情况下都是不可能的,但如果不是这样,也有其他方法。我强烈建议您阅读我之前提到的the article,以充分了解在您的情况下最好的方法是什么。
https://stackoverflow.com/questions/39528940
复制相似问题