ubuntuusers.de

iw

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/Oxygen/network-wireless.png iw ist ein Kommandozeilenwerkzeug zur Konfiguration von WLAN-Geräten. Es unterstützt bis auf wenige Ausnahmen alle standardmäßig im Kernel enthaltenen Gerätetreiber, die mit dem nl80211-Subsystem arbeiten.

Manuell installierte Gerätetreiber von Ralink, Realtek oder Broadcom sowie einige im sog. Staging-Zweig des Kernels enthaltene Realtek-Treiber werden hingegen nicht oder nur eingeschränkt unterstützt. Dann kann man iwconfig nutzen.

Praktische Anwendungsbeispiele sind beispielsweise die Konfiguration der Ländereinstellung, die Begrenzung der Sendeleistung oder die Suche nach verfügbaren WLAN-Netzwerken. Zur allgemeinen Netzwerkkonfiguration ist der Befehl ip besser geeignet, der nicht auf WLAN beschränkt ist.

Installation

Das Programm ist bei Ubuntu und den offiziellen Ubuntu-Varianten bereits vorinstalliert. Der Paketname lautet:

  • iw

Bedienung

Das Programm kennt mehrere Parameter und Optionen, die der nachfolgenden Tabelle zu entnehmen sind.

Generelle Syntax und Optionen
Befehl Zweck
iw list Geräteeigenschaften abfragen
iw dev Eigenschaften und Name der Schnittstelle, z.B. wlan0
iw phy Eigenschaften und Name der physikalische Schnittstelle, z.B. phy0
iw reg Aufruf des sog. „Regulatory Agents“ zur Konfiguration der Regions- und Ländereinstellungen
iw --version zeigt nur Versionsinformationen zum Programm
iw --debug aktiviert Debugging zur Fehleranalyse (Funktion anscheinend fehlerhaft ❗)
iw help gibt eine Hilfe zum Programm und zur Syntax aus

Anwendungsbeispiele

Alle Befehle werden in einem Terminal [1] ausgeführt. Manche benötigen Root-Rechte [2].

Hilfe zum Programm

Programmsyntax und mögliche Optionen abfragen:

iw help 

Hardwareeigenschaften

Geräteeigenschaften auslesen:

iw list
iw phy 

Da die Ausgabe sehr lang sein kann, kann man diese mit grep filtern bzw. verkürzen:

iw list | grep phy 

Die nachfolgend verwendeten Bezeichnungen für die WLAN-Schnittstelle und dessen physikalische Bezeichnung sind durch die tatsächliche verwendete Bezeichnung, wie z.B. wlan0 bzw. phy0, zu ersetzen.

Verbindungsstatus

Informationen zur Verbindung, Übertragungsrate und Signalstärke abrufen:

iw dev wlan0 link 

Mehr Details liefert folgender Befehl:

iw dev wlan0 station dump 

Scan der WLAN-Umgebung

Ein manueller Scan zeigt alle WLAN-Netze im Empfangsbereich und deren Eigenschaften wie den verwendeten Funkkanal, die Verschlüsselungsmethode und die Empfangsqualität, und hilft so bei der Wahl der passenden Einstellungen für das eigene WLAN. Eine grafische Alternative dazu ist z.B. LinSSID.

sudo iw dev wlan0 scan 

Sendeleistung des WLAN-Adapters

Die Sendeleistung in dBm kann auf zwei Arten konfiguriert werden. Die gesetzlichen Vorgaben des jeweiligen Landes zur maximal erlaubten Strahlungsleistung sind dabei zu beachten. Siehe dazu auch im Hauptartikel WLAN.

  • Unter Verwendung der Schnittstellenbezeichnung:

    sudo iw dev wlan0 set txpower fixed 20 
  • Unter Verwendung der physikalischen Schnittstellenbezeichnung:

    sudo iw phy phy0 set txpower fixed 20 

Optionen bei der Sendeleistung
Option Auswirkung
auto automatische Auswahl bis zum möglichen Maximalwert (ohne Angabe deines Wertes)
fixed fest eingestellter Wert
limit Begrenzung auf einen Maximalwert, tatsächliche Leistung darf aber niedriger sein

Power Management

Einstellungen auslesen:

iw dev wlan0 get power_save 

Einstellungen des Power Management ändern:

sudo iw dev wlan0 set power_save on
sudo iw dev wlan0 set power_save off 

Ist das Power Management aktiviert, führt dies zu einer reduzierten Sende- und Empfangsleistung der WLAN-Karte.

Regionseinstellung

Über die Regionseinstellung werden die zulässige Sendeleistung und die in der Region erlaubten Frequenzen bzw. Funkkanäle der WLAN-Karte vorgegeben.

  • Ländereinstellung abfragen:

    iw reg get 
  • Ländereinstellung manuell ändern:

    sudo iw reg set DE 

Verwendet werden hierbei Ländercodes gemäß der Kodierliste ISO-Norm 3166. Standard ist in der Regel die Einstellung 00 (World), also eine globale Einstellung. Nicht bei allen WLAN-Adaptern lässt sich die Voreinstellung ändern, da die Ländereinstellung fest im Speicher des Gerätes voreingestellt sein kann.

Die Grundeinstellung befindet sich in der Datei /etc/default/crda. Allerdings muss der Wert erst noch festgelegt werden. Dazu bearbeitet man die Textdatei mit einem Editor [3] oder verwendet direkt sed und trägt den gewünschten Ländercode ein.

REGDOMAIN=DE

Eintrag mittels sed ergänzen [2]:

sudo sed -i "s/REGDOMAIN=/REGDOMAIN=DE/g" /etc/default/crda 

Um die Einstellung automatisch anzupassen oder die in der /etc/default/crda festgelegte Grundeinstellung zu überschreiben wenn ein WLAN-Adapter erkannt und initialisiert wird, kann alternativ eine udev-Regel /etc/udev/rules.d/regulatory.rules angelegt werden [3]. Folgender Inhalt ist einzufügen.

# WLAN-Regionseinstellungen festlegen
KERNEL=="regulatory*", ACTION=="change", SUBSYSTEM=="platform", RUN+="/sbin/iw reg set DE"

Erweiterte Einstellungen können durch Erstellung einer eigenen Datenbank erreicht werden. Eine Anleitung dazu findet sich im Artikel iw/Reg-Database.

Ereignisse und Diagnose

Laufende Ereignisse abfragen (debugging):

iwevent
iw event
iw event -f          # erweiterte Ausgabe mit Fehlermeldungen zum Verbindungsstatus
iw event -t          # erweiterte Ausgabe mit Fehlermeldungen und Zeitangaben (timing)
iw event -r          # erweiterte Ausgabe mit Fehlermeldungen und relativen Zeitangaben 

Der laufende Vorgang kann mit Strg + C abgebrochen werden.

Problembehebung

Arbeitet der verwendete Treiber nicht mit dem nl80211-Subsystem, so erscheint bei einem Kommando mit iw folgende Fehlermeldung:

nl80211 not found.

In diesem Fall kann nur iwconfig verwendet werden.

Diese Revision wurde am 3. September 2022 09:37 von DJKUhpisse erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Netzwerk, WLAN, Internet