TechLife devBlog

Styczeń 2008

bcm43xx vs ndiswrapper

Linux, ArchLinux, Techblog 10 stycznia 2008 17:53

Jakiś czas temu pojawił się u mnie router WiFi, a ponieważ chciałem uchronić moje łączę przed wiszącą na nim połową osiedla musiałem transmisję poddać szyfrowaniu.

Router D-link 524, całkiem fajny

O ile otwarte sterowniki bcm43xx dobrze radziły sobie z transmisją otwartą to jednak o szyfrowaniu można było pomarzyć. Musiałem więc poszukać czegoś innego i tutaj z pomocą przyszedł NDISwrapper Ogólnie rzecz ujmując potrafi on emulować sterowniki kart sieciowych napisane dla Windowsa tak, aby działał pod Linuksem.

Instalacja NDISwrapper-a jest dość prosta. Na początek musimy się pozbyć dotychczasowego sterownika bcm43xx jeżeli go używamy. Można zrobić to usuwając pakiet lub dodając go do czarnej listy modułów, tak aby nie był ładowany przy starcie systemu. W Archu czarna lista znajduje się w pliku /etc/rc.conf i dodanie do listy wyglądało by np. tak:

MOD_BLACKLIST=(asus_acpii bcm43xx)

Następnie instalujemy NDISwrapper-a. Każda szanująca się dystrybucja powinna mieć odpowiednie paczki w swoim repozytorium. Zazwyczaj są to dwie paczki: ndiswrapper i ndiswrapper-utils. W Archu wygląda to tak:

# pacman -S ndiswrapper ndiswrapper-utils

Po instalacji sięgamy po płytkę ze sterownikami do naszej karty sieciowej i ładujemy odpowiedni plik do NDISwrapper-a.

# ndiswrapper -i bcmwl5.inf
# ndiswrapper -l
# modprobe ndiswrapper
# ndiswrapper -m

Jeżeli jednak nie mamy sterowników możemy je pobrać z sieci. Trzeba tylko dokładnie wiedzieć jaki numerek ma nasza karta sieciowa. Dowiedzieć można się tego wydając takie magiczne zaklęcie:

# lspci -n | egrep '14e4:43(06|07|11|12|18|19|21|24|25|28)'

Następnie mając numerek karty możemy pobrać odpowiedni plik. Dokładna listę które numerki pasują do których strowników znajdziecie w helpie Ubuntu

« Nowsze | Strona 2 z 2