Configurare il wifi su Linux (Ubuntu) in 5 passi

Wifi
Ho deciso di scrivere questa guida perche’ ho notato che uno dei problemi piu’ frequenti per chi comincia a usare Linux e’ configurare il Wireless.

Attenzione: Durante la guida presuppongo che la vostra scheda sia gia’ stata riconosciuta e che siano caricati gli appositi drivers. Potete verificarlo dando i seguenti comandi.

lspci

e cercate qualcosa che dice “wlan”, “wifi”, “wireless”, oppure anche

sudo lshw -class network

e dovreste avere un output di questo tipo

*-network:0
description: Wireless interface
product: AR5212/AR5213 Multiprotocol MAC/baseband processor
vendor: Atheros Communications Inc.
physical id: 9
bus info: pci@0000:00:09.0
logical name: wifi0
version: 01
serial: 00:0b:cd:5c:cb:ec
width: 32 bits
clock: 33MHz
capabilities: pm bus_master cap_list logical ethernet physical wireless
configuration: broadcast=yes driver=ath_pci latency=168 maxlatency=28 mingnt=10 module=ath_pci multicast=yes wireless=IEEE 802.11g

Nello spazio “module=” potete vedere il modulo del kernel (il driver) associato alla periferica (in questo caso e’ ath_pci). Controllate che il modulo sia caricato con

lsmod | grep nome_modulo

Ok, possiamo cominciare..

1) Disattiviamo le altre interfacce:
Se usate anche la connessione via cavo Ethernet, sarebbe meglio disattivare l’interfaccia eth0 (o analoga) prima di connettersi con il wireless. E’ possibile farlo con il comando

sudo ifconfig eth0 down

2) “Tiriamo su” l’interfaccia: dall’output del comando

sudo lshw -class network

possiamo scoprire a quale nome e’ associata la nostra scheda wireless (dipende dai driver usati) leggendo alla riga “logical name”. Nel mio caso, come potete leggere sopra, si chiama wifi0 .

Se usiamo DHCP che assegna da solo gli indirizzi ip, bastera’ digitare

sudo ifconfig wifi0 up

per attivare l’interfaccia. Se invece vogliamo un ip statico, dobbiamo modificare il comando precedente con

sudo ifconfig wifi0 192.168.1.13 up

(supponendo che 192.168.1.13 sia l’ip che vogliamo usare).

    Non e’ finita qui

: infatti alcuni drivers prevedono che si attivi una interfaccia “madre” virtuale (chiamata a volte wifi0, a volte wifimaster, ecc..) la quale comanda altre interfacce “figlia”, dove queste ultime pero’ non sono virtuali ma si riferiscono alla scheda wireless vera e propria. In questo modo e’ possibile gestire piu’ schede wifi insieme. Tuttavia, anche se ne abbiamo solo una dobbiamo attivare sia l’interfaccia “madre” che quella “figlia”. Come accorgersene? Dando il comando

ifconfig wifi0

(dove wifi0 e’ il nome dell’interfaccia attivata precedentemente) se wifi0 e’ una interfaccia virtuale avremo un output simile a questo

wifi0 Link encap:UNSPEC HWaddr 00-0B-CD-5C-CB-EC-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:52016 errors:0 dropped:0 overruns:0 frame:1199
TX packets:513 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:199
Byte RX:4428162 (4.2 MB) Byte TX:22182 (21.6 KB)
Interrupt:5

se invece e’ direttamente l’interfaccia reale sara’ simile a questo

wifi0 Link encap:Ethernet HWaddr 00-0B-CD-5C-CB-EC-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:52016 errors:0 dropped:0 overruns:0 frame:1199
TX packets:513 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:199
Byte RX:4428162 (4.2 MB) Byte TX:22182 (21.6 KB)
Interrupt:5

Se la vostra interfaccia fosse virtuale, e doveste attivare l’interfaccia “figlia” reale, fate riferimento alla documentazione del driver che usate per capire come vengono chiamate le inerfacce “figlia” (a volte ath0, a volte wlan0, ecc..). Nel mio caso, sono state chiamate ath0. Quindi per attivare l’interfaccia figlia (usando il DHCP) basta dare nuovamente lo stesso comando cambiando il nome

