Đây là những gì tôi sử dụng để kết nối với điểm truy cập WEP hàng ngày:
#!/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
Bạn sẽ phải đặt ESSID và MAC cho bất kỳ điểm truy cập nào bạn muốn.
Việc mã hóa WPA khó hơn một chút. Bạn phải có một wpa_supplicant.conf
tập tin với một mục thích hợp. Như thế này:
# Simple case: WPA-PSK, PSK as an ASCII passphrase, allow all valid ciphers
network={
ssid="FaveCoffeeHouse"
psk="cafe241800"
priority=1
}
Khi bạn có một tệp conf như vậy, thì bạn có thể chạy tập lệnh này:
#!/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
Cập nhật, 2014-12-03:
Arch linux là như vậy, kịch bản kết nối với WEP của tôi khác rất nhiều. Tôi nghĩ rằng tôi nên thêm nó vào câu trả lời này để giữ cho nó cập nhật.
#!/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
Tôi đã phải chuyển sang sử dụng iw
rất đột ngột. Đôi điều về nhân Arch LTS hoặc trình điều khiển WiFi (máy tính xách tay của tôi có thẻ Intel WiFi sử dụng trình điều khiển "iwl4965") đã thay đổi cách đây không lâu. Bạn sẽ phải thay đổi tần số ("2462") và địa chỉ MAC của điểm truy cập để làm cho điều này hoạt động.
iwconfig
này không được dùng nữa và có thể không được cấu hình thành kernel hiện đại. Cáciw
phương pháp hiện đại hơn / ưa thích ( nl80211 ). Cũ hơniwconfig
có thể đưa ra lỗi wierd khi hỗ trợ wext không được biên dịch / cấu hình. Những công cụ / kịch bản phân phối làm cho có sẵn là một vấn đề khác. Tôi đoán nếu bạn sử dụng một bản phân phối, họ nên cẩn thận để đưa ra các gói / cấu hình phù hợp. Nếu bạn xây dựng của riêng bạn, thì bạn có thể có vấn đề ở trên.