在4421上安裝 BSD8.2之後,無線網卡一直未能成功使用,今天在BSD 手冊和一篇文章的指導下,終於完成,特轉載如下:
http://www.freebsd.org/doc/zh_CN/books/handbook/network-wireless.html
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-wireless.html
http://cookiebear.info/archives/496
在FreeBSD 8.0下配置無線網卡
硬件配置:
IBM ThinkPad X40
Atheros 5008 (AR5416 chip)
很幸運從很久以前我就在無意之中選擇了一塊FreeBSD Handbook當作範例介紹的Atheros無線網卡。
所以內核配置可以完全按照Handbook的提示修改。
不過就算不是Atheros的無線網卡也沒有關係,我們可以通過FreeBSD Hardware Notes找到可能匹配的驅動程序。
在內核配置文件中加入:
device wlan # 802.11 support device wlan_wep # 802.11 WEP support device wlan_ccmp # 802.11 CCMP support device wlan_tkip # 802.11 TKIP support device wlan_amrr # AMRR transmit rate control algorithm device ath # Atheros pci/cardbus NIC's device ath_hal # pci/cardbus chip support options AH_SUPPORT_AR5416 # enable AR5416 tx/rx descriptors device ath_rate_sample # SampleRate tx rate control for ath |
然後重新編譯並安裝新的內核。在啓動之後,輸入dmesg可以看到下面的信息:
ath0: <Atheros 5416> mem 0xd0200000-0xd020ffff irq 21 at device 2.0 on pci2 ath0: [ITHREAD] ath0: AR5416 mac 13.10 RF5133 phy 8.1 |
表示無線網卡已經被順利驅動了。
然後在root權限下輸入下面的命令,以檢測無線AP能否被順利找到。
ifconfig wlan0 create wlandev ath0 ifconfig wlan0 up scan SSID/MESH ID BSSID CHAN RATE S:N INT CAPS 001D738FC1CB 00:1d:73:8f:c1:cb 1 54M -79:-96 100 EPS RSN WPA WME HTCAP ATH WPS 001D738FC1CB-1 02:1d:73:8f:c1:cb 1 54M -80:-96 100 EPS WPA WME HTCAP ATH FON_FREE_IN... 00:18:84:ac:d3:29 1 54M -84:-96 100 E HTCAP WME Dusun Bahagia 00:1c:df:89:c7:cf 6 54M -81:-96 100 EP WPA RSN MESHCONF MESHCONF WPS HTCAP WME linkpco_m 00:0f:66:6a:04:ac 6 54M -93:-96 100 E Colt 00:0d:0b:55:e9:d9 11 54M -66:-96 100 EP WPA 00074096D132 00:07:40:c4:ad:3c 11 54M -93:-96 100 E WARPSTAR-B7... 00:0d:02:91:f2:2e 7 54M -90:-96 100 EP ATH TDMA |
第一條命令的作用是通過硬件的ath0設備建立邏輯的wlan0設備。
(在FreeBSD 7.X時代,是可以直接使用硬件設備的。)
第二條命令的作用則是啓用wlan0設備,並讓它檢測範圍內的AP。
我這裏能找到很多AP,而我只截選了一段。
接下來就是針對特定的AP進行配置了。
在/etc/rc.conf中加入:
wlans_ath0="wlan0" ifconfig_wlan0="mode 11g ssid Colt WPA DHCP" |
第一行是自動建立wlan0設備。
第二行是通過wlan0設備聯結到SSID編號爲Colt,由WPA方式加密的802.11g無線網絡AP上,並通過該AP的DHCP自動獲取本機的IP地址。
而要通過WPA的認證,我們還需要做一些配置。由於目前家庭使用的WPA大多都是WPA-Personal級別的加密,所以本篇也圍繞它來做介紹。
根據Handbook,我們要在/etc/wpa_supplicant.conf中填寫AP的SSID和WPA密碼。而/etc/wpa_supplicant.conf在安裝FreeBSD之後並不存在,所以可以手工建立這個文件。
touch /etc/wpa_supplicant.conf |
然後在文件中按照各式填寫必要的信息:
network={ ssid="Colt" psk="password" } |
至此,無線網絡應該已經被啓用了,IP地址也已經被分配,連重新啓動系統都不需要。趕緊用ifconfig看一下當前的網絡狀態吧。
ifconfig wlan0 wlan0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 ether 00:23:6c:bf:a1:45 inet 192.168.11.10 netmask 0xffffff00 broadcast 192.168.11.255 media: IEEE 802.11 Wireless Ethernet OFDM/36Mbps mode 11g status: associated ssid Colt channel 11 (2462 Mhz 11g) bssid 00:0d:0b:55:e9:d9 regdomain 100 indoor ecm authmode WPA privacy ON deftxkey UNDEF TKIP 2:128-bit txpower 20 bmiss 7 scanvalid 450 bgscan bgscanintvl 300 bgscanidle 250 roam:rssi 7 roam:rate 5 protmode CTS wme burst roaming MANUAL |
如果沒有啓動網絡,可以輸入下面的命令手工啓動:
/etc/rc.d/netif start 或者 wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf |
最後,遇到問題多問Handbook。英語版的Handbook狀態總是最新的,非常有參考價值。