NdisWrapper: differenze tra le versioni
S3v (discussione | contributi) Nessun oggetto della modifica |
(revisionata) |
||
Riga 1: | Riga 1: | ||
==Introduzione== | ==Introduzione== | ||
Questa guida indica come utilizzare NdisWrapper, che permette di utilizzare i driver non nativi per le schede wireless sotto GNU/Linux. | Questa guida indica come utilizzare NdisWrapper, che permette di utilizzare i driver non nativi per le schede wireless sotto GNU/Linux. | ||
Per quanto NdisWrapper utilizzi quindi driver spesso proprietari, dunque contrari all'etica del software libero, è un programma che viene rilasciato sotto GPL. | Per quanto NdisWrapper utilizzi quindi driver spesso proprietari, dunque contrari all'etica del software libero, è un programma che viene rilasciato sotto GPL. | ||
Il progetto NdisWrapper fornisce un modulo per il Kernel di Linux che è in grado di caricare ed eseguire i drivers Ndis (Windows network driver API) sostituendo di fatto il mancato rilascio dei | Il progetto NdisWrapper fornisce un modulo per il Kernel di Linux che è in grado di caricare ed eseguire i drivers Ndis (Windows network driver API) sostituendo di fatto il mancato rilascio dei driver nativi. NdisWrapper lavora bene con molte schede miniPCI (builtin), PCI, PCMCIA (solo Cardbus) nonché con le schede USB. Per verificare il livello di compatibilità con la vostra scheda Wireless consultate il progetto Wiki di NdisWrapper [http://ndiswrapper.sourceforge.net/phpwiki/index.php/ qui]. | ||
Il sito web di riferimento per il progetto NdisWrapper è [http://ndiswrapper.sourceforge.net/ questo]. Proprio dal sito del progetto ho provveduto a scaricare la distribuzione in formato tarball che contiene i codici sorgenti. | Il sito web di riferimento per il progetto NdisWrapper è [http://ndiswrapper.sourceforge.net/ questo]. Proprio dal sito del progetto ho provveduto a scaricare la distribuzione in formato tarball che contiene i codici sorgenti. | ||
Riga 50: | Riga 50: | ||
</pre> | </pre> | ||
il driver Ndis è stato installato, per verificare l'insieme dei | il driver Ndis è stato installato, per verificare l'insieme dei driver installati utilizziamo il comando <code>ndiswrapper</code>: | ||
<pre> | <pre> | ||
Riga 60: | Riga 60: | ||
===Utilizzo=== | ===Utilizzo=== | ||
A questo punto dobbiamo fare in modo di caricare in memoria il modulo ndiswrapper in modo che lo stesso possa finalmente gestire la nostra scheda Wireless: | A questo punto dobbiamo fare in modo di caricare in memoria il modulo <code>ndiswrapper</code> in modo che lo stesso possa finalmente gestire la nostra scheda Wireless: | ||
<pre> | <pre> | ||
Riga 86: | Riga 86: | ||
</pre> | </pre> | ||
per consentire alla nostra macchina di caricare il modulo ndiswrapper con il boot del sistema operativo dobbiamo modificare il file <code>/etc/modules </code>utilizzando sempre l'utility ndiswrapper: | per consentire alla nostra macchina di caricare il modulo <code>ndiswrapper</code> con il boot del sistema operativo dobbiamo modificare il file <code>/etc/modules </code>utilizzando sempre l'utility ndiswrapper: | ||
<pre> | <pre> |
Versione delle 14:56, 30 gen 2010
Introduzione
Questa guida indica come utilizzare NdisWrapper, che permette di utilizzare i driver non nativi per le schede wireless sotto GNU/Linux. Per quanto NdisWrapper utilizzi quindi driver spesso proprietari, dunque contrari all'etica del software libero, è un programma che viene rilasciato sotto GPL.
Il progetto NdisWrapper fornisce un modulo per il Kernel di Linux che è in grado di caricare ed eseguire i drivers Ndis (Windows network driver API) sostituendo di fatto il mancato rilascio dei driver nativi. NdisWrapper lavora bene con molte schede miniPCI (builtin), PCI, PCMCIA (solo Cardbus) nonché con le schede USB. Per verificare il livello di compatibilità con la vostra scheda Wireless consultate il progetto Wiki di NdisWrapper qui.
Il sito web di riferimento per il progetto NdisWrapper è questo. Proprio dal sito del progetto ho provveduto a scaricare la distribuzione in formato tarball che contiene i codici sorgenti.
Installazione
Compilazione
La procedura di compilazione e di installazione dei sorgenti è piuttosto semplice:
# tar zxvf ndiswrapper-1.4rc1.tar.gz # cd ndiswrapper-1.rc1 # make && make install
In alternativa è possibile utilizzare la versione pacchettizzata da Debian:
# apt-get install ndiswrapper-common ndiswrapper-source ndiswrapper-utils-1.9
e nel caso non li avessimo già installati:
# apt-get install module-init-tools module-assistant wireless-tools wpasupplicant
Configurazione
A questo punto avviamo ndiswrapper:
# ndiswrapper Usage: ndiswrapper OPTION Manage ndis drivers for ndiswrapper. -i inffile Install driver described by 'inffile' -d devid driver Use installed 'driver' for 'devid' -e driver Remove 'driver' -l List installed drivers -m Write configuration for modprobe -hotplug (Re)Generate hotplug information
La procedura di installazione del driver Ndis è piuttosto banale, in genere lo stesso viene incluso nel supporto CDROM allegato alla scheda Wireless o al PC:
# ndiswrapper -i /media/cdrom/drivers/nomedriver.inf
il driver Ndis è stato installato, per verificare l'insieme dei driver installati utilizziamo il comando ndiswrapper
:
# ndiswrapper -l Installed ndis drivers: nomedriver driver present, hardware present
Utilizzo
A questo punto dobbiamo fare in modo di caricare in memoria il modulo ndiswrapper
in modo che lo stesso possa finalmente gestire la nostra scheda Wireless:
# m-a prepare # m-a a-i ndiswrapper # modprobe ndiswrapper
la scheda Wireless viene finalmente inizializzata ed è pronta per lavorare, per verificare lo stato dell'interfaccia Wireless utilizziamo l'utility iwconfig (Wireless Tools for Linux - [1]):
# 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:0 Missed beacon:0
per consentire alla nostra macchina di caricare il modulo ndiswrapper
con il boot del sistema operativo dobbiamo modificare il file /etc/modules
utilizzando sempre l'utility ndiswrapper:
# ndiswrapper -m Adding "alias wlan0 ndiswrapper" to /etc/modules
Per utilizzare una connessione di rete Wireless che dobbiamo procedere con la configurazione della scheda di rete Wireless affinché la stessa sia in grado di colloquiare con l'access point (AP). Ora ricorriamo nuovamente all'utilizzo dell'utility iwconfig:
# iwconfig -h Usage: iwconfig interface [essid {NN|on|off}] [nwid {NN|on|off}] [mode {managed|ad-hoc|...} [freq N.NNNN[k|M|G]] [channel N] [ap {N|off|auto}] [sens N] [nick N] [rate {N|auto|fixed}] [rts {N|auto|fixed|off}] [frag {N|auto|fixed|off}] [enc {NNNN-NNNN|off}] [power {period N|timeout N}] [txpower N {mW|dBm}] [commit]
in alto possiamo visualizzare alcune delle opzioni che utilizzeremo per configurare al meglio la nostra scheda di rete Wireless, in particolare utilizzeremo le seguenti impostazioni:
# iwconfig wlan0 rate auto # iwconfig wlan0 mode managed # iwconfig wlan0 channel 11 # iwconfig wlan0 key s:WEP_KEY enc open # iwconfig wlan0 essid nome_nodo
a questo punto dovremmo attivare l'interfaccia di rete wlan0 per collegarci con l'AP (access point)
# ifconfig wlan0 up
ora non ci resta che farci assegnare un indirizzo IP dall'AP utilizzando il nostro client DHCP:
# dhclient wlan0
In alternativa possiamo crearci uno script:
#!/bin/sh echo Abilitazione Scheda Wireless in corso...... iwconfig wlan0 rate auto iwconfig wlan0 essid ESSID_VOSTRA_RETE iwconfig wlan0 mode Ad-Hoc # o managed , vedete voi iwconfig wlan0 key restricted CHIAVE_DELLA_VOSTRA_RETE ifconfig wlan0 INDIRIZZO.IP.DELLA.WLAN0 up iwconfig wlan0 power on route add default gw INDIRIZZO.IP.DEL.GATEWAY echo Scheda Wireless abilitata Correttamente....
Ringraziamenti
Un ringraziamento a Stefano Tagliaferri per aver scritto l'how -to su cui mi sono basato per la mia esperienza con ndiswrapper.
Autore: jango