如何使VirtualBox或VMware(或任何其他虚拟化软件)使用本机访客网络驱动程序?

时间:2012-08-26 10:59:59

标签: linux-kernel vmware virtualization virtualbox wireless

我不知道我想要实现的目标是否可行。我有一个RTL8192CE无线网络Mini PCI卡,它在Linux上运行不正常(运行Ubuntu 12.04 64位(精确穿山甲))。我已经尝试了我能想到的一切:我从Realtek主页下载了最新的驱动程序,尝试使用NDISwrapper和几组不同的Windows驱动程序,并尝试使用通用无线后端等。它解决了我的问题。

另一方面,它确实在Windows上完美运行......我是双启动Windows 7和Ubuntu 12.04,都是64位。显然,there is a bug in Ubuntu与此卡有关。

我想知道是否有办法在我使用本机的Ubuntu 12.04 64位下使用虚拟Windows安装(Windows XPWindows 7,最好不是Windows Vista) Windows驱动程序(因为网卡在Windows中完美运行)。虚拟化软件可以是VirtualBox(首选),VMware或任何其他。如果我必须通过shell脚本或类似的东西手动配置它,则没有任何问题。

所以,为了更清楚,我在我的Ubuntu 12.04(我的主机)中安装了一个VirtualBox,我用它来运行Windows 7(我的访客)。我想知道这个虚拟化(来宾)Windows 7是否可以“直接”访问我的无线接口 - 例如我安装的双启动Windows 7,而不通过Ubuntu驱动程序。

显然I could not achieve that使用VirtualBox的访客添加,我可以吗?

PS:我相信VirtualBox的网络模式(NAT,桥接网络,内部网络和仅主机网络)都不允许我这样做,我是否正确?我怎么能解决这个问题?

1 个答案:

答案 0 :(得分:5)

您要求的是在VirtualBox中称为PCI Passthrough - 它应该被认为是一个非常高级的主题。我之前在VirtualBox和VMWare ESXi(使用vSphere ......)中尝试过这个功能,它可能非常脆弱。

我建议您花一些时间阅读VirtualBox手册部分(Chapter 9: Advanced Topics),您需要了解一些限制,并且只知道这是一个虚拟化领域。很年轻,不成熟。在你开始之前,这里有一些相当严格的要求:

  • 您的硬件必须有IOMMU(英特尔称之为VT-d,AMD - > AMD-Vi)
  • 您的访客必须配置启用硬件辅助(VT-x或AMD-V)
  • 必须构建主机Linux内核才能使用IOMMU硬件

如果您的硬件/软件符合这些相当严格的指导原则,请试一试。会发生什么情况,您的客人将被有效地直接访问您的无线PCI卡,它将直接作为PCI设备显示给您的客人。如果Windows是您的主机操作系统而不是您的访客,您将完全像安装和使用驱动程序一样。

参考 - 第9章:高级主题 - PCI Passthrough https://www.virtualbox.org/manual/ch09.html#pcipassthrough