Wireless-Tools

Aus LinuxUser 10/2007

Wireless-Tools

Drahtlos glücklich

Sonne, Pool, Laptop, ein offenes WLAN und die Wireless-Tools – mehr braucht es nicht, um eine verspätete Folge von “Zu Befehl” aus dem Urlaub zu schicken.

Die Wireless-Tools [1] umfassen eine Reihe von Kommandozeilenprogrammen, die nicht nur Informationen über WLANs liefern, sondern auch drahtlose Verbindungen konfigurieren. Mit im Gepäck sind:

  • iwconfig – zeigt Informationen über WLAN-Interfaces und konfiguriert diese auch,
  • iwlist – gibt Auskunft über eigene Möglichkeiten und WLAN-Netze in der Umgebung,
  • iwgetid – zeigt wie iwconfig Infos über die vorhanden Schnittstellen, bietet aber keine Konfigurationsmöglichkeiten,
  • iwpriv – stellt verschiedene treiberspezifische Parameter ein,
  • iwspy – sammelt Informationen anderer WLAN-Clients und
  • iwevent – beobachtet WLAN-Interfaces.

Sie finden diese Programmsammlung als Paket wireless-tools in den Repositories Ihrer Distribution, auf einem Rechner mit erkannter WLAN-Schnittstelle ist es in der Regel bereits installiert. Bei einigen Distributionen enthalten die Wireless-Tools außerdem das Programm ifrename. Debian-Anwender installieren das Werkzeug über das gleichnamige Paket nach.

Voraussetzung für den Einsatz der hier vorgestellten Programme ist, dass Sie den Treiber für die WLAN-Karte bereits installiert und geladen haben.

Infos sammeln mit Iwconfig

Iwconfig arbeitet ähnlich wie ifconfig: Ohne weitere Angaben aufgerufen, zeigt sich iwconfig äußerst informativ und präsentiert zahlreiche Angaben über Netzwerkschnittstellen im Terminalfenster. Abbildung 1 zeigt die Ausgabe auf einem Laptop mit lo als Loopback-Interface, eth1 als normaler Netzwerkkarte und eth0 als WLAN-Interface.

Abbildung 1: WLAN-Parameter abfragen und auch verändern – iwconfig hilft.

Es besteht eine Verbindung zum Netzwerk cretablue, die WLAN-Karte meldet sich unter dem Namen Broadcom 4318. Der Access Point für das Netz cretablue selbst verrät neben seiner MAC-Adresse auch, dass er im Managed Mode läuft. Möchten Sie die anderen Schnittstellen in der Ausgabe ausblenden, so rufen Sie iwconfig direkt unter Angabe des gewünschten Interfaces auf, zum Beispiel:

/sbin/iwconfig eth0

Der Systemverwalter root kann das Kommando ohne Pfadangabe verwenden, da bei ihm /sbin im Pfad liegt.

Interface einrichten

Außer der Angabe des Netzwerkinterfaces versteht iwconfig weitere Aufrufoptionen, die Sie einfach an den gezeigten Befehl anhängen. Die folgenden Kommandos verändern eine bestehende Konfiguration und erfordern daher Root-Rechte. Um sich beispielsweise zu einem anderen Netzwerk zu verbinden, geben Sie hinter iwconfig und dem Interface-Namen eine entsprechende ESSID an:

iwconfig eth0 essid "Strand Cafe"

Enthält der Netzwerkname Leer- oder andere Sonderzeichen, schließen Sie ihn in doppelte Hochkommas ein. Besitzt das Netz einen WEP-Schlüssel hängen Sie diesen über die Option key an. Dazu tippen Sie entweder den Schlüssel in Hexadezimalschreibweise oder geben direkt das WEP-Passwort an. Diesem stellen Sie ein s: voran, zum Beispiel:

iwconfig eth0 essid "Strand Cafe" key s:IceCreamRocks

Falls erforderlich, können Sie weiterhin den verwendeten Kanal definieren (channel 11), den Modus angeben (zum Beispiel mode Managed oder mode Ad-Hoc und so weiter), den Nickname festlegen, unter dem Sie selbst im Netzwerk sichtbar sind (zum Beispiel nick "Externe Cisco-Karte") und vieles mehr. Eine vollständige Übersicht dazu bietet die Iwconfig-Manpage. Vergessen Sie nach dem Einrichten nicht, eine IP-Adresse zu konfigurieren. In der Regel bieten offene Netzwerke eine automatische Vergabe per DHCP an, sodass Sie als Root das Programm dhclient verwenden können. Auch diesem Tool geben Sie bei Bedarf ein bestimmtes Interface mit (Listing 1).

Listing 1
# dhclient eth0
…
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 19
DHCPOFFER from 192.168.1.254
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPACK from 192.168.1.254
bound to 192.168.1.72 – renewal in 38488 seconds.

