SHWifiLinux

Z wiki.siliconhill.cz
Přejít na: navigace, hledání

Obsah

Jak se připojit na SH Wifi z GNU/Linuxu

Toto je rozšíření projektu wifi (http://wifi.sh.cvut.cz). Slouží k sdílení vědomostí a aktuálních informací o tom, jak se připojit do sítě klubu Silicon Hill přes wifi.

Požadavky

Počítač s podporou 802.11a/g bezdrátového rozhraní. Wpa suplikant (http://hostap.epitest.fi/wpa_supplicant/)

Instalace

Jádro

Nejprve je třeba rozchodit wifi rozhraní. K tomu slouží ovladače bezdrátového připojení a patřičné nástroje. Budeme předpokládat čip IPW2200. Tento je obsažen již v jádře, takže ho zkompilujeme jako modul nebo „na tvrdo“. Modul má výhodu, že je možno jej zavádět a odstraňovat podle potřeby a tím i vypínat a zapínat u notebooků, které na to nemají extra tlačítko. K modulu IPW2200 je třeba též podpora IEEE 802.11. Takže konfigurace jádra bude vypadat přibližně takto:

  • Sekce networking
<M>   Generic IEEE 802.11 Networking Stack                                                 
[ ]     Enable full debugging output                                                       
<M>     IEEE 802.11 WEP encryption (802.1x)                                                
<M>     IEEE 802.11i CCMP support                                                          
<M>     IEEE 802.11i TKIP encryption                                                       
<M>     Software MAC add-on to the IEEE 802.11 networking stack

Sekce Device drivers/Network device support/Wireless lan:

<M>   Intel PRO/Wireless 2200BG and 2915ABG Network Connection                             
[*]     Enable promiscuous mode                                                            
[*]     Enable QoS support                                                                 
[ ]     Enable full debugging output in IPW2200 module.

Nástroje

Budeme potřebovat:

Po rozbalení zkompilujeme wireless tools obvyklým postupem:

./configure
make
make install

a nainstalujeme firmware do patřičného adresáře - v /etc/hotplug/firmware.agent vyhledej tento řádek:

FIRMWARE_DIR=/usr/lib/hotplug/firmware

Do tohoto adresáře rozbal firmware:

cd /usr/lib/hotplug/firmware
tar xzvf /cesta_kde_mam_stazene_soubory/ipw2200-fw-3.0.tgz
mv ipw2200-fw-3.0/* .
rm -r ipw2200-fw-3.0

Poznámka: verze firmware se liší podle verze ovladače. Pro jádra 2.6.17.x by měla fungovat verze firmware řady 3.0 a pro starší jádra firmware 2.4. Syslog kdyžtak napoví, pokud to nebude ta správná verze.

Nyní zkompilujeme wpa_supplikant. Rozbalíme archív a vlezeme do něj. Pak stačí jen:

make

a je hotovo. Vzniklý soubor wpa_supplicant můžeme nakopírovat do nějakého vhodnějšího adresáře, např. /usr/bin.


Kontrola funkce ovladače a nástrojů

Pokud máte ovladač nainstalován jako modul, zadejte (jako root):

modprobe ipw2200

To by mělo stačit a ostatní moduly se dohrají automaticky. Pokud máte ovladač na pevno v jádře, předchozí příkaz vynechte.

Nyní se podívejte (jako root), jestli wireless tools vidí vaše bezdrátové zařízení:

iwconfig

výsledek by měl být v tomto duchu:

eth1      unassociated  ESSID:off/any  
          Mode:Managed  Channel=0  Access Point: 00:00:00:00:00:00   
          Bit Rate=0 kb/s   Tx-Power=20 dBm   Sensitivity=8/0  
          Retry limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Místo eth1 tam můžete mít například wlan0. Záleží na použitém ovladači. Konfigurace:

Wpa suplikant používá konfigurační soubor v textovém tvaru. Po rozbalení se v adresáři suplikantu nachází soubor wpa_supplicant.conf, který obsahuje popis jednotlivých konfiguračních možností. Toto je možné si prostudovat a na základě získaných údajů provést konfiguraci, ale v našem případě postačí i následující řádky, které se vloží do vlastního souboru, který si pojmenujeme například /etc/mysupplicant.conf a jeho obsah je následující:

eapol_version=1
ap_scan=1
fast_reauth=1

network={
       ssid="SH"
       proto=WPA
       key_mgmt=WPA-EAP
       identity=“moje uživatelské jméno"
       password="moje heslo"
}

Uživatelské jméno a heslo získáte z DUSPU (http://dusps.sh.cvut.cz/personal). Nyní stačí jen pustit suplikant:

wpa_supplicant -Dwext -ieth1 -c/etc/mysupplicant.conf

Parametr D volí použitý ovladač. V případě ipw2200 je podpora wpa zahrnuta přímo ve wireless extensions, které každý ovladač v nějaké míře podporuje. Parametr „i“ volí wifi zařízení a parametr „c“ určuje jméno a cestu ke konfiguračnímu souboru. Nyní se suplikant bude snažit nakonfigurovat wifi zařízení a vyhledat signál. Nejprve se podíváme, co se děje na našem zařízení. Příkaz iwconfig nám ukáže, zda je naše zařízení asociované s druhou stranou, tj. s přístupovým bodem. Pokud ano, uvidíte rovnou sílu signálu (buďto jako např. 47/100 nebo v dBm). Zkontrolujte si, jestli je ve výpisu ESSID nastaveno na „SH“. Nyní jsme asociování a probíhá autentizace. Všechny tyto operace se dozvíte na příkazové řádce, kde jste spustili suplikant:

root@chytrousek:/var/src/wpa_supplicant-0.5.3# ./wpa_supplicant -Dwext -i eth1 -c silk2_supplicant.conf
Trying to associate with 00:15:c7:ff:b4:f0 (SSID='SH' freq=0 MHz)
Associated with 00:15:c7:ff:b4:f0
CTRL-EVENT-EAP-STARTED EAP authentication started
CTRL-EVENT-EAP-METHOD EAP vendor 0 method 25 (PEAP) selected
EAP-MSCHAPV2: Authentication succeeded
EAP-TLV: TLV Result - Success - EAP-TLV/Phase2 Completed
CTRL-EVENT-EAP-SUCCESS EAP authentication completed successfully
WPA: Key negotiation completed with 00:15:c7:ff:b4:f0 [PTK=TKIP GTK=TKIP]
CTRL-EVENT-CONNECTED - Connection to 00:15:c7:ff:b4:f0 completed (auth)

Jak je vidět, autentizace proběhla úspěšně a jsme připojeni. Pro vlastní síťování si ale musíme nastavit IP adresu a bránu. To za nás obstará DHCP. Spustíme tedy dhcp klienta:

./dhclient eth1

Místo eth1 zadejte vaše Wifi zařízení. Dhclient by měl nastavit vše potřebné, nebo informovat, že je nastavení nepovedlo. V tomto případě dejte vědět správci projektu. Funguje též ruční nastavení na základě informací na adrese http://wifi.sh.cvut.cz/?page=faq.

Toť vše. Veselé síťování.


Zdroje informací

http://wifi.sh.cvut.cz http://www.tldp.org/HOWTO/html_single/8021X-HOWTO/

Troubleshooting

Nejde autentizace

root@chytrousek:/var/src/wpa_supplicant-0.5.3# ./wpa_supplicant -Dwext -i eth1 -c silk2_supplicant.conf
Trying to associate with 00:15:c7:ff:b4:f0 (SSID='SH' freq=0 MHz)
Associated with 00:15:c7:ff:b4:f0
CTRL-EVENT-EAP-STARTED EAP authentication started
CTRL-EVENT-EAP-METHOD EAP vendor 0 method 25 (PEAP) selected
EAP-TLV: TLV Result - Failure
CTRL-EVENT-EAP-FAILURE EAP authentication failed
CTRL-EVENT-DISCONNECTED - Disconnect event - remove keys
CTRL-EVENT-DISCONNECTED - Disconnect event - remove keys

Příčinou je špatné uživatelské jméno nebo heslo nebo MAC adresa. Zkontrolujte si, zda zadané údaje souhlasí s DUSPSem a ujistěte se, že máte danou MAC adresu zaregistrovanou v oblasti „wifi“ v síti klubu Silicon Hill. Tj. na zmiňované stránce by měl být vidět záznam, který začíná například takto:

chytrousek.wifi.nat		WiFi		172.16....

Nejde asociace s přístupovým bodem

Není vidět síla signálu ve výpisu příkazu iwconfig, wpa suplikant se snaží bezúspěšně spojit.

Nejspíše máte slabý signál. Odstup užitečného signálu od šumu by měl být minimálně 7dBm (měřeno experimentálně). Suplikant se pokouší připojovat stále znova a znova, proto se zkuste přesunout o kus dál, nebo pokud používáte anténu, tak změnit její pozici či natočení.

Jmenné prostory

Varianty
Akce