凯迪东尼是国产:Ubuntu中文论坛 ? 查看主题

来源:百度文库 编辑:偶看新闻 时间:2024/05/04 03:37:11
在UBUNTU下(实际上是在LINUX作宿主机的情况下)使用VMWare一直有两个大家公认的问题:一是声卡占用的问题;二是桥接无线网卡的问题。关于解决方案网上讨论得比较多,不过按网上的方法我一直没能解决,困扰我很久了(所以一直以来我都是用NAT方式与宿主机共享无线网络上网,但有些应用就有问题)。关于桥接无线网卡的问题今天终于被我搞清楚并解决了,写在这里以免让更多的后来者再浪费时间。
问题描述:在LINUX下使用VMWare,如果主机是使用无线网卡的话,客户机网卡若使用桥接则无法连通。按照VMWare论坛的讨论结果是,若主机为windows则无问题,因为驱动支持无线网卡作为AP模式工作,在LINUX下99%不行。经过实践我发现其实是可以解决的,需要两步:
1、修改其中的一个文件,然后重新编译。相关的补丁文件附后。(这个网上有提供)
2、客户机的网卡配置不选桥接,而是根据VMWare运行config时提示是把无线网卡桥接在哪个设备上,相应地选custom(注意:不是选Bridged桥接模式,否则不可能连接。这是过去我和其他人都共同犯的错误。),再从下拉列表中选相应设备,如在我的机器上是vmnet2 is bridged to wlan0,因此选vmnet2。

对不起,本想把补丁文件上传,结果老提示我附件什么什么扩展名不行,改几个都不行,算了,直接贴上内容(谁可以告诉我如何上传附件?):
diff -Naur vmnet-only/bridge.c vmnet-only-new/bridge.c
--- vmnet-only/bridge.c 2007-08-22 03:14:05.000000000 +0200
+++ vmnet-only-new/bridge.c 2007-09-30 14:34:13.000000000 +0200
@@ -32,7 +32,7 @@
#include
#include

-#ifdef CONFIG_NET_RADIO
+#if defined CONFIG_NET_RADIO || defined CONFIG_WLAN_80211
# include
#endif
#include "vmnetInt.h"
@@ -764,7 +764,7 @@
static Bool
VNetBridgeIsDeviceWireless(struct net_device *dev) //IN: sock
{
-#if !defined(CONFIG_NET_RADIO)
+#if !defined CONFIG_NET_RADIO && !defined CONFIG_WLAN_80211
return FALSE;
#elif WIRELESS_EXT > 19
return dev->wireless_handlers != NULL;