WLAN Einrichten

Aus DebianforumWiki

Wechseln zu: Navigation, Suche
WikiNetzwerk ‹ WLAN Einrichten

Review.png Review: Dieser Artikel ist für das Review freigegeben.


Inhaltsverzeichnis

Einführung

Dieser Artikel soll eine kleine Hilfestellung für die Einrichtung eines WLAN Netzwerkes geben. Bei der Einrichtung empfiehlt es sich ein Kabelgebundenes Netzwerk verfügbar zu haben, um ggfs. in der Lage zu sein, fehlende Pakete nachzuinstallieren. Dies gilt insbesondere dann, wenn man sein Debian System gerade neu aufsetzt.

Wird die WLAN Karte bereits erkannt?

Manche WLAN-Netzwerkkarten werden automatisch erkannt. Dies kann man feststellen, indem man sich alle Netzwerkkarten bzw. alle WLAN-Karten anzeigen läßt mittels:

root@debian:~$ iwconfig

Entält die Ausgabe dann einen Eintrag, der nicht den Text no wireless extensions enthält, so ist die Netzwerkkarte bereits vom System erkannt worden.

lo        no wireless extensions.

pan0      no wireless extensions.

vboxnet0  no wireless extensions.

wlan0     IEEE 802.11bg  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=0 dBm   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:on
          
eth0      no wireless extensions.

Hier ist wlan0 die Netzwerkkarte.

Erkennung der WLAN Karte

Ist die Netzwerkkarte noch nicht erkannt, sollte man zunächst einmal feststellen um welche Hardware es sich handelt. Dies geschieht (für eingebaute) Karten z. B. mittels:

user@debian:~$ lspci -vv

(Bei USB-Karten ist natürlich anstelle von lspci ein lsusb abzusetzen.)

Bei mir enthält die Ausgabe dann z.B. folgenden Eintrag für die eingebaute Netzwerkkarte:

04:00.0 Network controller: Broadcom Corporation BCM4312 802.11b/g LP-PHY (rev 01)
        Subsystem: Dell Wireless 1397 WLAN Mini-Card
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0, Cache Line Size: 64 bytes
        Interrupt: pin A routed to IRQ 17
        Region 0: Memory at f8000000 (64-bit, non-prefetchable) [size=16K]
        Capabilities: <access denied>
        Kernel driver in use: b43-pci-bridge

Eine Suche im Internet (oder z.B. in den Kernel-Sourcen) ergibt dann in meinem Fall, das ich das Kernel-Modul b43 laden muss. Dies geschieht mit dem Befehl:

root@debian:~$ modprobe b43
Hinweis.png Hinweis: Einige WLAN-Karten benötigen eine Firmware. Dazu muss man dann das Paket Debianpackage.png firmware-linux oder Debianpackage.png firmware-linux-nonfree installieren.

Ob die Karte erkannt wurde, kann man dann noch einmal mittels ifconfig -a oder iwconfig kontrollieren.

Einbinden in das Netzwerk

Für das Einbinden der Karte in ein bestehendes WLAN-Netzwerk stehen im wesentlichen 3 Wege zur Verfügung:

  • Komplett manuell: hier nutzt man die Befehle iwlist, iwconfig, ip (bzw. ifconfig) und wpa_supplicant
  • Der Debian Weg über Debianpackage.png ifupdown und Einträgen in der Datei /etc/network/interfaces
  • Über einen Netzwerk-Manager

Im Heimnetzwerk sollte man auf jeden Fall eine Verschlüsselung mittels WPA2 einrichten. Für die Einrichtung einer WPA(2) verschlüsselten Verbindung benötigt man das Paket Debianpackage.png wpasupplicant.

In Hotels und Restaurants hat man häufig unverschlüsselte WLANs. Hier sollte man entsprechende Schutzmaßnahmen nicht vergessen.

Manuelle Einrichtung der Netzwerkverbindung

Die manuelle Einrichtung ist eigentlich untypisch, dient aber sicherlich dem Verständnis der Konfiguration, die bei den anderen Einrichtungen vorzunehmen sind.

Manuelles Aufbauen einer unverschlüsselten Verbindung

(Diesen Abschnitt habe ich aus dem Gedächtnis geschrieben, vielleicht kann den mal jemand prüfen, ob das wirklich so geht!)

Zunächst muss die Karte aktiviert werden:

root@debian:~$ ifconfig wlan0 up

Bei einer unverschlüsselten Verbindung (z.B. im Restaurant) benötigt man zunächst mal die Informationen zu den vorhanden WLAN Access Points:

root@debian:~$ iwlist wlan0 scan

In der Ausgabe sind dann alle vorhandenen Netzwerke aufgeführt.

Über iwconfig kann man dann die Informationen aus dem Scan in seiner Netzwerkkarte einstellen.

