ndiswrapper_with_broadcom
Конфигурация на WLAN-Адаптери с BROADCOM чипове чрез NDISWRAPPER на 7.10 и 8.04
Упътването като PDF със снимки за по-добро обяснение ndiswrapper_with_broadcom/Ndiswrapper_rev0.3_ubuntuwiki.pdf
1. ПРЕПОРЪКА.
Бих си позволил да Ви посъветвам да използвате ndiswrapper, защото bcm43xx, b43 са още много нестабилни и при някои чипове се блокира операционната система при голямо натоварване на WLAN адаптера. За пример мога да посоча bcm4318, който за жалост имам, при голям интернет трансфер с 16mb през торентите. Тогава само рестарт помага до следващия срив на операционната система. Много неприятна и изнервяща ситуация е.
2. ПОДГОТОВКА.
Предварително ви трябват основно пакетите ndiswrapper-common, ndiswrapper-utils-1.9,cabextract,wpa_supplicant,wpa_passphrase и подходящия Windows драйвер. Ако имате процесор с две и повече ядра тогава стандарните ndiswrapper пакети не са за препоръчване, защото не предлагат пълна поддръжка на SMP процесори. От версия 1.53 на ndiswrapper това вече е включено. Поради тази причина е необходимо да си свалите кода от страницата на разработчиците
2.1. http://ndiswrapper.sourceforge.net/joomla/ 2.2. Windows драйверите се намират както следва :
2.2.1. за bcm43x https://help.ubuntu.com/community/WifiDocs/Driver/bcm43xx/Feisty_No-Fluff?highlight=(WifiDocs/Driver)
2.2.2. или за всички възможни драйвери https://help.ubuntu.com/community/WifiDocs/Driver
2.2.3. за bcm94311mcg mini pci http://rapidshare.com/files/70969505/WLANBroadcom.tar.gz.html
2.3. Cabextract http://de.archive.ubuntu.com/ubuntu/pool/universe/c/cabextract/ 2.4. Ndiswrapper се намира на инсталационното CD. В случай, че сами ще си го компилирате погледнете точка 2.1. 2.5. wpa_supplicant и wpa_passphrase се инсталират автоматчно при инсталацията на Ubuntu.
3. ИНСТАЛАЦИЯ В UBUNTU 7.10 и 8.04.
Oт тук нататък е лесно, но трябва да сте по-смели с конзолата - да пишете и конфигурирате. Това са стъпките:
- 3.1. Инсталирайте двата ndiswrapper пакета и cabextract. Виж по-горе в ПОДГОТОВКА . 3.2. Напишете
velikovmn@ubuntu-x64:~$ sudo lspci 00:00.0 Host bridge: ATI Technologies Inc RS480 Host Bridge (rev 10) 00:02.0 PCI bridge: ATI Technologies Inc RS480 PCI-X Root Port 00:12.0 IDE interface: ATI Technologies Inc IXP SB400 Serial ATA Controller 00:13.0 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller 00:13.1 USB Controller: ATI Technologies Inc IXP SB400 USB Host Controller 00:13.2 USB Controller: ATI Technologies Inc IXP SB400 USB2 Host Controller 00:14.0 SMBus: ATI Technologies Inc IXP SB400 SMBus Controller (rev 11) 00:14.1 IDE interface: ATI Technologies Inc IXP SB400 IDE Controller 00:14.3 ISA bridge: ATI Technologies Inc IXP SB400 PCI-ISA Bridge 00:14.4 PCI bridge: ATI Technologies Inc IXP SB400 PCI-PCI Bridge 00:14.5 Multimedia audio controller: ATI Technologies Inc IXP SB400 AC'97 Audio Controller (rev 02) 00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] HyperTransport Technology Configuration 00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Address Map 00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] DRAM Controller 00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron] Miscellaneous Control 01:00.0 VGA compatible controller: nVidia Corporation NV43 [GeForce 6600] (rev a2) 02:00.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02) 02:01.0 Multimedia controller: Philips Semiconductors SAA7133/SAA7135 Video Broadcast Decoder (rev d0) 02:03.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 02:04.0 FireWire (IEEE 1394): VIA Technologies, Inc. IEEE 1394 Host Controller (rev 80)
или
velikovmn@ubuntu-x64:~$ sudo lsusb Bus 003 Device 001: ID 0000:0000 Bus 002 Device 003: ID 058f:9360 Alcor Micro Corp. 8-in-1 Media Card Reader Bus 002 Device 002: ID 04a9:2220 Canon, Inc. Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000
в конзолата, за да видите какви WLAN PCI CARD или WLAN USB Stick имате. В случаят при мене е
02:00.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
- 3.3. Примерната инсталация е за ASUS WL-138g v.2(чип bcm4318) с Windows драйвер от HP sp34152.exe при Ubuntu 7.10 и 8.04. При 7.10 има само bcm43xx, а при 8.04 b43, bcm43xx и ssb. При 7.10 игнорирайте редовете с b43 и ssb.
velikovmn@ubuntu-x64:~$ cabextract sp34152.exe velikovmn@ubuntu-x64:~$ cd sp34152 velikovmn@ubuntu-x64:~$ sudo ndiswrapper -i bcmwl5.inf velikovmn@ubuntu-x64:~$ sudo ndiswrapper -l bcmwl5 : driver installed device (14E4:4318) present (alternate driver: bcm43xx) velikovmn@ubuntu-x64:~$ sudo gedit /etc/modprobe.d/blacklist
(Тук трябва да неутрализирате bcm43xx,b43 и ssb , но синтаксът на файла трябва да се спази. На ред-само един blaklist модул. След рестарт b43, bcm43xx и ssb са блокирани и не се прикачват автоматично към ядрото)
# replaced by b43 and ssb. blacklist bcm43xx blacklist b43 blacklist ssb
velikovmn@ubuntu-x64:~$ sudo rmmod -r bcm43xx velikovmn@ubuntu-x64:~$ sudo rmmod -r b43 velikovmn@ubuntu-x64:~$ sudo rmmod -r ssb velikovmn@ubuntu-x64:~$ sudo modprobe ndiswrapper
Сега трябва да изчакате 1 минута докато Ubuntu регистрира, че има ново устройство. То е wlan0, eth1 или друго.
velikovmn@ubuntu-x64:~$ iwconfig lo no wireless extensions. eth0 no wireless extensions. wlan0 IEEE 802.11g ESSID:"EssID" Mode:Managed Frequency:2.412 GHz Access Point: 00:AA:BB:CC:DD:EE Bit Rate=24 Mb/s Tx-Power:32 dBm RTS thr:2347 B Fragment thr:2346 B Power Management:off Link Quality:59/100 Signal level:-58 dBm Noise level:-96 dBm Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:2362436 Invalid misc:9266773 Missed beacon:0
Имаме ли мрежа около нас? Сканирането става по следния начин :
velikovmn@ubuntu-x64:~$ sudo iwlist wlan0 scan
Как се конфигурира WLAN - много лесно. Използвате командата iwconfig отново. За генериране на ключ Ви препоръчвам пограмката pwgen. Генерирането на ключ става по следният начин
velikovmn@ubuntu-x64:~$ pwgen -c -n -s 63 1 z9x8aLTSJqBCaW4m3p03FwancKBlIxJdBXyQUtFhJBiuf2rwb2n1zSrKi3S1wF7
Имайте на предвид,че според това дали е ключът 64 или 128 Bit дължината му е различна. Първо погледнете в интернет при http://wikipedia.com какво е WEP, WPA и какво означава 64 или 128 Bit ключ. За повече информация, какви опции има pwgen може да използвате man page.
velikovmn@ubuntu-x64:~$ man pwgen
*За мрежа без кодиране
velikovmn@ubuntu-x64:~$ sudo iwconfig wlan0 essid ТвоятWLANAcessPoint
*За мрежа с WEP кодиране
velikovmn@ubuntu-x64:~$ sudo iwconfig wlan0 essid ТвоятWLANAcessPoint key ТвоятWEP
*(В обработка)За мрежа с WPA1/WPA2 кодиране трябва на wpa_supplicant да се подаде клюучът в ASCII или HEX формат. За препоръчване е да настроите мрежата през графичните програми Wicd или network-manager-* (не е довършено указанието за този тип кодиране)
Вече имате WLAN връзка и интернет, които работят успешно със статично или динамично IP на Router.
Важно към 7.10 : При 7.10 трябва да добавите bcm43xx към /etc/modprobe.d/blacklist, а ndiswrapper към /etc/modules.
Важно към 8.04 : При 8.04 с ядро по ниско от 2.6.24-18, при рестарт, модулът ssb отново се зарежда, въпреки че е в blacklist списъка и не предоставя контрол на Ndiswrapper върху WLAN адаптера . Този BUG е премахнат при 2.6.24-18. Ако сте с по-ниска версия, то след всеки рестарт трябва отново да изпълните в конзолата
velikovmn@ubuntu-x64:~$ sudo modrobe -r b43 velikovmn@ubuntu-x64:~$ sudo modrobe -r ssb velikovmn@ubuntu-x64:~$ sudo modrobe -r bcm43xx velikovmn@ubuntu-x64:~$ sudo modrobe -r ndiswrapper velikovmn@ubuntu-x64:~$ sudo modprobe ndiswrapper
Един бърз update на ядрото решава този проблем. Ако по някаква причина update на ядрото не е допустим, тогава може да модифицираме файла /etc/rc.local с горните редове. В крайна сметка той трябва да изглежда както следва:
# # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution # bits. # # By default this script does nothing. modrobe -r b43 modrobe -r ssb modrobe -r bcm43xx modrobe -r ndiswrapper sleep 3 modprobe ndiswrapper exit 0
По подразбиране файлът е изпълним, но за всеки случай:
sudo chmod 755 /etc/rc.local
Aко сте инсталирали Windows драйвера през ndisgtk не е необходимо да добавятв ndiswrapper към /etc/modules, защото този модул се прикачва автоматично при стартирането, въпреки че не е добавен към /etc/modules. Интересно, нали? Няма да Ви кажа как става. Лесно ще откриете, защо става така.
4. ГРАФИЧНИ ПРОГРАМИ ЗА НАСТРОЙКА НА ВРЪЗКАТА КЪМ БЕЗЖИЧНАТА МРЕЖА.
Лично аз имам много добри впечатления от Wicd. Тази програма съчетава в себе си всички WLAN инструменти, които се използват под конзола за настройка на WLAN адаптера и връзката с Router. За жалост не се намира в официалните repos на Ubuntu и трябва да се добави към source.list или през http . Wicd има и Addon's, които разширяват спектъра на поддържаните типове кодиране на мрежата. Repo-тата се намират на следните адреси, т.е. трябва да си ги добавите сами към списъка с източници в synaptic :
deb http://apt.wicd.net hardy extras deb http://apt.wicd.net gutsy extras deb http://apt.wicd.net feisty extras deb http://apt.wicd.net edgy extras deb http://apt.wicd.net dapper extras
Addons http://www.elektronenblitz63.de/
Wicd може да бъде настроен да стратира при login в лентата и да се връзва автоматично към определенa WLAN точка . Под GNOME отивате в System > Preferences > Sessions и в "Startup Programs" подпрозорец кликвате върху "New" бутона. Като име задайте Wicd, а на командния ред /opt/wicd/tray.py. Под KDE изпълнявате командата еднократно в терминал.
velikovmn@ubuntu-x64:~$ sudo ln -s /opt/wicd/tray.py ~/.kde/Autostart/tray.py
При открити грешки моля изпращайте ми идеи за корекции на Email: mmvelikov AT SPAMFREE gmx DOT de
BulgarianDocumentation/ndiswrapper_with_broadcom (last edited 2008-08-13 14:23:57 by e180051005)