Ecco cosa utilizzo per connettermi a un punto di accesso WEP, su base giornaliera:
#!/bin/bash
DEV=$(iw dev | awk '/Interface/ {interf=$2} END {print interf}')
PIDFILE=/var/run/dhcpcd-$DEV.pid
if [[ -f $PIDFILE ]] && kill -0 $(cat /var/run/dhcpcd-$DEV.pid)
then
dhcpcd -k $DEV
fi
ifconfig $DEV down
sleep 1
iwconfig $DEV mode managed
iwconfig $DEV key blabfoobar
ifconfig $DEV up
iwconfig $DEV essid 'Unindicted Co-conspirator'
iwconfig $DEV ap 00:0D:51:EB:E5:1E
sleep 5
dhcpcd --noipv6rs --noarp $DEV
Dovrai inserire ESSID e MAC per qualsiasi punto di accesso desiderato.
È un po 'più difficile per la crittografia WPA. Devi avere un wpa_supplicant.conf
file con una voce appropriata. Come questo:
# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers
network={
ssid="FaveCoffeeHouse"
psk="cafe241800"
priority=1
}
Una volta che hai un file conf, puoi eseguire questo script:
#!/bin/bash
DEV=$(iw dev | awk '/Interface/ {print $2}')
ifconfig $DEV down
iwconfig $DEV mode managed
ifconfig $DEV up
iwconfig $DEV essid 'FaveCoffeeHouse'
iwconfig $DEV ap 00:21:1e:3d:2a:80
echo now run: wpa_supplicant -Dnl80211 -i$DEV -c./wpa_supplicant.conf
Aggiornamento, 03-12-2014:
Arch Linux è quello che è, il mio script connect-to-WEP è molto diverso. Ho pensato di aggiungerlo a questa risposta per tenerlo aggiornato.
#!/bin/bash
DEV=wlp12s0
if [[ -f /run/dhcpcd-$DEV.pid ]]
then
kill -QUIT $(cat /run/dhcpcd-$DEV.pid)
fi
ifconfig $DEV down
iw dev $DEV set type managed
ifconfig $DEV up
sleep 2
iw dev wlp12s0 connect -w 'Akond of Swat' 2462 00:7c:41:eb:e5:1e key 0:befedade
sleep 15
dhcpcd -4 --nohook 10-wpa_supplicant --noarp --noipv6rs $DEV
Ho dovuto passare all'impiego iw
molto all'improvviso. Qualcosa sul kernel Arch LTS o sui driver WiFi (il mio laptop ha una scheda WiFi Intel che utilizza il driver "iwl4965") è cambiato non molto tempo fa. Dovrai cambiare la frequenza ("2462") e l'indirizzo MAC del punto di accesso per farlo funzionare.
iwconfig
è deprecata e non possono essere configurate in un kernel moderno. Iliw
metodo è più moderno / preferito ( nl80211 ). Vecchioiwconfig
potrebbe dare errori strani quando il supporto wext non è compilato / configurato. Quali sono le distribuzioni di strumenti / script disponibili è un altro problema. Immagino che se usi una distro, dovrebbero avere cura di fornire i giusti pacchetti / configurazioni. Se costruisci il tuo, allora potresti avere il problema sopra.