Configurare manualmente una connessione wireless

Vediamo come configurare manualmente la nostra distribuzione Linux affinché essa possa connettersi automaticamente ad una rete infrastrutturale o Ad-Hoc richiamando le configurazioni impostate nel file /etc/network/interfaces.

Il file /etc/network/interfaces

Le distribuzioni /Linux (solitamente) memorizzano le impostazioni relative alle schede di rete in alcuni file di testo che vengono letti ad ogni avvio per l’utilizzo delle configurazioni in essi contenute. Questo file è /etc/network/interfaces, vediamo in breve di cosa si tratta.

In realtà non sarebbe necessario memorizzare le configurazioni delle schede di rete in questo file. Infatti, con le giuste opzioni e varie sintassi, tramite i comandi ifconfig [1] e route [2] possiamo configurare la nostra scheda di rete. Certo che doverlo fare ad ogni avvio del sistema diventa noioso, per questo memorizzare tutto all’interno di un file di testo e’ cosi’ utile.

In questo modo per attivare/disattivare la scheda di rete ethN (dove N e’ un numero, la prima scheda di rete e’ eth0, poi eth1 e così via) basterà dare il seguente comando:
# ifup eth0
# ifdown eth0

le varie configurazioni, parametri, ecc. verranno presi automaticamente dal file /etc/network/interfaces.

Network Interfaces 291x300 Configurare manualmente una connessione wireless

Il file /etc/network/interfaces è suddiviso in blocchi, ognuno dei quali definisce un’interfaccia di rete. Solitamente il primo blocco è relativo a lo (definisce l’indirizzo 127.0.0.1 per il locale), ed è il seguente:

auto lo
iface lo inet loopback

La prima riga con l’opzione auto indica al sistema di configurare questa interfaccia automaticamente ad ogni avvio. Il comando iface, contenuto nella seconda riga, indica la sezione che definisce un’interfaccia, l’interfaccia e’ lo, viene utilizzato il protocollo IPv4 (inet) e viene configurata come loopback.

Il discorso non e’ poi molto diverso per le schede di rete, ad esempio, per una scheda di rete in cui l’assegnazione dei parametri identificativi non sia automatica il contenuto sara’ simile a questo:

iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.254

A questo punto occorre spiegare un po’ troppe cose, cerco di farlo in modo molto (forse troppo) breve: adress e’ l’indirizzo che ci identifica all’interno della rete interna (non e’ quindi l’indirizzo IP tramite il quale veniamo identificati in internet); netmask e network definiscono la rete; broadcast e’ l’indirizzo che raggiunge i vari host della rete; gatewy e’ un tramite tra la nostra rete e le altre (compresa internet).

Nel caso in cui ci troviamo in presenza di un server DHCP e vogliamo che sia questo ad assegnare automaticamente i dati necessari, nel file interfaces sara’ questo il contenuto relativo alla nostra scheda di rete:

iface eth0 inet dhcp

I due esempi visti sopra (static e dhcp) possono contenere anche altre opzioni, ad esempio:

allow-hotplug eth0
iface eth0 inet dhcp

la prima riga serve per far configurare l’interfaccia eth0 appena viene identificata. E’ un’opzione molto utile nel caso di schede di rete USB, altrimenti e’ sufficiente l’opzione auto:

auto eth0
iface eth0 inet dhcp

Per quanto riguarda il caso di schede di rete wireless, vi rimando al post che avevo scritto su questo argomento.

In realta’ queste sono configurazioni veramente di base, basta dare un’occhiata al manuale di interfaces:
$ man interfaces
per rendersi conto delle enormi possibilita’ offerte e delle opzioni possibili.

A titolo di piccolo esempio, e’ possibile assegnare un alias per un’interfaccia in questo modo:

iface eth0:1 inet static
address 192.168.1.15
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

In queto modo definiamo un alias (eth0:1) per eth0.

Per quanto riguarda la risoluzione dei nomi host, e’ possibile aggiungere o modificare i [3] apportando le modifiche nel file /etc/resolv.conf. A esempio:

nameserver 195.210.91.100

indica che verra’ usato un DNS che ha per indirizzo 195.210.91.100. Ma lasciamo perdere, il discorso si complicherebbe. Resta comunque il consiglio (per chi volesse approfondire) di leggersi le varie guide e i manuali che trovate in giro per il vostro computer e su internet.

[1] ifconfig assegna ad ogni interfaccia di rete un indirizzo IP, la netmask, l’eventuale indirizzo di broadcast, il network e vari parametri.
[2] route imposta il gateway e in generale le tabelle di routing.
[3] Il server DNS permette di associare un nome host ad un indirizzo.


Configurare le connessioni Wireless

Prima di tutto scarichiamoci l’essenziale per ogni decente connessione (si spera dunque sia protetta da una chiave WPA almeno). Installiamo:

sudo apt-get install wpasupplicant wireless-tools

Il pacchetto wpasupplicant fornisce la negoziazione di chiavi con l’autenticatore WPA e controlla le connessioni con le reti IEEE 802.11i (WPA2). Invece il pacchetto wireless-tools contiene gli strumenti usati per manipolare le Linux Wireless Extensions (un’interfaccia che consente di impostare specifici parametri di una wireless e ottenerne informazioni).

