WLAN
Artikel wird überarbeitet
Dieser Artikel wird momentan überarbeitet.
Geplante Fertigstellung: 30.6.2013
Derzeitig gültiger Artikel: WLAN
Bearbeiter: elektronenblitz63
Solltest du dir nicht sicher sein, ob an dieser Anleitung noch gearbeitet wird, kontrolliere das Datum der letzten Änderung und entscheide, wie du weiter vorgehst.
Achtung: Insbesondere heißt das, dass dieser Artikel noch nicht fertig ist und dass wichtige Teile fehlen oder sogar falsch sein können. Bitte diesen Artikel nicht als Anleitung für Problemlösungen benutzen!
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
Wiki WLAN
Wireless LAN (Wireless Local Area Network, WLAN, Kabelloses Lokales Netzwerk) bezeichnet ein "drahtloses" lokales Funknetz, wobei meistens ein Standard der IEEE_802.11-Familie gemeint ist.
Informationsblatt (pdf) der Bundesnetzagentur zu WLAN 🇩🇪.
WLAN Arten¶
Infrastruktur¶
AP (Acess-Point) oder auch Station Modus
WDS-System¶
(Wireless Distribution System)
Wireless Bridge¶
Ad-Hoc¶
IBSS (Independent Basic Service Set) Modus
Mesh¶
oder auch Mesh Modus
Monitor Modus¶
Konfiguration¶
WLAN Sicherheit¶
Rechtliches¶
MAC-Adressfilter¶
unsichtbare SSID¶
Verschlüsselung¶
WPA2-AES¶
WPA1-TKIP¶
WEP¶
unverschlüsselt¶
Zugangskennwort¶
Der PSK (Pre-Shared-Key) ist ein Schlüssel, der einmalig manuell zwischen den beteiligten Geräten ausgetauscht ("shared") werden muss.
Ein guter Schlüsselgenerator ist das Programm pwgen
(benötigt das Paket pwgen [2]). Mit dem Konsolenbefehl [1] erhält man einen geeigneten Schlüssel.
pwgen -c -n -s 63 1
Dieser Schlüssel muss auf dem WPA(2)-PSK-fähigen Access-Point (typischerweise der Router im Heimnetz) eingestellt werden und außerdem natürlich jedem einzelnen Client bekannt sein.
Einige der nachfolgend aufgeführten Einrichtungsverfahren legen den Schlüssel im Klartext, in einer Datei auf der Festplatte, ab. Für solche Verfahren empfiehlt es sich, den 63 ASCII-Zeichen-Schlüssel noch in Hexadezimalform umzuwandeln. Die Berechnung erfolgt mittels wpa_passphrase. Dem Befehl wird die SSID des Access-Points und der mit pwgen erzeugte Schlüssel übergeben.
Beispiel:
wpa_passphrase MeineSSID MeinSchluessel
ergibt:
# reading passphrase from stdin meinschluessel network={ ssid="MeineSSID" #psk="MeinSchluessel" psk=626d3fc95a3efe75acaebf1388ed167a90e59390efab91a5841242e49bc62b3a }
Sonderzeichen¶
Funkkanäle/Frequenzen¶
Liste
Bundesnetzagentur
Regionseinstellungen¶
verfügbare Funkkanäle¶
iwlist chan
Über die Regionseinstellungen werden die zulässigen Funkkanäle, die zugehörige Bandbreite (20MHz oder 40 MHz) und die maximal zulässige Sendeleistung festgelegt.
Einstellungen ändern¶
sudo iw reg get sudo iw reg set <Ländercode>
Verwendet werden hierbei Ländercodes gemäß der ISO-Norm 3166.
WLAN-Umgebung scannen¶
sudo iw dev <Schnittstelle> scan sudo iwlist <Schnittstelle> scan
Hilfe zur Einstellung des eigenen Routers
Überlappungsfreie Kanäle, Bandbreite
Sendeleistung¶
Freigegebene Frequenzen und zulässige Strahlungsleistung EIRP. Informationsblatt (pdf) der Bundesnetzagentur dazu 🇩🇪.
zulässige Sendeleistung in Deutschland | |||
Kanal | Frequenz MHz | max. Leistung in mW | max. Leistung in dBm |
1 - 13 (2,4GHz-Band) | 2412 - 2472 | 100 | 20 |
36 - 64 (5GHz-Band) | 5,180 - 5,320 | 200 | 23 |
100 - 140 (5GHz-Band) | 5470 - 5725 | 1000 | 30 |
Einstellungen abfragen:
iwconfig | egrep -i 'ieee|power'
Einstellungen ändern¶
sudo iwconfig <Schnittstelle> txpower [Wert] iw dev <Schnittstelle> set txpower <auto|fixed|limit> [<tx power in mBm>] iw phy <phys-Schnittstelle> set txpower <auto|fixed|limit> [<tx power in mBm>]
Powermanagement¶
Ist das Powermanagement der Karte aktiv wird die Leistung dadurch reduziert. Weitere Informationen und Lösungsmöglichkeiten dazu im Forum. Erweiterte Einstellmöglichkeiten ermöglicht TLP von linrunner welches das Systeminterne Powermanagement ersetzt.
Einstellungen abfragen:
iwconfig | egrep -i 'ieee|power'
Einstellungen ändern:
sudo iw dev <WLAN-Schnittstelle> set power_save [off|on] sudo iwconfig <WLAN-Schnittstelle> power [off|on]
(<WLAN-Schnittstelle> ist natürlich durch die tatsächliche Bezeichnung, wie z.B. wlan0, zu ersetzen)
WLAN-Hardware¶
In diesem Abschnitt geht es um die Erkennung der verwendeten WLAN-Hardware und des zugehörigen Treibermoduls.
Geräteerkennung¶
Geräte-ID PCI(e) Karten mit Ausgabe der Modulzuornung und des momentan geladenen Moduls:
lspci -nnk | grep -i net -A2
Beispielausgabe:
hier fehlt noch die Ausgabe
Geräte-ID der USB Geräte abfragen:
lsusb
Beispielausgabe für WLAN-Karte am USB-Anschluß:
Bus 001 Device 003: ID 13d3:3247 IMC Networks 802.11 n/g/b Wireless LAN Adapter
Der Typ und das zugehörige Modul sind hier noch nicht erkennbar.
Die nachfolgend verwendete Geräte-ID besteht aus zwei Blöcken, die Hersteller- (hier 13d3) und Produktkennung (hier 3247).
Modulzuordnung abfragen:
modprobe -c | grep -i "<Hersteller-ID>.*<Product-ID>"
Entsprechend zum Beispiel also wie folgt
modprobe -c | grep -i "13d3.*3247"
Darauf folgt eine entsprechende Ausgabe des passenden Kernel-Moduls
alias usb:v13D3p3247d*dc*dsc*dp*ic*isc*ip* rt2800usb
Das Modul rt2800usb ist für WLAN-Karten mit Ralink-Chipsatz geeignet.
Eigenschaften des verwendeten WLAN-Treibermodul und der WLAN-Hardware abfragen:
iw list iw phy
Schnittstellenzuordnung¶
Abfrage vorhandenen Schnittstellen und deren momentane Konfiguration:
ifconfig -a # zeigt alle verfügbaren Schnittstellen iwconfig # zeigt nur WLAN-Schnittstellen iw dev # zeigt nur WLAN-Schnittstellen
Wird die Netzwerkhardware korrekt erkannt, das betrifft sowohl WLAN- wie auch Ethernetkarten, und ist ein Treibermodul dafür im Kernel enthalten, dann wird automatisch über das udev-System eine Konfiguration dafür angelegt und eine freie Schnittstelle zugewiesen.
Abfrage der Konfiguration:
cat /etc/udev/rules.d/70-persistent-net.rules | egrep -i 'device|sub' -A3
Für Ethernetkarten im allgemeinen die Bezeichnung eth* und für WLAN-Karten wlan*. Die ist aber auch vom Treiber abhängig, bei einigen Broadcom-, Intel- oder Realtek-Treibern kann die Bezeichnung ebenfalls eth*, oder ra* lauten.
Treiber aktualisieren¶
Firmware installieren¶
Bei bestimmten WLAN-Karten muss die erforderliche Firmware manuell nachinstalliert oder auch aktualisiert werden. Gibt es Funktionsprobleme ist WLAN/Karten ein guter Anlaufpunkt. Im Zweifelsfall sollte man dennoch im entsprechend Forenbereich nachfragen.
sudo apt-get install linux-firmware
Die Firmware für viele WLAN-Karten gehört bereits zur Ubuntu Grundinstallation.
Bestimmte WLAN-Hardware erfordert aus Lizenzgründen die manuelle Installation der entsprechenden „unfreien“ Firmware.
sudo apt-get install linux-firmware-nonfree
Firmware aktualisieren¶
Quelle: http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/ ⮷ 🇬🇧
Zum Download der aktuellsten Firmware wird git benötigt.
Download:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
Die Firmwaredateien befinden sich anschließend in ~/linux-firmware. Benötigte Dateien bzw. Verzeichnisse müssen manuell nach /lib/firmware kopiert werden. Rechner abschließend ausschalten und Stromquellen (Netz/Akku) für ein paar Minuten entfernen um die alte Firmware sicher zu entladen.
Windows-Treiber verwenden¶
Existiert für die verwendete WLAN-Hardware kein Linux-Treiber oder läßt sich keine Lösung zur Inbetriebnahme finden, dann bleibt ein Versuch über [WLAN/NdisWrapper:].
Netzwerkverwaltung¶
Unter Ubuntu ist der Network-Manager Standard.
alternative grafische Tools¶
wpa_gui ist ebenfalls eine grafische Oberfläche für wpa_supplicant und somit auch eine Alternative zu Wicd und dem NetworkManager
ceni 🇩🇪 - Netzwerkmanager für die Konsole. Das Programm stammt aus der Distribution aptosid 🇬🇧 (früher Sidux) und ist nicht in Ubuntu enthalten.
manuell¶
WLAN-Sondertasten¶
Probleme und Fehlersuche¶
Scheitert die Verbindungsaufnahme, treten Unterbrechungen oder sonstige Störungen auf, so kann man natürlich entprechende meldungen des System auswerten.
Zustand und Konfiguration der Schittstelle:
ifconfig <WLAN-Schnittstelle> iwconfig <WLAN-Schnittstelle>
(<WLAN-Schnittstelle> ist natürlich durch die tatsächliche Bezeichnung, wie z.B. wlan0, zu ersetzen)
Ereignisse im Syslog zu Netzwerk und WLAN auslesen und filtern:
egrep -i 'net|eth|wlan|firm|reason' /var/log/syslog
Im Logauszug stehen diverse Informationen zum Verbindungaufbau und Ablauf.
Die häufigsten Fehlermeldungen auswerten (für erfahrene Anwender):
Fehlerdiagnose | |
Ereignis | Meldung |
reason 0 | no ReasonCode - Normal operation. |
reason 1 | unspecifiedReasonClient - associated but no longer authorized. |
reason 2 | previousAuthNotValid - Client associated but not authorized. |
reason 3 | deauthenticationLeaving - The access point went offline, deauthenticating the client. Previous authentications no longer valid. |
reason 4 | disassociationDueToInactivity - Client session timeout exceeded. |
reason 5 | disassociationAPBusy - The access point is busy, performing load balancing, for example. |
reason 6 | class2FrameFromNonAuthStation - Client attempted to transfer data before it was authenticated. |
reason 7 | class2FrameFromNonAssStation - Client attempted to transfer data before it was associated. |
reason 8 | disassociationStaHasLeft - Operating System moved the client to another access point using non-aggressive load balancing. |
reason 9 | staReqAssociationWithoutAuth - Client not authorized yet, still attempting to associate with an access point. |
reason 15 | 4-Way Handshake timeout. |
reason 16 | Group key update timeout. |
reason 17 | Information element in 4-Way Handshake different from (Re)Associate Request/Probe Response/Beacon. |
reason 18 | Multicast cipher is not valid. |
reason 19 | Invalid pairwise cipher. |
reason 21 | Unsupported RSN IE version. |
reason 22 | Invalid RSN IE capabilities. |
reason 23 | IEEE 802.1X authentication failed. |
reason 24 | Cipher suite is rejected per security policy. |
reason 32 | Disassociated for unspecified, QoS-related reason. |
Für einen manuellen Verbindungsversuch und erweiterte Fehlerdiagnose kann alternativ auch folgendes Skript verwendet werden.
Links¶
Vom Linux-Kernel unterstützte Wireless-Geräte unterteilt in USB, PCI, PCMCIA 🇬🇧
Umfangreiche Liste mit Karten und den verwendeten Chipsätzen 🇬🇧
Funknetze von Grund auf - Grundlagenartikel LinuxUser 07/2008 🇩🇪
iwScanner - grafisches Analysewerkzeug (WLAN-Sniffer) ähnlich NetStumbler