Diese Anleitung ist für Leptops gedacht die sich in mehrere Wlans einloggen wollen und wo dies beim Booten automatisch gewält werden sollen.
Es wird vorausgesetzt, dass die Wlan-Karte WPA fähig ist. Wenn nicht befindet sich im zweiten Teil eine Anleitung für den ndiswrapper mit blacklist.
Teil 1: NETZWERK EINSTELLUNGEN
Zuerst muss die /etc/network/interfaces angepasst werden.
Dort wird allow-hotplug aktivert und sämtliche Wlan-Einstellungen auf die wpa_supplicant.conf verwiesen.
Eine derart angepasste Datei sieht so aus:
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
# The loopback interface
# automatically added when upgrading
auto lo
# allow-hotplug lo wireless0 lan0
iface lo inet loopback
# Wlan-Netzwerk:
allow-hotplug wlan0
iface eth0 inet dhcp
pre-up wpa_supplicant -D wext -i wlan0 -c /etc/wpa_supplicant.conf -Bw
post-down /etc/init.d/wpasupplicant stop
# Lan-Netzwerk:
allow-hotplug eth0
iface eth1 inet dhcp
In der Zeile "auto lo" müssen alle anderen Einträge entfernt werden damit diese über allow-hotplug aktiviert werden können.
Wlan0? wird hier auf wpa_supplicant verwiesen und dabei mit -D der WPA Treiber übergeben und mit -i das Interface.
Folgende Einstellungen sind bei -D möglich: (sofern wext nicht funktioniert ...)
EINTRAG VERWENDUNG
hostap Host AP driver (Intersil Prism2/2.5/3)
prism54 Prism54.org driver (Intersil Prism GT/Duette/Indigo)
madwifi MADWIFI 802.11 support (Atheros, etc.)
atmel ATMEL AT76C5XXx (USB, PCMCIA)
wext Linux wireless extensions (generic)
ndiswrapper Linux ndiswrapper
ipw Intel ipw2100/2200 driver
wext Wireless Extension 18 (or more correctly, WE 19) for 2.6.14+ kernel
Achtung beim aktuellen ndiswrapper wird wext benötigt!!!
Damit ist der erste Teil abgeschlossen und es müssen nur mehr die verschiedenen Netzwerke eingetragen werden.
Dazu wird die Datei /etc/wpa_supplicant.conf bearbeitet.
Hier wäre eine Beispieldatei für WPA, WEB und ohne Verschlüsselung:
#ctrl_interface=/var/run/wpa_supplicant
#ctrl_interface_group=0
#eapol_version=1
#ap_scan=1
network={
ssid="Private-WPA"
scan_ssid=1
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP WEP104 WEP40
#psk="da war mein key ohne verschlüsselung"
psk=dec6d56b0c74e94446011121ec2f16d76c72362d36ea043fdffc5f48432693bf
priority=10
}
network={
ssid="Private-WEB"
key_mgmt=NONE
wep_key0="abcde"
wep_key1=0102030405
wep_key2="1234567890123"
wep_tx_keyidx=0
priority=5
}
network={
ssid="Public"
key_mgmt=NONE
priority=1
}
network={
key_mgmt=NONE
priority=0
}
(Bei Problemen können die ersten vier Beiträge aktiviert werden.)
Der erste Eintrag gibt eine WPA Verschlüsselung an. Wenn man die Verschlüsselung genau kennt kann man bei pairwise und group die anderen Einträge löschen. Damit man seinen WPA-Key als Hex bekommt muss man nur den Befehl "wpa_passphrase <key>" ausführen und schon hat man ihn.
Der zweite Eintrag gibt ein normales WEB Netzwerk an.
Der dritte Eintrag ist ein offenes Netzwerk ohne Verschlüsselung.
Der letzte Eintrag ist, dass automatisch offene Netzwerke verwendet werden auch wenn diese nicht in der Liste sind.
Mit priority kann man einstellen welches Netzwerk bevorzugt werden soll wenn zwei existieren die in der Liste sind.
Weite Einstellungsarten gibt es hier im Kapitel 3 Befehlsauflistung:
http://www.gentoo.de/doc/de/handbook/handbook-x86.xml?part=4&chap=4∞
Das war alles. Viel Spaß mit der automatischen Netzwerkauswahl!
lg
Raider700?
Teil 2: NDISWRAPPER