ISA PCI NIC 300x225 Configurare manualmente una connessione wireless

Le configurazioni della nostra interfaccia di rete si trovano nel file /etc/network/interfaces. Ma prima di tutto ci occorrono alcune informazioni sulla nostra scheda wireless, e le otteniamo con questo comando:
# iwlist scan
E sul tipo di connessione (WEP o WPA, dinamica o statica e se statica con quali indirizzi).

LAN schema 150x150 Configurare manualmente una connessione wirelessUna volta capito qual’e’ la nostra scheda (solitamente wlan0) e quale protocollo di protezione dobbiamo usare, possiamo cominciare con la configurazione vera e propria, procediamo quindi con la modifica del nostro file interfaces per fare in modo che la connessione avvenga in modo automatico.

Supponiamo che il nostro file di configurazione contenga queste righe:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
 
# The loopback network interface
auto lo
iface lo inet loopback

o poco piu’ magari quelle relative alla connessione ethernet. A questo punto dobbiamo aggiungerci le righe relative alla nostra connessione wireless.

WIRED EQUIVALENT PRIVACY (WEP) – Supponendo la nostra rete Wi-Fi sia protetta dal protocollo WEP al nostro file di configurazione:
# vim /etc/network/interfaces
dobbiamo aggiungere le righe relative alla nostra scheda wireless con DHCP (mettete il giusto nome della vostra rete e la chiave WPE per l’autenticazione):

# Scheda di rete wireless con DHCP
auto wlan0
iface wlan0 inet dhcp
wireless-channel 11
wireless-essid "NOMERETEWIRELESS"
wireless-key CHIAVEWPE

o con indirizzo statico (mettete ovviamente gli indirizzi giusti):

# Scheda di rete wireless con indirizzo statico
auto wlan0
iface wlan0 inet static
address 192.168.1.111
netmask 255.255.255.0
gateway 182.168.1.1
broadcast 192.168.1.255
wireless-channel 11
wireless-essid "NOMERETEWIRELESS"
wireless-key CHIAVEWPE

L’assegnazione degli indirizzi o e’ statica o e’ dinamica, mai entrambe, quindi nel vostro file di configurazione mettete solo quello che corrisponde alla vostra connessione.

A questo punto non resta che riavviare il sistema. Potete anche riavviare solo i servizi di rete:
# ifdown wlan0
# ifup wlan0

Ora controlliamo con questo comando:
# iwconfig wlan0
che tutto sia riconosciuto correttamente.

wpa wireless 802 11 150x150 Configurare manualmente una connessione wirelessWI-FI PROTECTED ACCESS (WPA) – Vediamo ora il caso in cui la vostra rete wireless sia protetta dal protocollo WPA. In questo caso dobbiamo modificare il file wpa_supplicant.conf:
# vim /etc/wpa_supplicant.conf
che deve contenere quanto segue:

network={
        ssid="NOMERETEWIRELESS"
        psk="CHIAVEWPA"
        key_mgmt=WPA-PSK
        proto=WPA
}

vim edited blue Configurare manualmente una connessione wirelessOra, per far partire in automatico la connessione, andiamo a modificare il solito file di configurazione:
# vim /etc/network/interfaces
a cui noi dobbiamo aggiungere le righe relative alla nostra scheda wireless con DHCP (mettete il giusto nome della vostra rete e la chiave WPA per l’autenticazione):

# Scheda di rete wireless con DHCP
auto wlan0
iface wlan0 inet dhcp
up wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

o con indirizzo statico (mettete ovviamente gli indirizzi giusti):

# Scheda di rete wireless con indirizzo statico
auto wlan0
iface wlan0 inet static
address 192.168.1.111
netmask 255.255.255.0
gateway 182.168.1.1
broadcast 192.168.1.255
wireless-channel 11
up wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -B

Anche in questo caso, l’assegnazione degli indirizzi o e’ statica o e’ dinamica, mai entrambe, quindi nel vostro file di configurazione mettete solo quello che corrisponde alla vostra connessione.

A questo punto non resta che riavviare il sistema. Potete anche riavviare solo i servizi di rete:
# ifdown wlan0
# ifup wlan0

Ora controlliamo con questo comando:
# iwconfig wlan0
che tutto sia riconosciuto correttamente.

Se avete dubbi, o volete configurare alcune opzioni particolari, oppure volete semplicemente approfondire vi rimando al manuale di interfaces:
$ man interfaces

Fonte: Configurazione di una connessione wireless

Questo articolo è nato come rielaborazione di due articoli del blog di Idl3 coperti da licenza CC BY 3.0:

  1. Un accenno al file /etc/network/interfaces
  2. HowTo: configurare la connessione wireless

tags Tags: , , , , , , ,
categorieCategorie: Linux

Forge Of Empires Italia

One Response to “Configurare manualmente una connessione wireless”

  1. gekseppe on febbraio 25th, 2010 17:24

    Davvero un gran bel lavoro !
    Grazie mille.