想說大廠的應該有支援, 想不到還是得自己東湊西湊, 總算是通了
本來先嘗試用 ndiswrapper 1.0 + windows driver
失敗... 看得到 wlan0 device, 但不會通, 而且 console 幾乎停止回應
rmmod 還得等半天...
搜尋 google 三天, 在即將放棄的時候, 無意間看到 windows driver 的名稱是 zd1211u.sys, 且 inf 檔註名製造商為 ZyDAS
在用 google 搜尋後找到這個 http://warder.ath.cx:81/projects.php
當然不是直接裝了就會通, 還要動點手腳, 步驟如下
1. 下載作者修正後的 source
2. 安裝 gcc-3.4 (用 gcc-3.3 會出現 unresolved symbol , 與網頁說的情況相同, 換新版的就過了)
3. 修改 zdusb.h, 加入新的 USB Vendor:Product ID
- 代碼: 選擇全部
#define VENDOR_3COM 0x6891
#define PRODUCT_A727 0xA727
4. 修改 zdusb.c, 把 zdusb.h define 好的 ID 加進 array 中
- 代碼: 選擇全部
/* table of devices that work with this driver */
static struct usb_device_id zd1211_ids [] = {
{ USB_DEVICE(VENDOR_ZYDAS, PRODUCT_1211) },
{ USB_DEVICE(VENDOR_ZYXEL, PRODUCT_G220) },
{ USB_DEVICE(VENDOR_INEXQ, PRODUCT_0711) },
{ USB_DEVICE(VENDOR_3COM, PRODUCT_A727) },
{ } /* Terminating entry */
};
5. 重編 kernel 跟這個 usb wireless kernel module, 重開機. (我用的 kernel 版本是 2.6.10)
6. 插入 usb wireless, 載入 module 後, 便可找到裝置 eth1
7. 用 ifconfig / iwconfig 設定參數
8. 執行 dhclient eth1 取得 IP, 搞定!!!
目前尚有兩個小問題
1. 先插著 usb wireless, 再開 linux , 會在 load usb wireless module 時卡住, 若先開機再插 usb wireless 就沒問題
2. 網卡名稱顯示 eth1 而非 wlan0
希望這篇文章對想使用 usb 網卡的朋友有幫助