上回說到,linux下面的Wi-Fi配置工具,說是江湖多事,風起雲涌。。。嗯,這回是真的要動手配置了。各種麻煩啊,想死的心都有了有木有啊。
嘗試用iwconfig
話說上回說用iwconfig配置Wi-FI,這次一上手就從這里開始了。各種嘗試啊。
1)首先,要把網卡down掉
ifdown wlan0
1)獲得各個能用的AP的參數
iwlist wlan0 scan
2)告訴網卡,ssid是多少,直接復制上面要用到的ssid
iwconfig wlan0 essid ssid_of_my_ap
3)告訴你的網卡,密碼是多少,輸入你的密碼就好了
iwconfig wlan0 key your_passwd #if the key is ascii iwconfig wlan0 key s:your_passd eg: iwconfig wlan0 key 1234_567
4)然后,俺還嘗試了
iwconfig wlan0 ap xx:xx:xx:xx:xx
#xx:xx:xx:xx:xx is the MAC of my ap
5)這時候可以把網卡開起來了
ifup wlan0
6)什么?發現不工作?這就對了,iwconfig原生只支持WEP加密,該加密已經死翹很久了,現在多是wpa。。。那怎么辦。那需要wpa_supplicant的幫助。而且,你能做到這一步的可能也不大,因為如果是wpa的密碼的話,在第三步會一直報錯的(wpa的密碼比WEP的要長,一直在提示key unlegal之類的錯誤)
好吧,放狗找了下,需要用wpa_supplicant來支援WPA的網絡。
嘗試用wpa_supplicant
因為我的系統上面已經有wpa_supplicant,所以,這里不考慮安裝的問題。
這里主要是修改它的配置文件/etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="TP-LINK_8D0B8A" key_mgmt=WPA-PSK psk="12345678"
}
那,我以為是設置這里,然后ifdown,ifup就可以了。。。但是事實上它還是不工作。
然后看到,說是要設置這里/etc/network/interfaces
auto wlan0 iface wlan0 inet dhcp wpa-ssid "secret-wiki-net" wpa-psk "verysecret-wpa-psk"
然后,ifup,ifdown...貌似就可以了(這個方法是對的)
但是,事實上還是不行,俺dhcp老是不成功啊。。。然后手動再設ip,連ap都ping不到。
這時候想試試直接打開wpa_supplicant,用了下下面的指令打開wpa_supplicant:
sudo wpa_supplicant -d -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0 -Dwext &
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="__SSID__" proto=RSN key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="__PASSWORD__" }
待驗證。
force-reload|restart) if init_is_upstart; then exit 1 fi process_options log_warning_msg "Running $0 $1 is deprecated because it may not re-enable some interfaces" log_action_begin_msg "Reconfiguring network interfaces" ifdown -a --exclude=lo $verbose || true set -f exclusions=$(process_exclusions) if ifup -a --exclude=lo $exclusions $verbose && ifup_hotplug $exclusionss $verbose then log_action_end_msg $? else log_action_end_msg $? fi
先全部ifdown,然后再全部ifup。。。so
所以,還是需要先研究下networking的啟動的。
