Wireless in Roaming Mode per Debian e Ubuntu

  Debian, Ubuntu

Ultimamente sto usando un vecchio laptop molto limitato in risorse con installata ‘ Testing’. Mi sono sbizzarrito ad usare le soluzioni più pratiche e possibilmente senza applicazioni con interfaccia grafica.
Il suddetto portatile non possiede scheda ethernet e l’unico modo che ho per metterlo in rete è di usare una vecchia scheda PCMCIA WiFi.
Non conoscendo nessuna utility per configurare le schede wireless inizio a cercare  nei repository uno strumento che soddisfacesse le mie esigenze.
Dopo essermi scontrato con varie applicazioni grafiche decido di spendere un po di tempo per fare le cose alla ‘Debian Way’ che tanto piace al sottoscritto.
Dopo aver installato wpa_supplicant:
apt-get install wpa_supplicant
mi tuffo nella documentazione dello stesso e scopro un modo interessante per configurare la mia scheda in Roaming Mode, il metodo sfrutta le utility wpa_cli/wpa_action ma non starò ad annoiarvi con i dettagli, per altro non necessari per la configurazione.

Dettagli per la configurazione:

1) Modificate/Create il file /etc/wpa_supplicant/wpa_supplicant.conf:

# Consente a root e utenti che appartengono al gruppo netdev
# di interagire con wpa_supplicant (wpa_cli, wpa_action, wpa_gui...).
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev

# Di seguito vanno specificate le reti alle quali ci si vuole connettere.
# In /usr/share/doc/wpa_supplicant/examples trovate come usare i vari
# parametri. Il parametro importante per noi è 'id_str' che ci consente
# di interagire con 'ifupdown', gli altri servono ad identificare e
# agganciarsi alle reti. Sono riportati esempi a puro scopo esplicativo.

# WiFi a casa (WEP)
network{
        ssid="Phobos WiFi"
        key_mgmt=MANAGED
        # NOTA: qui ci va la chiave di autenticazione
        key0=...
        # NOTA: l'interfaccia sarà individuata da 'wificasa'
        id_str="wificasa"
}

# WiFi a lavoro (WPA)
network{
        ssid="Mars inc."
        # ATTENZIONE: qui ci va la chiave di autenticazione
        psk=...
        # NOTA: l'interfaccia sarà individuata da 'wifiwork'
        id_str="wifiwork"
}

# WiFi libero
network{
    key_mgmt=NONE
    # ATTENZIONE: qui potremmo evitare di usare 'id_str' e
    # l'interfaccia sarebbe individuata da 'default'
    # io preferisco usare 'freewifi'
    id_str='freewifi'
}

2) Configurare /etc/network/intefaces: aggiungere le seguenti righe.

# ATTENZIONE: l'interfaccia di roaming DEVE usare il metodo inet manual.
# Per avviare il demone automaticamente si deve usare allow-hostplug
# oppure auto. Supporremo che il dispositivo WiFi si chiami 'wlan0' e il
# driver da usare con wpa_supplicant sia 'wext'

allow-hotplug wlan0
iface wlan0 inet manual
        wpa-driver wext
        wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf

# le seguenti corrispondono agli AP configurati in wpa_supplicant.conf

iface freewifi inet dhcp

iface wificasa inet dhcp

iface wifiwork inet static
        address 192.168.1.69
        netmask 255.255.255.0
        gateway 192.168.1.254

A questo punto potreste voler proteggere le informazioni sensibili contenute in wpa_supplicant.conf con un bel:
chmod 0600 /etc/wpa_supplicant/wpa_supplicant.conf
Una volta riavviata la rete con:
/etc/init.d/ restart
il controllo di ogni interfaccia tra freewifi, wificasa e wifiwork sarà affidato al demone di roaming che si occuperà di agganciarsi automaticamente alle reti presenti. Ad ogni modo è possibile interagire con wpa_supplicant tramite wpa_action/wpa_cli.

Io personalmente con questo metodo mi trovo benissimo e vivo felice senza i vari network-manager/wifi-radar/wicd/… e il mio vecchio laptop inizia a navigare non appena trova una rete disponibile senza che io faccia niente.

Buon divertimento!

LEAVE A COMMENT

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.