Wifi

Strona główna>Dokumentacja użytkowa cdlinux.pl> Konfiguracja WiFi


Większość producentów bezprzewodowych kart sieciowych (WiFi) nie udostępnia sterowników przeznaczonych dla systemu Linux. Jednak dzięki projektowi NdisWrapper możliwe jest uruchomienie tych kart z wykorzystanie sterowników przeznaczonych dla systemu operacyjnego Windows.

Ndiswrapper- korzystanie ze sterownika Windowsowego

Określamy kartę sieciową

Jeżeli nie jesteś w posiadaniu oryginalnych płyt ze strownikami do karty bezprzewodowej, musisz znaleźć je w sieci. W pierwszym kroku należy określić nazwę i model karty sieciowej.

Najprościej jest wykorzystać do tego celu polecenie lspci>

cdlinux:~# lspci
0000:00:00.0 Host bridge: VIA Technologies, Inc. VT8385 [K8T800 AGP] Host Bridge (rev 01)
0000:00:01.0 PCI bridge: VIA Technologies, Inc. VT8237 PCI bridge [K8T800 South]
<font color="#cc0000">0000:00:0a.0 Network controller: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller (rev 03)</font>
0000:00:0b.0 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev aa)
0000:00:0b.1 CardBus bridge: Ricoh Co Ltd RL5c476 II (rev aa)
0000:00:0b.2 FireWire (IEEE 1394): Ricoh Co Ltd R5C552 IEEE 1394 Controller (rev 02)
0000:00:0c.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5788 Gigabit Ethernet (rev 03)
0000:00:10.0 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80)
0000:00:10.1 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80)
0000:00:10.2 USB Controller: VIA Technologies, Inc. VT82xxxxx UHCI USB 1.1 Controller (rev 80)
0000:00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82)
0000:00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge
0000:00:11.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
0000:00:11.5 Multimedia audio controller: VIA Technologies, Inc. VT8233/A/8235/8237 AC97 Audio Controller (rev 50)
0000:00:11.6 Communication controller: VIA Technologies, Inc. Intel 537 [AC97 Modem] (rev 80)
0000:00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 NorthBridge
0000:01:00.0 VGA compatible controller: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10]

Z powyższego listingu można odczytać, że komputer jest wyposażony w kartę Broadcom Corporation o modelu BCM4306.

Ze strony producenta karty sieciowej (albo komputera) należy ściągnąć sterownik dla systemu Windows i zapisać go w katalogu domowym. Po pobraniu należy go rozpakować. W opisywanym przypadku wydajemy polecenie:

cdlinux:~# unzip 80211g.zip
Archive: 80211g.zip
creating: 80211g/
inflating: 80211g/0X0409.INI
inflating: 80211g/AUTORUN.INF
inflating: 80211g/Data1.cab
inflating: 80211g/DMZA03WW.bld
creating: 80211g/Driver/
inflating: 80211g/Driver/BCM43XX.CAT
inflating: 80211g/Driver/BCM43XXA.CAT
inflating: 80211g/Driver/BCMWL5.INF
inflating: 80211g/Driver/BCMWL5.SYS
inflating: 80211g/Driver/BCMWL5A.INF
inflating: 80211g/INSTMSIA.EXE
inflating: 80211g/INSTMSIW.EXE
inflating: 80211g/ISSCRIPT.MSI
inflating: 80211g/SETUP.EXE
inflating: 80211g/Setup.ini
inflating: 80211g/setup.iss
inflating: 80211g/WLAN.ICO
inflating: 80211g/WLAN.MSI
inflating: DMZA03WW.bld

  • Uzupełnienie
    • Na CD dołączonych do kart sieciowych powinny być także rozpakowane sterowniki.
    • Samorozpakowujące się archiwa .exe ze sterownikami można rozpakować poleceniem unzip sterownik.exe. Nie trzeba uruchamiać Windows.

Ładujemy sterowniki

Pliki sterowników Windowsowych mają rozszerzenie *.INF. Znajdujemy plik o tym rozszerzeniu i ładujemy go do programu ndiswrapper:

cdlinux:~# ndiswrapper- i 80211g/Driver/BCMWL5.INF
Installing bcmwl5