root@debian:~$ iwconfig wlan0 essid MEIN_HOME_ROUTER

(Ggfs. muss man noch weitere Dinge wie channel, freq, ... einstellen.)

Dann kann man sich auch hier eine IP Adresse zuweisen lassen.

root@debian:~$ dhclient -v wlan0

Manuelles Aufbauen einer WPA verschlüsselten Verbindung

Zunächst mal erzeugt man sich eine Konfigurationsdatei für WPA, die die ESSID und den Schlüssel enthält:

root@debian:~$ wpa_passphrase <ROUTER_SSID> <router_password> >/root/wpa.conf

Dann baut man die verschlüsselte Verbindung auf:

root@debian:~$ wpa_supplicant -B -iwlan0 -c/root/wpa.conf

Nun muss man warten bis die Verbindung aufgebaut wurde. Das geht so ca. 1-5 Sekunden. Ob die Verbindung aufgebaut wurde sieht man wenn die Ausgabe von iwconifig von Access Point: Not-Associated auf Access Point: [MAC-DES-AP] wechselt.

Schliesslich besorgt man sich noch IP-Adresse, Nameserver und Routing Information über DHCP:

root@debian:~$ dhclient -v wlan0

WLAN Einrichtung in der /etc/network/interfaces

Eine Einrichtung der Netzwerkkarte in der /etc/network/interfaces ist sicherlich dann sinnvoll, wenn man nicht dauernd in unterschiedlichen Netzwerken unterwegs ist, sondern nur ein oder sehr wenige WLAN Netze nutzt.

Für eine WPA Verbindung zu einem WLAN Access Point mit der ESSID MEIN_WLAN_ROUTER und Passwort password würde der Eintrag lauten:

iface wlan0 inet dhcp
        wpa-ssid        MEIN_WLAN_ROUTER
        wpa-psk         ef7961eb7e82c8577f946080343238171cc3b093e66b0dbf7d18d12cf3684b4f

Den Eintrag für wpa-psk kann man mittels

root@debian:~$ wpa_passphrase MEIN_WLAN_ROUTER password

ermitteln.

Wenn man die WPA Informationen direkt in die /etc/network/interfaces schreibt, darf nur root diese Datei lesen können:

root@debian:~$ chmod 600 /etc/network/interfaces

Die Netzwerkverbindung kann man dann mittels:

root@debian:~$ ifup wlan0

aufbauen und mit

root@debian:~$ ifdown wlan0

wieder abbauen.

Umschalten zwischen Netzwerken

Wer unterschiedliche Netze mittels einer Konfiguration in /etc/network/interfaces umschalten möchte, sollte in der Datei mit Aliasen arbeiten:

iface wlan0-home inet dhcp
        wpa-ssid        MEIN_HOME_ROUTER
        wpa-psk         f76edcba8a135e05ecb637dcd845bed373cdb960da77c4db4f7d30baf9ae7d73

iface wlan0-work inet dhcp
        wpa-ssid        MEIN_WORK_ROUTER
        wpa-psk         935c68b64ea476dde70a676a4de9fdd08d5ef304fc1ca3f9916fc76197e76455

Das Aufbauen der Verbindung geht dann mittels


root@debian:~$ ifup wlan0=wlan0-home

bzw.


root@debian:~$ ifup wlan0=wlan0-work

Mittels Debianpackage.png ifscheme kann man die aktuelle manuelle Einstellung ein wenig vereinfachen. Debianpackage.png guessnet ermöglicht es, den entsprechenden Alias automatisch auszuwählen.

Nutzung eines Netzwerkmanagers

Die Nutzung eines Netzwerkmanagers macht in meinen Augen insbesondere dann Sinn, wenn man häufig in unterschiedlichen Netzen (Home, Work, Kunde, Hotel, ...) unterwegs ist.

Hier stehen verschiedene Debian Pakete zur Verfügung: Debianpackage.png cnetworkmanager (Kommandozeile), Debianpackage.png knetworkmanager (für KDE-Nutzer), Debianpackage.png network-manager-gnome (Gnome-Nutzer) sowie Debianpackage.png wicd (Curses und GUI).

Hinweis.png Hinweis: Für die Nutzung eines Netzwerkmanagers gilt: Es kann nur einen geben.

Das bedeutet nicht nur, dass man bei Nutzung eines Netzwerkmanagers alle anderen Netzwerkmanager deinstalliert haben sollte. Ausserdem sollte die /etc/network/interfaces nur einen Eintrag für das Loopback interface enthalten:

# The loopback network interface
auto lo
iface lo inet loopback

Die Nutzung der Netzwerkmanager ist der entsprechende Dokumentation zu entnehmen.

Meine Werkzeuge