sudo ifconfig ath0 up

oppure, volendo usare un ip statico

sudo ifconfig ath0 192.168.1.13 up

Verificate che tutto sia andato a buon fine dando il comando

ifconfig

e controllando che fra gli altri avete due blocchi simili a questi

ath0 Link encap:Ethernet HWaddr 00:0b:cd:5c:cb:ec
inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:1131 errors:0 dropped:0 overruns:0 frame:0
TX packets:3 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:0
Byte RX:71539 (69.8 KB) Byte TX:230 (230.0 B)

wifi0 Link encap:UNSPEC HWaddr 00-0B-CD-5C-CB-EC-00-00-00-00-00-00-00-00-00-00
inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:52016 errors:0 dropped:0 overruns:0 frame:1199
TX packets:1828 errors:0 dropped:0 overruns:0 carrier:0
collisioni:0 txqueuelen:199
Byte RX:4428162 (4.2 MB) Byte TX:82672 (80.7 KB)
Interrupt:5

Da ora in poi per non ripeterlo ogni volta assumero’ che la vostra interfaccia “reale”, cioe’ quella associata alla scheda wireless vera e propria, si chiami ath0.

Nota: Se usate ip statico, ed il vostro driver prevede una interfaccia virtuale, potete anche evitare di assegnare ad essa un ip statico, ma farlo soltanto per l’interfaccia reale.

3) Controllare la presenza di reti wireless: assicurandoci che l’interruttore wireless sul nostro pc sia acceso (esso e’ presente in quasi tutti i portatili), diamo il comando

iwlist ath0 scan

e se siamo nelle vicinanze di una rete wifi, dovremmo ottenere un output simile a questo

ath0 Scan completed :
Cell 01 – Address: 00:11:95:9D:56:D0
ESSID:”G604T_WIRELESS”
Mode:Master
Frequency:2.437 GHz (Channel 6)
Quality=23/70 Signal level=-72 dBm Noise level=-95 dBm
Encryption key:off
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 22 Mb/s
6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Extra:bcn_int=200

Adesso quindi siamo sicuri che il nostro pc vede la rete wifi e abbiamo anche le informazioni sull’ESSID (che avremmo gia’ dovuto sapere, comunque..) della nostra rete.

4) Impostare ESSID e chiavi di cifratura: se non usiamo chiavi di cifratura, digitiamo

sudo iwconfig ath0 essid il_tuo_essid

dove ovviamente al posto di “il_tuo_essid” dovete sostituire l’ESSID della vostra rete, che avete ottenuto nel Punto 3. Se usiamo anche chiavi di cifratura, allora sostituiamo il precedente comando con

sudo iwconfig ath0 essid il_tuo_essid key la_tua_chiave

Iwconfig comunque da la possibilita’ di impostare altri parametri, che potete vedere digitando

iwconfig –help

5) Impostare il routing: equivale a dire “impostare il gateway predefinito”. Il gateway normalmente non e’ altro che l’indirizzo ip del router, che di solito e’ 192.168.1.1. Fate comunque riferimento alla documentazione del vostro router per sapere il suo indirizzo ip di default.
Assumiamo comunque che quello del nostro sia 192.168.1.1
Diamo il comando

sudo route add default gw 192.168.1.1 dev ath0

A questo punto dovremmo essere collegati completamente.

Nota: Se non avete gia’ impostato i dns (suppongo di si) fatelo scrivendoli (con permessi di root) nel file /etc/resolv.conf nella forma nameserver indirizzo_dns

Controlliamo la connessione:

Connessione al Gateway:

ping 192.168.1.1

Connessione ad Internet:

ping www.google.com

In entrambi i casi dovremmo ottenere un output simile a questo

PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=4.43 ms
64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.864 ms

— 192.168.1.1 ping statistics —
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.864/2.647/4.430/1.783 ms

Buona Navigazione! =)

Lascia un commento