Następny krokiem jest załadowanie modułu ndiswrapper do jądra systemu operacyjnego:

cdlinux:~# modprobe ndiswrapper

Po tym aby nie trzeba za każdy razem ładować modułu ndiswrappera do jądra systemu należy wpisać

cdlinux:~# ndiswrapper- m

Dzięki temu za każdy startem systemu modułu ndiswrapper jest automatycznie ładowany do jądra systemu

Sprawdzenie sterowników

W celu sprawdzenia poprawności wykonania tego polecenia nalezy napisać:

cdlinux:~# dmesg | tail
ACPI: PCI interrupt 0000:00:0a.0[A]- > GSI 21 (level, low)- > IRQ 21
ndiswrapper: using irq 21
wlan0: ndiswrapper ethernet device 00:0b:6b:48:af:df using driver bcmwl5, configuration file 14E4:4320:185F:1220.5.conf
wlan0: encryption modes supported: WEP, WPA with TKIP, WPA with AES/CCMP

Trzy ostatnie linijki oznaczają, że moduł został prawidłowo załadowany.

  • Uzupełnienie
  • Można także po podłączeniu karty wykonać polecenie:
  1. ndiswrapper- l
  • W ten sposób można sprawdzić czy załadowany został sterownik właściwy dla danego urządzenia. Powinna zostać wyświetlona lista sterowników postaci:

bcmwl5 present
net8180

albo coś takiego

Installed ndis drivers:
net8180 hardware present

  • Oznaczenie present mówi, iż sterownik jest inicjowany przez ndiswrapper. Jeśli nie ma słowa present może to oznaczać, że sterownik jest niewłaściwy lub producent opublikował jego poprawioną wersję, nie współpracującą z ndiswrapperem.

Jeżeli wszystko przebiegło prawidłowo to po wydaniu polecenie iwconfig powinnien pokazać się listing podobny to poniższego:

cdlinux:~# iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

sit0 no wireless extensions.

wlan0 IEEE 802.11g ESSID:off/any
Mode:Managed Frequency:2.462 GHz Access Point: 00:00:00:00:00:00
Bit Rate:54 Mb/s Tx-Power:16 dBm
RTS thr:2347 B Fragment thr:2346 B
Encryption key:off
Power Management:off
Link Quality:100/100 Signal level:-10 dBm Noise level:-256 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:120 Missed beacon:0

Konfiguracja interfejsu sieciowego

