4. 無線網路
4.a. 介紹
目前我們支援用 wireless-tools 或 wpa_supplicant 來設定無線網路。要記得最重要的一點是無線網路的設定是全域為主,而不是以介面為主。
wpa_suppliant 是最好的選擇,但是他並不支援所有裝置。要看他所有支援的裝置請查看 wpa_supplicant 網站。此外,wpa_supplicant 目前只能連線到你已經設定的 SSID。
wireless-tools 幾乎支援所有的裝置,但是不能連到只使用 WPA 的 AP。
警告: 目前 baselayout 不支援 linux-wlan-ng。因為 linux-wlan-ng 有著和其他完全不同的設定方式。搖傳 linux-wlan-ng 開發者要把他們的設定變成 wireless-tools - 這代表可以在 baselayout 中使用 linux-wlan-ng。 |
4.b. WPA Supplicant
WPA Supplicant 是讓你連接到啟動 WPA 的 AP 的套件。因為還在測試中,他的設定過程常常改變 - 但是大部份情況都可以正常工作。
原始碼 1: 安裝 wpa_supplicant |
# emerge net-wireless/wpa_supplicant
|
重要: 核心中要啟動 CONFIG_PACKET 才能讓 wpa_supplicant 工作。 |
現在要設定 /etc/conf.d/net 優先使用 wpa_supplicant 而不是 wireless-tools (兩個都安裝的話,預設會用 wireless-tools)。
原始碼 2: /etc/conf.d/net 設定 wpa_supplicant |
# 使用 wpa_supplicant 而不是 wireless-tools modules=( "wpa_supplicant" ) # 因為他的偵測不是很好,所以要告訴 wpa_supplicant # 要使用哪個驅動程式 wpa_supplicant_eth0="-Dmadwifi" |
注意: 如果你用 host-ap 驅動程式你需要讓網路卡在管理模式,讓 wpa_supplicant 可以正確使用。在 /etc/conf.d/net 中加上 iwconfig_eth0="mode managed" 來設定。 |
很簡單不是嗎?然而,根據你要連線 AP 的安全程度,還有一些 wpa_supplicant 的設定要調整。底下的例子是從 wpa_supplicant 提供的 /etc/wpa_supplicant.conf.example 簡化而來的。
原始碼 3: /etc/wpa_supplicant.conf 設定 |
# 不有改變這行,否則他不能工作 ctrl_interface=/var/run/wpa_supplicant # 確保只有 root 可以讀取 WPA 設定 ctrl_interface_group=0 # 讓 wpa_supplicant 搜尋及選擇 AP ap_scan=1 # 簡單的例子:WPA-PSK, PSK 使用 ASCII 密碼,只要密碼正確就允許 network={ ssid="simple" psk="very secret passphrase" # 越高的優先權越快被使用 priority=5 } # 和前一個一樣,但是指定 SSID (適用 # 不廣播 SSID 的 AP) network={ ssid="second ssid" scan_ssid=1 psk="very secret passphrase" priority=2 } # 只用 WPA-PSK。任何有效的密碼組合都允許 network={ ssid="example" proto=WPA key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP WEP104 WEP40 psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb priority=2 } # 明文連線 (不用 WPA,IEEE 802.1X) network={ ssid="plaintext-test" key_mgmt=NONE } # Shared WEP key 連接 (不用 WPA,IEEE 802.1X) network={ ssid="static-wep-test" key_mgmt=NONE wep_key0="abcde" wep_key1=0102030405 wep_key2="1234567890123" wep_tx_keyidx=0 priority=5 } # Shared WEP key 連接 (不用 WPA,IEEE 802.1X) 使用 # IEEE 802.11 Shared key 認證 network={ ssid="static-wep-test2" key_mgmt=NONE wep_key0="abcde" wep_key1=0102030405 wep_key2="1234567890123" wep_tx_keyidx=0 priority=5 auth_alg=SHARED } # IBSS/ad-hoc 網路加上 WPA-None/TKIP network={ ssid="test adhoc" mode=1 proto=WPA key_mgmt=WPA-NONE pairwise=NONE group=TKIP psk="secret passphrase" } |