Spürnasen

Ein weiterer praktischer Helfer ist iwlist. Verwenden Sie beispielsweise die Option scanning, um sich nach verfügbaren drahtlosen Netzwerken umzuschauen (Listing 2).

Listing 2
# iwlist scanning
eth0 Scan completed :
        Cell 01 - Address: 00:14:6C:91:77:EC
                  ESSID:"Poolbar upstairs"
                  Protocol:IEEE 802.11bg
                  Mode:Master
                  Channel:6
                  Encryption key:off
                  Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 9 Mb/s; 11 Mb/s
                            6 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
                            48 Mb/s; 54 Mb/s
                  Quality=100/100  Signal level=-217 dBm
                  Extra: Last beacon: 884ms ago
        Cell 02 - Address: 02:20:A6:B7:04:41
                  ESSID:"STAR_BEACH"
                  Protocol:IEEE 802.11bg
                  Mode:Master
                  Channel:11
                  Encryption key:off
                  Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 22 Mb/s
                  Quality=100/100  Signal level=-145 dBm
                  Extra: Last beacon: 232ms ago

Wer sich hingegen für die verfügbaren Frequenzen und Kanäle seiner WLAN-Karte interessiert, gibt die Option frequency an. Weitere mögliche Parameter zeigen die möglichen Übertragungsraten (iwlist bitrate) und verraten etwas über die Verschlüsselungsmechanismen (iwlist encryption) sowie die Sendeleistung (iwlist power).

Bei dem Tool iwgetid handelt es sich um eine Art “abgespeckte” iwconfig-Version. Es zeigt standardmäßig in einer einzigen Zeile an, welches Interface mit welcher (E)SSID verbunden ist:

# iwgetid
ath0      ESSID:"cretablue"

Iwgetid eignet sich daher ideal zur weiteren Verwendung der Ausgabe in Skripten. Verschiedene Schalter überreden das Programm dazu, andere Informationen anzuzeigen: --ap präsentiert beispielsweise die MAC-Adresse des Access Points, --freq zeigt die Frequenz an, --channel den Kanal und so weiter.

Mithörer

Eine Art Logfile über Wireless-Events bietet iwevent. Ohne weitere Optionen aufgerufen beobachtet es, was im drahtlosen Netz passiert (Listing 3).

Listing 3
# iwevent
Waiting for Wireless Events from interfaces…
16:36:21.690798   ath0     Scan request completed
16:39:51.557551   ath0     Set ESSID:"STAR_BEACH"
16:40:01.063199   ath0     Set ESSID:"cretablue"
16:40:01.063238   ath0     New Access Point/Cell address:Not-Associated
16:40:01.456160   ath0     Scan request completed
16:40:01.839243   ath0     Scan request completed
16:40:02.184058   ath0     Scan request completed
16:40:02.184107   ath0     Custom driver event:associating failed because no suitable network was found
…

Sie beenden den Mitschnitt über [Strg]+[C]. Wer neben Informationen über die eigenen Schnittstellen andere WLAN-Teilnehmer aus derselben Funkzelle “ausspionieren” möchte, verwendet iwspy. Dazu senden Sie zunächst ein Ping an die jeweilige IP-Adresse, zum Beispiel:

$ ping 192.168.1.100
PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data.
64 bytes from 192.168.1.100: icmp_seq=1 ttl=64 time=6.23 ms
…

Anschließend geben Sie dem Tool das eigene Interface und die IP des entfernten Rechners mit auf den Weg:

iwspy ath0 192.168.1.100

Danach zeigt iwspy Informationen über Verbindungsqualität, Signalstärke, die MAC-Adresse des anderen Clients und so weiter an (Listing 4)

Listing 4
# iwspy ath0
ath0      Statistics collected:
    00:C0:A8:D4:6F:EC : Quality:2  Signal level:0  Noise level:3
    Link/Cell/AP      : Quality=30/94  Signal level=-64 dBm  Noise level=-94 dBm
    Typical/Reference : Quality:0  Signal level:0  Noise level:0

Alles dabei

Sie sehen: Um vom Pool in Griechenland aus einen Artikel nach München zu schicken, braucht es keine komplizierten grafischen Anwendungen zur Netzwerkkonfiguration – die Wireless Tools liefern alles, was der Kommandozeilenfan im Urlaub braucht. Nachdem man das beste Netzwerk im Umkreis gefunden hat und die eigene Verbindung steht, bieten die Programme auch noch die Möglichkeit, die Miturlauber zu beobachten.

Glossar

ESSID
Extended Service Set Identifier. Eindeutige Kennung eines IEEE-802.11-Funknetzes, kann bis zu 32 Zeichen umfassen. Über die ESSID lassen sich verschiedene Funknetze am gleichen Ort unterscheiden.
LinuxUser 10/2007 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Nach oben