masterix n00b
Joined: 16 Mar 2004 Posts: 15
|
Posted: Thu Jun 15, 2006 1:30 am Post subject: [HOWTO] ndiswrapper |
|
|
So che questo howto potrà sembrare stupido, ma lo volevo fare più che altro come promemoria (soprattutto per me , perdonate "l'altruismo" ), per tenere sempre a portata di mano i semplici passaggi (e comandi) che si effettuano per installare una scheda wi-fi (senza fili, wireless, chiamatela come volete ) sotto linux, quindi, più nel dettaglio, su gentoo.
Tolta la breve premessa, veniamo al dunque.
Ndiswrapper, non fa altro che implementare le API del kernel Windows e le API NDIS (Network Driver Interface Specification), nel kernel Linux. Una volta che un driver, sviluppato per MS Windows, di una scheda wifi è collegato a questo tipo di implementazione, è possibile usarlo in modo nativo, così come avviene su Windows e senza alcuna emulazione binaria.
Emergiamo quindi il pacchetto (sicuramente, installerà anche il pacchetto 'wireless-tools', se ciò non accadesse, emergetelo a mano voi):
Code: |
masterix / # emerge -av ndiswrapper
|
Fatto ciò (presumendo che tutto vada a buon fine), ritroveremo il modulo ndiswrapper compilato per il nostro kernel e l'eseguibile del programma installato.
Creiamo la directory che conterrà i nostri drivers:
Code: |
mkdir /lib/driver_wifi
|
Una volta creata la directory, dobbiamo inserire in essa i driver (file *.inf e *.sys) della scheda Wireless. Potete reperirli direttamente dal CD (ammesso che ne abbiate uno) oppure, scaricarli da qui: http://ndiswrapper.sourceforge.net/mediawiki/index.php/List (in questo collegamento, troverete, oltre ai drivers, tutti i modelli di schede wifi supportati al 100% - o quasi - da ndiswrapper... ciò non toglie che se la vostra scheda non è in questa lista, potete comunque provare ad usarlo!!!!).
Per scoprire quale scheda wireless avete, date un occhio ad lspci:
Code: |
masterix ndiswrapper # lspci
...
00:0b.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
...
masterix ndiswrapper #
|
Nel mio caso quindi, è una broadcom (ndr. non mi ricordate che una cagata di scheda, lo so già )... quindi, seguendo il link con la lista delle schede wifi, ho potuto verificare che il driver corretto è:
Quote: |
3. Card Name: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)
Ndiswrapper version: 1.11
Chipset name: Broadcom BCM4318
PCIID: 00:0b.0 (rev 02)
Windows driver location: ftp://ftp.support.acer-euro.com/notebook/aspire_3020_5020/driver/winxp64bit/80211g.zip Driver: WL_Broadcom,XP64
Other: Needs *.sys *.inf files in same directory but use BCMWL5A.INF for ndiswrapper driver install. Load ndiswrapper at boot up thanks to /etc/rc5.d file. Antho.martin@gmail.com for more informations or questions.
Using Fedora Core 5 x86_64 on Acer Aspire 5002 WLMI with AMD Turion 64.
|
Quindi, proseguendo nel mio caso:
Code: |
masterix ndiswrapper # cd /lib/driver_wifi
masterix driver_wifi # wget ftp://ftp.support.acer-euro.com/notebook/aspire_3020_5020/driver/winxp64bit/80211g.zip
...
masterix driver_wifi # ls
80211g.zip
masterix driver_wifi #
|
Ora ho il mio archivio .zip contenente i driver della mia scheda wireless... procedo quindi con l'apertura dell'archivio e la visualizzazione dei dati scompattati:
Code: |
masterix driver_wifi # unzip 80211g.zip
Archive: 80211g.zip
creating: 80211g/
inflating: 80211g/bcm43xx.cat
inflating: 80211g/bcmwl5.inf
inflating: 80211g/BCMWL564.SYS
inflating: 80211g/Version.txt
masterix driver_wifi # ls
80211g 80211g.zip
masterix driver_wifi # cd 80211g
masterix 80211g # ls
BCMWL564.SYS Version.txt bcm43xx.cat bcmwl5.inf
masterix 80211g #
|
Come si può ben cnotare, contiene i file essenziali per il funzionamento.
Procediamo quindi con la configurazione di ndiswrapper:
Code: |
masterix 80211g # ndiswrapper -i bcmwl5.inf
|
Questo comando, copierà i files necessari nella directory di ndiswrapper e creerà i files di configurazione della nostra scheda wifi.
Verifichiamo quindi che l'installazione del driver sia andata a buon fine:
Code: |
masterix 80211g # ndiswrapper -l
Installed ndis drivers:
bcmwl5a driver present, hardware present
masterix 80211g #
|
bene... il driver è installato, e l'hardware è presente...
fatto ciò, installiamo il modulo ndiswrapper:
Code: |
masterix 80211g # ndiswrapper -m
masterix 80211g # depmod -a
masterix 80211g # modprobe ndiswrapper
|
se ndiswrapper sta svolgendo il suo sporco lavoro, di sicuro lo scoprirete con ifconfig, quindi verificate che NON DIA questo risultato:
Code: |
masterix 80211g # ifconfig wlan0
wlan0: error fetching interface information: Device not found
masterix 80211g #
|
Se invece, nell'ifconfig, troviamo la nostra bella scheda, vuol dire che siamo a cavallo e che tutto è andato bene.
Non ci resta che provare la scheda wifi.
Verifichiamo che vi sia la presenza di reti wifi (magari il vostro router domestico, come nel mio caso!)
(ndr: se non rilevate nulla, potrebbe essere necessario impostare prima l'essid sulla scheda, per effettuare lo scan!!!)
Code: |
masterix 80211g # iwlist wlan0 scan
wlan0 Scan completed :
Cell 01 - Address: 00:C0:49:F3:B6:48
ESSID:"masterixwifi"
Protocol:IEEE 802.11g
Mode:Managed
Frequency:2.417 GHz (Channel 2)
Quality:0/100 Signal level:-60 dBm Noise level:-256 dBm
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Extra:bcn_int=100
Extra:atim=0
...
masterix 80211g #
|
Come si può ben notare, nel mio caso, trova il router di casa, al quale ho assegnato l'ESSID "masterixwifi".
Trovato l'ESSID, dobbiamo specificare alla nostra scheda wireless, quale ESSID usare:
Code: |
masterix 80211g # iwconfig wlan0 essid masterixwifi
|
Successivamente, impostiamo la modalità di funzionamento del router (nel mio caso, così come penso anche negli altri casi "casalinghi", è Managed):
Code: |
masterix 80211g # iwconfig wlan0 mode Managed
|
Se, per puro caso, avete impostato una chiave WEP, dovremo specificare alla scheda wireless qual è:
Code: |
masterix 80211g # iwconfig wlan0 key restricted QUI_CHIAVE_WEP
|
se avete fatto tutto bene, la vostra rete dovrebbe essere al 90% pronta...
non ci resta che alzare l'interfaccia:
Code: |
masterix 80211g # ifconfig wlan0 up
(oppure)
masterix 80211g # dhclient wlan0
(oppure)
masterix 80211g # dhcpcd wlan0
|
Se non avete il DHCP attivo sul router, vi toccherà assegnare alla scheda un IP con il semplice utilizzo delle vostre mani; quindi ipotizzando che:
IP del router: 192.168.0.1
IP della scheda: 192.168.0.2
Code: |
masterix 80211g # ifconfig wlan0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255 up
masterix 80211g # route add default gw 192.168.0.1 wlan0
|
Ora tutto dovrebbe essere completato... e la vostra rete (*SGRAT* *SGRAT*) dovrebbe funzionare...
Visto che sono le 3:30, direi che qualche dimenticanza me la potete anche concedere... ci tengo a precisare che non mi ritengo un esperto, ma volevo semplicemente aiutare (nel mio piccolo) tutti coloro che vogliono usare una scheda wireless sotto GNU Linux...
ogni commento, suggerimento e/o critica costruttiva, è ben accetto.
Ciao a tutti |
|