Wireless - Come configurarla
Questo piccolo tutorial spiega come configurare una wireless su slackware 10.2, in particolare verrà trattato il caso in cui il sistema venga connesso come client di una rete con dhcp server già attivo.
Per questo tutorial è necessario avere i permessi di root e il vostro editor preferito e i wireless tools.
Configurazione
Per configurare una scheda wireless si usano i wireless tools. I parametri che si possono passare sono:
iwconfig interface \ [essid X] \Nome della Lan wireless [nwid N] \Domain Id [freq F] \Frequenza [channel C] \Canale [sens S] \Sensibilità [mode M] \modo - Managed, Ad-hoc [ap A] \Access Point [Key K] \Chiave Di criptazione
Vi sono 2 modi per far caricare la configrazione:
Inet1
Il file /etc/rc.d/rc.inet1.conf gestisce le configurazioni di rete del sistema. L'ultima parte è dedicata alla wireless:
IFNAME[4]="wlan0" #IPADDR[4]="" #NETMASK[4]="" USE_DHCP[4]="yes" #DHCP_HOSTNAME[4]="icculus-wireless" DHCP_KEEPRESOLV[4]="yes" #DHCP_KEEPNTP[4]="yes" #DHCP_KEEPGW[4]="yes" #DHCP_IPADDR[4]="" #WLAN_ESSID[4]=mywireless #WLAN_MODE[4]=Managed ##WLAN_RATE[4]="54M auto" ##WLAN_CHANNEL[4]="auto" ##WLAN_KEY[4]="D5AD1F04ACF048EC2D0B1C80C7" ##WLAN_IWPRIV[4]="AuthMode=WPAPSK EncrypType=TKIP WPAPSK=7B1ABEEB5D197741923ED26727569C365E31212096A0EAFAD563B268BAD01CAF TxRate=0" #WLAN_WPA[4]="wpa_supplicant" #WLAN_WPADRIVER[4]="ndiswrapper" ## Some examples of additional network parameters that you can use. ## Config information for wlan0: #IFNAME[4]="wlan0" # Use a different interface name nstead of # the default 'eth4' #HWADDR[4]="00:01:23:45:67:89" # Overrule the card's hardware MAC address #MTU[4]="" # The default MTU is 1500, but you might need # 1360 when you use NAT'ed IPSec traffic. #DHCP_KEEPRESOLV[4]="yes" # If you dont want /etc/resolv.conf overwritten #DHCP_KEEPNTP[4]="yes" # If you don't want ntp.conf overwritten #DHCP_KEEPGW[4]="yes" # If you don't want the DHCP server to change # your default gateway #DHCP_IPADDR[4]="" # Request a specific IP address from the DHCP # server #WLAN_ESSID[4]=DARKSTAR # Here, you can override _any_ parameter # defined in rc.wireless.conf, by prepending # 'WLAN_' to the parameter's name. Useful for # those with multiple wireless interfaces. #WLAN_IWPRIV[4]="AuthMode=WPAPSK EncrypType=TKIP WPAPSK=thekey TxRate=0" # Some drivers require a private ioctl to be # set through the iwpriv command. If more than # one is required, you can place them in the # IWPRIV parameter (space-separated, see the # example).
modificando i parametri della wireless con la propria configurazione, verranno caricati i parametri della rete. Il secondo file da modificare è /etc/rc.d/rc.wireless.conf. La modifica di questo file è subordinata a quello precedente per cui se avete già impostato i parametri non sarà necessario modificarlo. Per fa si che a seconda della scheda di rete inserita venga caricata una configurazione diversa leggete il mac address della scheda:
# ifconfig | grep wlan wlan0 Link encap:Ethernet HWaddr 00:09:5B:74:37:55
quindi aggiungete al /etc/rc.d/rc.wireless.conf:
00:09:5B:*) INFO="Configurazione della mia scheda" ESSID="myessid" MODE="Managed" CHANNEL="1" RATE="auto" KEY="chiave in esadecimale" ;;
le cifre sono le prime 6 del mac address. Fatto questo riavviate /etc/rc.d/rc.inet1
$ su # sh /etc/rc.d/rc.inet1 restart
Consiglio di non utilizzare tutti i parametri possibili in quanto il sistema riesce comunque a collegarsi e con delle condizioni troppo restrittive (o sbagliate) potrebbe non funzionare.
Analisi dei parametri nell'inet1.conf
IFNAME
Nome della device, normalmente wlanX, ma in alcuni casi anche ath, per conoscere l'elenco delle periferiche abilitate alla connessione wireless usare iwconfig -a
IPADDR
Ip statico
NETMASK
Maschera utilizzata
USE_DHCP
Autorizza l'uso del dhcp
DHCP_HOSTNAME
Nome del dhcp server
DHCP_KEEPRESOLV
Impostando yes il file resolv.conf non verrà sovrascritto, in questo modo potrete mantenere i dns che avete impostato in precedenza.
DHCP_KEEPNTP
impostando yes il file ntp.conf non veràà sovrascritto, si può lasciare commentato
DHCP_KEEPGW
Impostando yes il dhcp client non cambierà il gateway già impostato
DHCP_IPADDR
Ip del dhcp server, il più delle volte non è necessario inserirlo
WLAN_ESSID
Il nome della rete wireless
WLAN_MODE
Tipo di lan le opzioni sono: managed, ad-hoc
WLAN_RATE
Velocità predefinita
WLAN_CHANNEL
Canale utilizzato
WLAN_KEY
Chiave wep della wireless
WLAN_IWPRIV
Parametri per configurare una wireless privata, vengono passati i parametri:
AuthMode=WPAPSK
Tipo di autorizzaziorn
EncrypType=TKIP
Algoritmo di criptazione
WPAPSK
Chiave wpa WLAN_WPA Tipologia di wpa usato di default viene selezionato wpa_supplicant
WLAN_WPADRIVER
Driver che gestisce la wpa
HWADDR
Ridefinisce il MAC address della scheda
Script ad hoc
Copiate il testo di configurazione già scritto qui sotto e modificatelo con i vostri parametri
iwconfig wlan0 mode Managed iwconfig wlan0 key restricted xxxxxxxxxxxxxxxxxxxxxxx iwconfig wlan0 essid LinuxLan ifconfig wlan0 up dhcpcd wlan0 pico File di configurazione
copiate all'interno il file sopra
su mv File di configurazione /usr/local/ chmod +x /usr/local/File di configurazione echo /usr/local/File di configurazione >> /etc/rc.d/rc.local
Il problema che si presenta con uno script di questo tipo è che verrà richiamato solo nel caso in cui abbiate l'access point già attivo e la scheda di rete già collegata, mentre inserendo i parametri nell'inet1 sarà il sistema che lo gestirà autonomamente.
Problemi
Ho configurato la connessione, ho l'access point acceso ma non va:
Per vedere se il sistema rileva l'access point usate:
iwlist wlan0 scan
In questo modo vi verranno elencati tutti i nodi di connessione raggiungibili dalla vostra rete. Se non c'è alcun out put il problema potrebbe essere hardware.
Rilevo solo access point con canale pari o inferiore ad 11
Il problema non è di natura hardware, bensì legato all'impostazione di default del regional domain. Di fatto l'API del kernel delegata alla configurazione della connessione wireless è impostata di default nel rispetto delle leggi statunitensi in materia; questo fa sì che siano resi disponibili i soli canali dall'1 (2.412GHz) all'11 (2.462GHz), pertanto un eventuale access point impostato su canali quali il 12 ed il 13 non verrà rilevato nè elencato dal comando iwlist. Per ovviare a ciò, è necessario impostare correttamente il regional domain della suddetta API specificando la seguente opzione al momento del caricamento del relativo modulo del kernel:
modprobe cfg80211 ieee80211_regdom="EU"
Per fare ciò è necessario che cfg80211 sia compilato come modulo. Per rendere effettiva la modifica in modo permanente, è sufficiente creare il file:
/etc/modprobe.d/cfg80211
contenente la seguente stringa:
options cfg80211 ieee80211_regdom="EU"
Utilizzando iwlist è dunque possibile controllare la lista di tutti i canali resisi disponibili.
autore: l1q1d 14:47, Feb 6, 2006 (CET)
addendum: Albatros_la aka AsPh4lTo, 16:57, Jan 9, 2009 (CET)