(oryginał http://pl.docs.pld-linux.org/siec_wifi.html )

Ustawianie interfejsu WLAN

Poniżej przedstawiona została konfiguracja dla sieci bezprzewodowej o określonym identyfikatorze SSID, zabezpieczonej kluczem WEP.

  1. iwconfig wlan0 essid xxx key open s:jakiskluczASCII
  2. dhclient wlan0

Jeżeli posiadamy działający w sieci serwer DHCP, możemy (jak zostało to pokazane) automatycznie skonfigurować za jego pomocą naszą kartę sieciową. W przypadku, kiedy nie posiadamy takiego rozwiązania, konfigurację IP wykonuje się dokładnie tak samo jak zwykłej karty sieciowej przy użyciu polecenia ifconfig lub ip.

Pokazana na listingu konfiguracja może nie zadziałać w środowisku o innym sposobie dostępu do sieci, więc nie należy jej traktować dosłownie. Dlatego gorąco polecam lekturę podręcznika systemowego iwconfig (man iwconfig).

Krótki opis użytych w listingu parametrów.

  • wlan0- symbol interfejsu karty radiowej
  • essid- słowo kluczowe, po którym następuje identyfikator (SSID) sieci.
  • key- słowo kluczowe, oznaczające użycie szyfrowania
  • open- parametr do key, oznaczający tryb bezpieczeństwa. Parametr ten może przyjąć wartość restricted
  • s:- klucz WEP, który występuje po dwukropku, podany jest w formie ASCII. Parametru tego nie używamy, jeśli klucz podajemy w postaci hexadecymalnej.

Przyczyną braku połączenia może być oczywiście brak dostępnego punktu dostępowego (access point). Aby sprawdzić dostępność sieci bezprzewodowej możesz użyć polecenia iwlist.

  1. iwlist wlan0 scan

Przedstawione na listingu polecenie powinno pokazać dostępne w zasięgu Twojej karty WiFi punkty dostępu. Komunikat o treści "No results" może oznaczać, że accesspoint jest wyłączony lub uszkodzony(?).

Uzupełnienie

  • Lista punktów dostępowych AP, która pojawi się po wydaniu polecenia iwlist wlan0 scan, będzie zawierała ich nazwy. Jedną z nich należy wpisać obok essid zamiast xxx w przykładzie powyżej. Ewentualnie wydać osobne polecenie, gdy konfigurujemy krok po kroku:
  1. iwconfig wlan0 essid ESSID (gdzie ESSID to nazwa AP)
  • W konfiguracji karty określa się także tryb pracy interfejsu wlan0. W tym celu w linii poleceń należy wpisać (z uprawnieniami superużytkownika):
  1. iwconfig wlan0 mode Ad-Hoc
  • Rodzaje trybów
    • Ad-Hoc- służy do bezpośrednich połączeń z innymi urządzeniami. W Windows Ad-Hoc nazywa się trybem równorzędnym.
    • Managed- (tryb infrastruktury); wybieramy go, gdy do zarządzania siecią używany jest punkt dostępowy AP (Access Point), który przydziela adresy IP automatycznie.
    • Master- służy do tworzenia punktu AP, ale nie jest on obsługiwany przez urządzenia korzystające z Ndiswrappera.
  • Włączenie interfejsu sieciowego
  1. ifconfig wlan0 192.168.1.1 up
  • Podanie adresu IP obowiązuje dla trybu Ad-Hoc (tryb równorzędny). W trybie Managed (tryb infrastruktury) punkty dostępowe nadają IP za pomocą serwera DHCP.

Automatyczne łączenie z internetem po restarcie przy braku DHCP

Zakładam że internet już działa i chodzi tylko o automatyzacja łączenia się z netem, żeby tego dokonać należy dokonać edycji pliku interfaces z katalagu /etc/network np.

  1. leafpad /etc/network/interfaces

Należy tam wpisać swój adres IP, Maskę essid oraz bramę, prawidłowy plik interfaces powinien wyglądać tak (wersy oznaczone gwiazdką są opcjonalne i zależą od ustawień twojej sieci)

auto wlan0
iface wlan0 inet static
address Twój_IP
wireless-essid Twój_essid
netmask Twoja_Maska
gateway Twoja_brama
*broadcast BROADCAST
*wireless-mode Typ_Sieci
*wireless-key restricted KLUCZ_WEP

Ustawianie interfejsu LAN

(czyli DNS, maski, bramy itp.)

Proszę przeczytać drugą część tego dobrego tekstu Instalacja Wl-8303 Pod Linux Mandrake 10.1.

Opis konfiguracji dla poszczególnych modeli kart sieciowych

Ralink2400

Informacje statystyczne łącza

Informacje na temat poziomu sygnału oraz parametrów IP możesz odczytać z pliku /proc/net/ndiswrapper/wlan0/stats.

  1. cat /proc/net/ndiswrapper/wlan0/stats
  • Uzupełnienie
    • Nie należy ustawiać najwyższych wartości w Link Quality, gdyż sterowniki Windows nie potrafią mierzyć jakości sygnału. Różne karty podają różne wartości, od zerowej, po pełne 100.

Instalowanie dwóch kart- WiFi i LAN

Informacje na ten temat można wyczytać z tekstu znajdującego się na WWW Hacking.pl: Wardriving — tutorial
Tekst zawiera m.in. wskazówki jak konfigurować dwie karty sieciowe- LAN do Internetu i WLAN do sieci WiFi. (Patrz uwaga w tekście o Kismet)

Projektowanie sieci WLAN

Znalazłem w sieci artykuł na ten temat, nie za duży, ale zawsze. A planowanie sieci WLAN to poważne zadanie. Zapraszam do tekstu Sławomira Kruglaka http://www.it-faq.pl/EditModule.aspx?tabid=469

O ile nie zaznaczono inaczej, treść tej strony objęta jest licencją Creative Commons Attribution-ShareAlike 3.0 License