[[Vorlage(Überarbeitung, 15.6.2018, WLAN, rolands11)]] [[Vorlage(Getestet, general)]] {{{#!vorlage Wissen [:Terminal: Ein Terminal öffnen] [:Pakete_installieren: Installation von Paketen] [:sudo: root-Rechte] [:sed: Interaktiver Texteditor] [:Dienste:] }}} [[Inhaltsverzeichnis(2)]] [[Bild(Wiki/Icons/Oxygen/network-wireless.png, align=left)]] Wireless LAN (WLAN) bezeichnet ein „drahtloses" lokales Funknetzwerk im privaten Umfeld oder auch in öffentlichen Bereichen wie z.B. auf Flughäfen oder öffentlichen Plätzen in Großstädten, sog. [wikipedia:Hot_Spot_(WLAN):Hot Spots]. Erwähnenswert ist in diesem Zusammenhang das [http://freifunk.net/ Freifunk-Projekt] {de}, das für den Nutzer kostenfreie „Hot Spots" zur Verfügung stellt. Hier soll ein Einblick in die Funktionsweise des WLAN, Begriffserklärungen sowie eine Konfigurationshilfe zur Einrichtung der verwendeten WLAN-Hardware unter Linux im allgemeinen und für Ubuntu-Linux gegeben werden. Alles zum Thema WLAN-Sicherheit ist in einer [:WLAN/Sicherheit:eigenen Unterseite] zu finden. = WLAN-Netzwerke und Modi = == Infrastruktur-Netzwerk == Auch "Station-Modus" genannt. Klassischer Aufbau eines WLAN-Netzwerks mit zentralem Zugriffspunkt (Access Point), also dem WLAN-Router. Dieser verwaltet meist auch die kabelgebundenen Geräte und kümmert sich um den Zugang zum Internet. === WDS-System === Um die Reichweite und Ausdehnung oben beschriebener Infrastruktur-Netze zu erhöhen, nutzt man [wikipedia:Wireless_Distribution_System:WDS]. Solche Netze finden sich oft an Universitäten, Hochschulen oder auch öffentlichen Einrichtungen. Im Gegensatz zu Ad-Hoc-Netzen ist hier auch eine höhere Sicherheit mittels WPA(1/2)-Verschlüsselung möglich. Die Verwaltung der angeschlossenen Endgeräte (Clients) bleibt weiterhin beim zentralen Zugriffspunkt bzw. Router. Für den privaten Bereich werden dazu sog. Repeater in verschiedenen Bauformen angeboten. Um WPA-Verschlüsselung verwenden zu können, müssen die Geräte untereinander allerdings kompatibel sein. Das funktioniert meist nur mit Geräten desselben Herstellers. Die mögliche Datenrate reduziert sich außerdem, da die Datenpakete zwischen den einzelnen Geräten mehrfach übertragen werden müssen. Um die Kompatibilitätsprobleme zwischen Geräten einzelner Hersteller zu umgehen, werden derzeit fast nur noch Repeater angeboten, die auch als Wireless-Bridge arbeiten können. === Wireless-Bridge === Dies ist eine Brücke zwischen verschiedenen Netzwerken. Bei dieser Methode wird eine sog. Punkt-zu-Punkt-Verbindung zum zentralen Access Point aufgebaut, also in der Regel dem zentralen WLAN-Router, das Gerät selbst stellt dann aber wieder einen eigenen WLAN-Zugriffspunkt zur Verfügung. Die Verbindung zum zentralen Access Point kann auch über Kabel erfolgen. Die Verwaltung der angeschlossenen Endgeräte (Clients) bleibt auch hier weiterhin beim zentralen AP bzw. Router. Zusätzlich bieten einige Geräte Ethernet Anschlüsse. So ist auch mit Geräten anderer Hersteller eine sichere WPA2-verschlüsselte Verbindung über WLAN sowie eine Reichweitenerhöhung möglich, und auch Endgeräte ohne WLAN können in das Netzwerk integriert werden. == Ad-Hoc-Netzwerk == Auch als IBSS-Modus (Independent Basic Service Set) bezeichnet. Dieser Modus ermöglicht eine einfache Vernetzung mehrerer Endgeräte untereinander, es gibt keinen zentralen „Verwalter“ wie beim Infrastrukturmodus. Für die Sicherheit wird im allgemeinen einfache WEP-Verschlüsselung verwendet, was zwar unsicher ist, durch die durchweg geringe Reichweite und Nutzungsdauer solcher Netze aber kurzfristig in Kauf genommen werden kann. Dabei kann einer der beteiligten Teilnehmer auch den zur Verfügung stehenden Internetzugang weiterleiten. In diesem Fall übernimmt einer der Clients wieder die zentrale Verwaltung des Netzwerks. Ab Ubuntu 14.04 ist hierbei nun auch WPA(2)-Verschlüsselung möglich. Siehe dazu auch [:Internetverbindungsfreigabe:]. == Mesh-Netzwerk == Vermaschte Netze (Mesh-Netzwerke) nach [wikipedia:IEEE_802.11s:IEEE 802.11s] ist eine Vernetzung mehrerer Rechner untereinander, wobei hier auch ein oder mehrere Rechner im Verbund einen Internetzugang zur Verfügung stellen können. Offiziell wird dieser Standard unter Linux als Teil des mac80211-Subsystems seit Kernel Version 2.6.26 unterstützt. Solche vermaschten Netze werden z.B. beim bereits erwähnten [http://freifunk.net/ Freifunk-Projekt] eingesetzt. == Monitor-Modus == Der [wikipedia:Monitor_Mode:Monitor Modus] kann dazu verwendet werden, um im eigenen Netzwerk den Datenverkehr zu protokollieren oder auch nach Fehlern zu suchen. In den meisten Fällen wird dieser Modus jedoch dazu missbraucht, um zu versuchen, in fremde WLAN-Netze einzubrechen, was natürlich gesetzeswidrig ist. Aus rechtlichen Gründen werden entsprechende Anfragen zu dem Thema hier im Forum deshalb nicht weiter unterstützt und im Zweifelsfall nach Absprache im Team auch gesperrt. = Übertragungsarten = Da die Technik ständig weiterentwickelt wird, hat sich in den letzten Jahren im WLAN-Bereich einiges getan. Im wesentlichen wird versucht, die mögliche Datenrate und Reichweite durch verschiedene technische Raffinessen weiter zu verbessern. Die unterschiedlichen WLAN-Übertragungsarten sind über die [wikipedia:IEEE_802.11:IEEE 802.11 Normen] definiert und festgelegt. Der neueste Standard 802.11ac wurde 2014 als Erweiterung zu 802.11n verabschiedet. = Hardware und Treiber = Die hier in der Anleitung verwendete Programme und Werkzeuge werden in einem Terminal [1] ausgeführt. Dieses öffnet man über die Tastenkombination [[Vorlage(Tasten, Strg+Alt+T)]], sofern man ein System mit grafischer Oberfläche verwendet, und kopiert die gezeigten Befehle einfach. == WLAN-Hardware erkennen == In diesem Abschnitt geht es um die Erkennung der verwendeten WLAN-Hardware und des zugehörigen Treibermodul, sollte es Probleme bei der Inbetriebnahme geben oder die WLAN-Hardware nicht automatisch vom System erkannt werden. === PCI(e)-Karten === Geräte-ID und Bezeichnung von PCI(e) Karten mit Ausgabe der Modulzuordnung und des momentan geladenen Moduls abfragen [1]: {{{#!vorlage Befehl lspci -nnk | grep -i net -A2 # alternativ lspci -nnk }}} Beispielausgabe für eine Ethernet- und WLAN-Karte: {{{ 00:19.0 Ethernet controller [0200]: Intel Corporation 82562V-2 10/100 Network Connection [mark][8086:10c0][/mark] (rev 02) Subsystem: Micro-Star International Co., Ltd. Device [1462:502c] Kernel driver in use: [mark]e1000e[/mark] 20:00.0 Network controller [0280]: Intel Corporation Ultimate N WiFi Link 5300 [mark][8086:4235][/mark] Subsystem: Intel Corporation Device [8086:1101] Kernel driver in use: [mark]iwlwifi[/mark] }}} Die Geräte-ID und das verwendete Treibermodul, sofern im Kernel vorhanden, wird angezeigt. Wird nichts weiter angezeigt, so gibt es in der verwendeten Kernelversion vermutlich kein zur Hardware passendes Modul. Steht dort nicht „`Kernel driver in use: ...`“ so wird das Modul nicht automatisch geladen, weil es möglicherweise gesperrt ist, oder es erzeugt bei diesem Versuch einen Fehler. Bei einigen Treibermodulen wie z.B. `p54pci`, muss aus Lizenzgründen zusätzlich die passende [wikipedia:Firmware:] manuell nachinstalliert werden. Erläuterungen dazu im Abschnitt [:WLAN#Firmware-installieren:Firmware-installieren]. Weitere Informationen und Möglichkeiten dazu in [:Kernelmodule:]. === USB-Adapter === Das erforderliche Kernelmodul und auch der verbaute Chipsatz ist bei USB-Adaptern nicht immer direkt ersichtlich. Geräte-ID und -Bezeichnung der USB-Geräte abfragen [1]: {{{#!vorlage Befehl lsusb }}} Beispielausgabe für einen WLAN-Adapter am USB-Anschluß: {{{ Bus 001 Device 003: ID [mark]13d3:3247[/mark] IMC Networks 802.11 n/g/b Wireless LAN Adapter }}} Der Chipsatz-Typ und das zugehörige Treibermodul sind hier noch nicht erkennbar. Die Geräte-ID besteht besteht immer aus zwei Blöcken, der Hersteller- (hier ''13d3'') und Produktkennung (hier ''3247''). Damit kann nach dem verbauten Chipsatz und Treibermodul gesucht werden. Mehr dazu im nachfolgenden Abschnitt. === Modulzuordnung === Mit den zuvor gewonnenen Informationen kann nun das passende Treibermodul bestimmt werden. Modulzuordnung über die Geräte-ID abfragen [1]: {{{#!vorlage Befehl modprobe -c | grep -i ".*" }}} Das gilt auch für die im Beispiel oben angegebenen PCI(e)-Geräte! Entsprechend zum Beispiel für den USB-Adapter also [1]: {{{#!vorlage Befehl modprobe -c | grep -i "13d3.*3247" }}} Darauf folgt in der Regel eine entsprechende Ausgabe des passenden Kernel-Moduls: {{{ alias usb:v[mark]13D3[/mark]p[mark]3247[/mark]d*dc*dsc*dp*ic*isc*ip* rt2800usb }}} Das hier verwendete Modul '''rt2800usb''' ist für WLAN-Karten mit Ralink-Chipsatz geeignet. Erfolgt keinerlei Ausgabe, so ist kein zur Hardware passendes Modul im Kernel enthalten, oder der Hersteller verwendet eine unbekannte Geräte-ID. Ebenso kann es passieren, dass mehrere Treibermodule für ein Gerät im Kernel enthalten sind, was zu einem Konflikt führen kann. Nicht benötigte Module können jedoch gesperrt werden. Eine Anleitung dazu findet sich in [:Kernelmodule:]. Sollten die Netzwerkhardware nach einer Neuinstallation nicht direkt erkannt werden, so sollte man das System nach Möglichkeit über eine Kabelverbindung aktualisieren. Dadurch wird u.a. auch eine aktuelle Kernelversion installiert, welche die Hardware nun möglicherweise unterstützt. Dazu kann z.B. auch die Internetverbindung eines Smartphones über USB-Kabel, sog. [wikipedia:Tethering:], genutzt werden == Treibermodule installieren == Im Normalfall wird die WLAN-Hardware direkt unterstützt. In [:WLAN/Karten:] findet man ansonsten eine ständig aktualisierte Übersicht bereits bekannter Geräte und wie diese in Betrieb zu nehmen sind. Probleme gibt es oft mit neuen Geräten. Im Zweifelsfall sollte man im entsprechenden [forum:internetzugang:Forenbereich] nachfragen, bevor man etwas installiert. Für bestimmte WLAN-Karten kann bzw. muss der Treiber erst über den [:restricted-manager:Restricted-Manager] aktiviert werden. Die automatische Erkennung funktioniert allerdings nicht immer reibungslos, und es wird u.U. der falsche Treiber installiert. Dies ist vor allem bei Broadcom WLAN-Karten der Fall. Hat man eine entsprechende Karte, so ist [:WLAN/Karten/Broadcom:] eine gute Anlaufstelle. Für WLAN-Karten von Ralink und Realtek ist normalerweise ein Treiber im Kernel enthalten, Diese sind allerdings nicht nicht immer ausgereift, funktionieren nicht einwandfrei oder unterstützen aktuelle Gerätevarianten noch nicht. In diesem Fall kann zuerst versucht werden, den Systemtreiber und die Firmware zu aktualisieren. Alternativ gibt es vielleicht einen passenden Treiber vom jeweiligen Hersteller, der manuell nachinstalliert werden kann. Entsprechende Anleitungen sind ebenfalls in [:WLAN/Karten:] zu finden und verlinkt. == Treibermodule aktualisieren == Da die im [:Kernel:] enthaltenen Treibermodule nicht immer aktuell sind, hat man verschiedene Möglichkeiten, diese zu aktualisieren, sollte die Hardware nicht oder nur unzureichend unterstützt werden. * bei den Ubuntu [:LTS:]-Versionen 14.04 und 16.04 gibt es die Möglichkeit, aktuellere Kernelversionen aus den jeweils aktuelleren Nachfolgeversionen einzusetzen, um die Hardwareunterstützung zu verbessern. Siehe dazu [:LTS_Enablement_Stacks:]. * Eine weitere Methode ist über die [:WLAN/Linux-backports-modules:Linux-Backports-Modules] * Dies sind zurückportierte Treiberpakete aus der jeweils aktuellen Ubuntu-Version * oder manuell über [:Linux_Wireless:] * Zusätzlich werden regelmäßig aktuelle Installationspakete über [https://www.kernel.org] angeboten * Diese enthalten die letzten Fehlerkorrekturen und Aktualisierungen → [post:5867552:Anleitung im Forum] * Bei aktueller Hardware hilft möglicherweise nur die Installation eines sog. [:Mainline-Kernel:] * auch in Kombination mit einem aktuellen Treiberpaket von [:Linux_Wireless:] * und der neuesten Firmware == Firmware installieren == Die [wikipedia:Firmware:] für viele WLAN-Karten gehört bereits zur Grundinstallation von Ubuntu und braucht nicht extra installiert zu werden. Bei bestimmten WLAN-Karten muss die erforderliche Firmware jedoch manuell nachinstalliert oder auch aktualisiert werden. Gibt es Funktionsprobleme, ist [:WLAN/Karten:] ein guter Anlaufpunkt. Im Zweifelsfall sollte man auch hier im entsprechenden [forum:Forenbereich:] nachfragen. Meldungen zur Firmware werden im Syslog protokolliert. Fehlermeldungen abfragen [1]: {{{#!vorlage Befehl egrep -i 'fw|firm' /var/log/syslog }}} Während das Standard-Firmware-Paket [packages:linux-firmware:] bereits vorinstalliert ist, benötigt bestimmte WLAN-Hardware, wie z.B. der Firma Broadcom oder Intersil/Prism, aus Lizenzgründen die manuelle Installation einer sog. proprietären, also „''unfreien''“ Firmware [1]: {{{#!vorlage Paketinstallation linux-firmware-nonfree }}} Im Paket sind diverse Firmwaredateien für verschiedene WLAN-Karten enthalten. Das Paket ist ab Ubuntu 16.04 jedoch nicht mehr in den offiziellen Paketquellen verfügbar! Bei Bedarf können entsprechende Pakete von [https://launchpad.net/ubuntu/+source/linux-firmware-nonfree hier] {dl} heruntergeladen werden. == Firmware aktualisieren == In Einzelfällen oder bei sehr aktueller WLAN-Hardware kann einen manuelle Installation der neusten Firmware erforderlich sein, um ein Gerät in Betrieb zu nehmen. Zum Herunterladen der aktuellen Firmware wird [:Git:] benötigt (siehe auch [http://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/] {dl} {en}). Aktuelle Firmware herunterladen [1]: {{{#!vorlage befehl git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git }}} Die Firmware-Dateien befinden sich anschließend in '''~/linux-firmware'''. Benötigte und zur verwendeten WLAN-Hardware passende Dateien bzw. Verzeichnisse müssen anschließend manuell nach '''/lib/firmware''' kopiert werden [3]. Rechner abschließend ausschalten und Stromquellen (Netz/Akku) für ein paar Minuten entfernen, um die alte Firmware sicher zu entladen. === Firmware aus neuerer Ubuntu-Version === Alternativ kann das Paket [packages:linux-firmware:] {dl} einer aktuelleren Ubuntu-Version heruntergeladen und manuell installiert werden. == Windows-Treiber verwenden == Existiert für die verwendete WLAN-Hardware kein Linux-Treiber oder lässt sich keine Lösung zur Inbetriebnahme finden, dann bleibt ein Versuch über [:WLAN/NdisWrapper:NdisWrapper]. = Konfiguration = == Konfigurationswerkzeuge == * [:iw:] - funktioniert nur mit Geräten und Treibern, die mit dem '''nl80211'''-Subsystem des Kernels arbeiten. Eine entsprechende Liste findet man auf [http://wireless.kernel.org/en/users/Drivers wireless.kernel.org - Drivers] {en}. * [:iwconfig:] - aus den [:wireless-tools:]. Funktioniert im Gegensatz zu `iw` auch mit Treibern von Realtek, Ralink, Broadcom, älteren Intel-Modulen und [:WLAN/NdisWrapper:NdisWrapper]. * `iwpriv` - nur noch für einige ältere Intel- oder Ralink-Treiber geeignet und veraltet. Deshalb hier nicht näher beschrieben. == verfügbare Funkkanäle == Welche Funkkanäle unterstützt die verwendete WLAN-Karte bzw. der verwendete Treiber. * Konfiguration abfragen [1]: {{{#!vorlage Befehl iwlist chan iw list }}} Werden hier nur die Funkkanäle 1-11 angezeigt, so kann man die Regionseinstellung prüfen und ggf. anpassen. Nicht alle Treibermodule für z.B. Broadcom, ältere Intel-Karten oder Realtek ermöglichen dies allerdings. Der eigene WLAN-Router sollte fest auf einen freien Funkkanal eingestellt sein. Oft ist werksseitig die Auswahl auf Automatik gesetzt („''Auto''“), was dazu führen kann, dass ein Funkkanal gewählt wird, der durch die WLAN-Karte des PC nicht unterstützt wird. Eine Verbindung wird dadurch unmöglich. Zudem kann es bei einem automatischen Wechsel des Kanals zu Verbindungsabbrüchen kommen. == WLAN-Umgebung == Ein manueller Scan zeigt alle WLAN-Netze in der Nachbarschaft und deren Eigenschaften, wie den verwendeten Funkkanal, die Verschlüsselungsmethode und die Empfangsstärke, und hilft so bei der Wahl der passenden Einstellungen für das eigene WLAN. Wer ein grafisches Werkzeug dazu verwenden möchte, kann z.B. [:LinSSID:] oder [:iwScanner:] verwenden. Ebenso lassen sich so natürlich die Einstellungen des eigenen WLAN und die Empfangsqualität ermitteln. * manuellen Scan der WLAN-Umgebung auslösen [1]: {{{#!vorlage Befehl # Kurzübersicht über den Network-Manager (nmcli) mit den wesentlichen Informationen nmcli dev wifi list # detailreich sudo iw dev scan sudo iwlist scan # gefiltert und übersichtlicher mit den wesentlichen Informationen sudo iwlist scan | egrep -i 'cell|chan|essid|wpa|cipher|qual' }}} Die Schnittstellenbezeichnung, bzw. das Interface, ist natürlich durch die tatsächlich verwendete Bezeichnung, wie z.B. ''wlan0'' oder ''wlo1'', zu ersetzen! == Regionseinstellungen == Über die Regionseinstellungen des Systems werden die zulässigen Funkkanäle, die zugehörige Bandbreite (20 MHz oder 40 MHz) und die maximal zulässige Sendeleistung festgelegt. Hierbei gibt es einige Dinge, die zu beachten sind und die bei der Auswahl der Einstellungen für das eigene WLAN-Netzwerk helfen. Im Normalfall sind die Einstellungen des Systems und des eigenen WLAN-Routers zur Kanalnutzung und Sendeleistung durch Voreinstellung automatisch richtig konfiguriert. Bedingt durch die Bandbreite von 20 MHz, sind im 2,4-GHz-Band nur drei Kanäle völlig störungsfrei nebeneinander verwendbar, bei 40-MHz Bandbreite (N-Modus) sogar nur zwei. Der Abstand und die Empfangsleistung zwischen den den einzelnen Netzen spielt dabei natürlich auch eine Rolle. Bei den Einstellungen des eigenen WLAN-Routers sollte man also nach Möglichkeit einen entsprechenden freien Funkkanal wählen und fest einstellen. Dabei hilft es, wie zuvor bereits beschrieben, die WLAN-Umgebung zu scannen. Manche Router zeigen auch in einer grafischen Übersicht die Kanalbelegung durch Netze in der Nachbarschaft an. Die WLAN-Karte des Clients, unabhängig vom verwendeten Betriebssystem, stellt sich bei der Verbindungsaufnahme automatisch auf den Funkkanal des WLAN-Routers ein. Durch die inzwischen starke Verbreitung von Internetzugängen und WLAN-Routern ist das 2,4-GHz-Band meist vollständig belegt oder auch überlastet. Ein störungsfreier Betrieb ist manchmal kaum noch möglich. Sofern die eigenen Geräte dies unterstützen, sollte man also auf das 5-GHz-Band ausweichen. {{{#!vorlage Tabelle Kanalnutzung / Bandbreite +++ Frequenzband Bandbreite störungsfrei parallel verwendbare Kanäle +++ 2,4 GHz-Band 20 MHz 1 + 6 + 11 oder entsprechend / Abstand 5 Kanäle +++ 2,4 GHz-Band 40 MHz im n-Modus 3 + 11 +++ 5 GHz-Band 20/40/80/160 MHz Bandbreite nur im a-Modus bei 20/40-MHz-Bandbreite überlappungsfrei, 80/160-Mhz-Bandbreite im ac-Modus +++ 5 GHz-Band 20MHz Bandbreite 19 Kanäle überlappungsfrei +++ 5 GHz-Band 40MHz Bandbreite 19 Kanäle überlappungsfrei +++ 5 GHz-Band 80MHz Bandbreite ac-Modus 9 mögliche überlappungsfreie Frequenzbereiche +++ 5 GHz-Band 160MHz Bandbreite ac-Modus 4 mögliche überlappungsfreie Frequenzbereiche }}} Detaillierte Erläuterungen und anschauliche Grafiken zu dem Thema findet man unter [wikipedia:Wireless_Local_Area_Network#Kanalbreiten.2C_.C3.BCberlappungsfreie_Kan.C3.A4le_und_Spektralmasken: WLAN - Überlappungsfreie Kanäle und Spektralmasken] === Regionseinstellungen ändern === Die Standardeinstellung beim Systemstart wird in der Datei '''/etc/default/crda''' festgelegt. Siehe auch [:iw:]. * Einstellung abfragen und vorübergehend ändern [1]: {{{#!vorlage Befehl sudo iw reg get sudo iw reg set DE }}} Verwendet werden hierbei Ländercodes gemäß der [http://ssgfi.sub.uni-goettingen.de/projekt/doku/landcode.html ISO-Norm 3166]. Standard ist normalerweise Einstellung '''00''' (World), also eine globale Einstellung, was allerdings nicht immer korrekt funktioniert und die benötigten Einstellungen liefert. Bestimmte Gerätetreiber unterstützen nur die Funkkanäle 1-11 und arbeiten auch nicht mit [:iw:] bzw. dem nl80211-Subsystem zusammen. Die Einstellungen können unter Linux dann also nicht geändert werden. Die Kanaleinstellung des eigenen WLAN-Routers muss dann ggf. angepasst werden, um eine Verbindung zu ermöglichen. == Sendeleistung == Je nach Land und Frequenzbereich ist eine entsprechende Sendeleistung zulässig. Da bei höheren Frequenzen, also im 5-GHz-Band, die Dämpfung der Funkwellen in der Luft erheblich stärker ist als bei niedrigen Frequenzen, also im 2,4,GHz-Band, darf die Sendeleistung höher sein, um Verluste bei der Reichweite auszugleichen. Jedes EU-Land hat da ggf. seine eigenen Ausnahmen und Sonderregelungen. Publikationen der [http://www.bundesnetzagentur.de/ Bundesnetzagentur] {de} zu den freigegebenen Frequenzen und der in der BRD zulässigen Strahlungsleistung (PDF-Dokumente): * [http://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/2013_10_WLAN_2,4GHz_pdf.pdf?__blob=publicationFile&v=4 Informationsblatt zum 2,4GHz-Band] {de} {dl} * [http://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Sachgebiete/Telekommunikation/Unternehmen_Institutionen/Frequenzen/Allgemeinzuteilungen/2010_07_WLAN_5GHz_pdf.pdf?__blob=publicationFile&v=3 Informationsblatt zum 5GHz-Band] {de} {dl} Es gibt im Privatbereich (engl. "consumer") momentan allerdings keine WLAN-Router, welche im 5-GHz-Band eine entsprechend höhere Sendeleistung erbringen können (soweit bekannt). In der Regel beträgt auch hier die maximale Strahlungsleistung 20 dBm (100 mW), was bedeutet, dass die Reichweite im 5-GHz-Band u.U. stark eingeschränkt ist, insbesondere bei den höheren Kanälen 100-140. {{{#!vorlage Tabelle zulässige Sendeleistung in Deutschland +++ Kanalbereich Frequenzband MHz Kanäle max. Strahlungsleistung in mW max. Strahlungsleistung in dBm +++ 1 - 13 (2,4GHz-Band) 2412 - 2472 1-13 100 20 +++ 36 - 64 (5GHz-Band) 5180 - 5320 36,40,44,48,52,56,60,64 200 23 +++ 100 - 140 (5GHz-Band) 5500 - 5700 100,104,108,112,116,120,124,128,132,136,140 1000 30 }}} * Einstellungen abfragen [1]: {{{#!vorlage Befehl iwconfig | egrep -i 'ieee|power' }}} === Einstellungen ändern === Sendeleistung des WLAN-Adapters ändern [1]: * Einstellung mittels `iwconfig` ändern: {{{#!vorlage Befehl sudo iwconfig txpower 15 }}} * Einstellung mittels `iw` ändern: {{{#!vorlage Befehl iw list | grep phy # ermittelt zunächst das physikalische Interface phy* iw phy phy0 set txpower fixed 15 iw dev set txpower fixed 15 }}} Die Bezeichnung der WLAN-Schnittstelle oder der physischen Schnittstelle sind natürlich durch die tatsächlich verwendete Bezeichnung, wie z.B. ''wlan1'' bzw ''phy1'', zu ersetzen! Weitere Möglichkeiten zur Konfiguration sind in [:iw:] beschrieben. Einige WLAN-Karten und diverse WLAN-USB-Adapter bieten auch eine höhere Sendeleistung an, was aber nur in bestimmten Ländern zulässig ist. Die gesetzlichen Vorgaben des Landes, in dem man sich befindet, müssen beachtet werden! [wikipedia:Leistungspegel:Berechnung der Leistungspegel] == Power Management == Ist das "Power Management" der WLAN-Karte aktiv, werden die Leistung, Reichweite und die Empfangseigenschaften verändert und reduziert. Möglicherweise gibt es Verbindungsprobleme mit aktivierten "Power Management", was vor allem bei mobilen Systemen im Batteriebetrieb auftritt. Weitere Informationen und Lösungsmöglichkeiten dazu [post:4675487:im Forum]. Erweiterte Einstellmöglichkeiten bietet [http://thinkwiki.de/TLP_-_Stromspareinstellungen_fuer_Ubuntu TLP] von [user:linrunner:], welches die systeminterne Energieverwaltung ergänzt. * Einstellungen abfragen [1]: {{{#!vorlage Befehl iwconfig | egrep -i 'ieee|power' }}} Beispielausgabe: {{{ IEEE 802.11bgn ESSID:off/any Mode:Managed Access Point: Not-Associated Tx-Power=20 dBm [mark]Power Management:on[/mark] }}} * Einstellungen über ''iw'' ändern [1]: {{{#!vorlage Befehl sudo iw dev set power_save off sudo iw dev set power_save on }}} * Einstellungen über ''iwconfig'' ändern [1]: {{{#!vorlage Befehl sudo iwconfig power off sudo iwconfig power on }}} Die Schnittstellenbezeichnung, bzw. das Interface, ist natürlich durch die tatsächlich verwendete Bezeichnung, wie z.B. ''wlan0'' oder ''wlo1'', zu ersetzen! Ab Ubuntu 16.04 kann das PWM über die Konfiguration des [:Network-Manager:] in der '''/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf''' abgeschaltet werden. {{{ [connection] # Values are 0 (use default), 1 (ignore/don't touch), 2 (disable) or 3 (enable). wifi.powersave = 3 }}} Ändern und Konfiguration übernehmen: {{{#!vorlage Befehl sudo sed -i "s/wifi.powersave = 3/wifi.powersave = 2/g" /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf sudo systemctl restart network-manager.service }}} == Schnittstellenzuordnung == Jeder WLAN- und auch Ethernet-Anschluß erhält vom System eine bestimmte Schnittstellenbezeichnung zugewiesen. Über diese Bezeichnung erfolgt anschließend die Konfiguration. * Abfrage vorhandenen Schnittstellen und deren momentane Konfiguration [1]: {{{#!vorlage Befehl ifconfig -a # zeigt alle verfügbaren Schnittstellen iwconfig # zeigt nur WLAN-Schnittstellen iw dev # zeigt nur WLAN-Schnittstellen }}} Die Bezeichnung der Schnittstellen wurde ab Ubuntu 15.10 auf sog. „''Consistent Network Device Naming''“ umgestellt. Die Bezeichnung orientiert sich nun an dem verwendeten Datenbus (USB/PCI) an welchem der WLAN-Adapter angeschlossen ist. Die Bezeichnungen können aber manuell auf die bisher bekannte Syntax umgestellt werden. Wird die Netzwerkhardware korrekt erkannt, das betrifft sowohl WLAN- als auch Ethernet-Schnittstellen, und ist ein Treibermodul dafür im Kernel enthalten, dann wird bis einschließlich Ubuntu 15.04 automatisch über das [:udev:udev-System] eine Konfiguration dafür angelegt und eine freie Schnittstelle zugewiesen. * Abfrage der Konfiguration [1] (nur bis einschließlich Ubuntu 15.04): {{{#!vorlage Befehl cat /etc/udev/rules.d/70-persistent-net.rules | egrep -i 'device|sub' -A3 }}} Beispielausgabe: {{{ # PCI device 0x8086:/sys/devices/pci0000:00/0000:00:19.0 (e1000e) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:24:21:0e:8f:4a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0" # USB device 0x13d3:0x3247 (usb) SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:af:72:78:ff", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="wlan*", NAME="wlan0" }}} = Netzwerkverwaltung = Unter Ubuntu ist der [:Network-Manager:] Standard. == Alternative grafische Werkzeuge == * [:Wicd:] * [http://manual.aptosid.com/de/inet-ceni-de.htm ceni] {de} - Netzwerkmanager für die Konsole. Das Programm stammt aus der Distribution [http://aptosid.com/ aptosid] {en} (früher Sidux) und ist nicht in Ubuntu enthalten (Verwendung auf eigene Gefahr). Ein Fremdpaket für Debian-basierende Distributionen kann z.B. als [http://ftp.uni-erlangen.de/mirrors/aptosid/debian/pool/main/c/ceni/ ceni_VERSION_all.deb] {dl} heruntergeladen werden. [[Vorlage(Fremd, Paket, "")]] == Manuelle Konfiguration == * [:interfaces:] * [:WLAN/wpa_supplicant:wpa supplicant] * [:wireless-tools:] == SSID == Die [wikipedia:Service_Set:SSID] - ''Service Set Identifier'' - ist der öffentlich gezeigte Name des Netzwerks. Die Werkseinstellung des WLAN-Routers sollte man immer ändern, da * der Name bei Geräten in der Nachbarschaft sonst mehrfach vorkommen kann (z.B. „''FRITZ!Box Fon WLAN 7170''“), was unter Umständen zu Verbindungsproblemen führt * Außenstehende so Informationen zur verwendeten Hardware bekommen * manchmal Leerzeichen in der SSID enthalten sind, was zwar zulässig ist, aber ebenfalls schon zu Verbindungsschwierigkeiten geführt hat * Leerzeichen in der SSID sollte man deshalb nicht verwenden und bei Bedarf durch Unterstriche ersetzen. Beispiel: "Meine_WLAN_SSID" Nur bestimmte Sonderzeichen sind im Namen (SSID) des Netzwerks zulässig. Weitere Informationen dazu in [:WLAN/Sonderzeichen:]. == Unsichtbare SSID == Eine unsichtbare SSID ist kein wirksames Mittel zum Schutz des eigenen WLAN und kann durch entsprechende Programme (WLAN-Sniffer) einfach ermittelt werden. Dies verursacht höchstens Probleme beim Verbindungsaufbau. Eine automatische Verbindung bei Systemstart funktioniert dann ebenfalls in den meisten Fällen nicht. == ESSID == Werden mehrere Zugriffspunkte, wie bei WDS-Systemen, zu einem Verbund verknüpft, und erhalten alle eine identische SSID, so nennt man diese nun ESSID - ''Extended Service Set Identifier''. == BSSID == Als BSSID - ''Basic Service Set Identifier'' - wird bei WLAN-Geräten und Zugriffspunkten (Access-Points) die MAC-Adresse bezeichnet, um das Gerät eindeutig zu identifizieren. Die BSSID des Access-Points kann bei Bedarf im Verbindungsprofil des Network-Managers eingetragen werden. Die Auswahl des Zugriffspunktes erfolgt so durch die SSID/ESSID '''und''' die BSSID. So wird z.B. ein ungewollter Wechsel zwischen verschiedenen Zugriffspunkten, sog. Roaming, verhindert. Dies ist vor allem bei WDS-Systemen hilfreich, wenn sich mehrere Zugriffspunkte mit identischer ESSID in Reichweite befinden. Verbindungsabbrüche können so vermieden werden. == Gastnetzwerk == Moderne WLAN-Router bieten die Möglichkeit, einen sog. Gastnetzwerk oder Gastzugang einzurichten. Das ist dann nichts anderes als ein weiteres WLAN-Netzwerk, ebenfalls mit eigener [wikipedia:Service_Set#SSID_und_ESSID:SSID] und sicherer WPA2-Verschlüsselung, über das auch Internetzugang möglich ist. Dieses Netzwerk ist aber vom Hauptnetzwerk, also allen anderen Rechnern, bestehenden Datei- oder Druckerfreigaben und sonstigen Geräten im Netzwerkverbund abgeschottet. Das ist praktisch, wenn man jemandem vorübergehend über den eigenen Anschluss Zugang zum Internet gewähren möchte. Wird der Zugriff nicht mehr benötigt, so deaktiviert man das Gastnetzwerk wieder. = WLAN-Sondertasten = Drahtlosgeräte bei mobilen Geräten wie Note- und Netbooks werden meist über einen Schalter, Taster oder eine Tastenkombination wie [[Vorlage(Tasten, Fn+F2)]] ein- oder ausgeschaltet. Läßt sich WLAN nicht einschalten, so helfen folgende Wiki-Artikel weiter. * [:rfkill:] * [:Acer_Hotkeys#Links:] (veraltet, aber das Abkleben des entsprechenden Pins auf der WLAN-Karte kann ein letzter Ausweg sein) = Probleme und Fehlersuche = Scheitert die Verbindungsaufnahme, treten Unterbrechungen oder sonstige Störungen auf, so kann man natürlich entsprechende Meldungen des System auswerten. * Zustand und Konfiguration der Schnittstelle [1]: {{{#!vorlage befehl ifconfig iwconfig }}} Die Schnittstellenbezeichnung, bzw. das Interface, ist natürlich durch die tatsächlich verwendete Bezeichnung, wie z.B. ''wlan0'' oder ''wlo1'', zu ersetzen! * Echtzeitüberwachung im Sekundentakt zur Beurteilung der Qualität des WLAN-Empfangs und der Übertragunsrate bei Unterbrechungen oder Störungen:{{{#!vorlage befehl watch -n 1 cat /proc/net/wireless }}} == Logbucheinträge auswerten == * Ereignisse im '''Syslog''' zu Netzwerk und WLAN auslesen und filtern [1]: {{{#!vorlage befehl egrep -i 'net|eth|wlan|firm|reason' /var/log/syslog }}} Im Logauszug stehen diverse Informationen zum Verbindungaufbau und Ablauf und auch zu Firmware-Fehlern. Die häufigsten Fehlermeldungen auswerten (für erfahrene Anwender) {en}: {{{#!vorlage Tabelle 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. }}} == Echtzeit-Diagnose == Mittels [:iw#Ereignisse-und-Diagnose:iw - ''Ereignisse und Diagnose''] ist eine laufende Auswertung während der Verbindung möglich. == Diagnoseskript == Für einen manuellen Verbindungsversuch und erweiterte Fehlerdiagnose kann alternativ auch folgendes [post:4040812:Skript] bis einschließlich Ubuntu 14.04 verwendet werden. Für Ubuntu 15.xx oder höher gib es eine an [:systemd:] angepasste [post:8653658:Version] des Skript. == Stromaufnahme == USB-WLAN-Adapter benötigen meistens die zur Verfügung stehenden 500 mA am USB-Anschluß. Weitere Geräte sollten nicht am selben USB-Doppelanschluß verwendet werden. Da der USB-Controller den Anschluss bei Überschreitung des zulässigen Stroms abschalten kann, können Geräteabstürze, Verbindungsunterbrechungen oder auch Systemabstürze die Folge sein. Lösungsmöglichkeiten: * Gerät an einem USB 3.0-Anschluß verwenden, die Stromaufnahme darf dort höher sein * einen USB-Hub mit eigener Stromversorgung verwenden * einen USB Y-Adapter verwenden, um zwei Anschlüsse zu koppeln (Notlösung, nicht gerätekonform) == Allgemeine Tipps == * Die Firmware, also das Betriebssystem des eigenen WLAN-Routers, ist nicht immer fehlerfrei und sollte deshalb aktuell sein bzw. aktualisiert werden. * Der Standort des WLAN-Routers sollte sich nicht zu nah neben Wänden, Decken oder metallischen Gegenständen wie Heizkörpern befinden. Je nach Material wird das Funksignal ansonsten gedämpft oder auch reflektiert, was zu sog. [wikipedia:Interferenz_(Physik):Interferenzen] führt. Das gilt auch für die WLAN-Adapter der angeschlossenen Clients. * USB-WLAN-Adapter können über eine USB-Verlängerung angeschlossen werden, um diese besser positionieren zu können. Je nach Qualität des Kabels kann dieses bis zu zwei Meter lang sein. Im Rechner verbaute Karten können oft mit einer besseren Antenne über eine Kabelverlängerung mit Standfuß angeschlossen werden. * Schnurlostelefone (DECT) oder auch ein Babyphone sollten nach Möglichkeit nicht direkt neben dem WLAN-Router platziert werden, da diese Geräte ebenfalls im selben Frequenzband arbeiten. * Viele Router bieten Stromsparmechanismen (Nachtschaltung). Das WLAN kann so über einstellbare Zeitfenster abgeschaltet werden, wenn man es sowieso nicht benötigt. * Die meisten Router bieten auch die Möglichkeit, USB-Geräte anzuschließen und im Netzwerk zur Verfügung zu stellen. Moderne Baureihen stellen dafür inzwischen einen USB-3.0-Anschluss bereit. Durch schlechte Abschirmung der Bauteile kann es allerdings vorkommen, dass USB-3.0-Geräte an diesem Anschluss das WLAN auf dem 2,4-Ghz-Band stark stören können. = Links = == Intern == * [:WLAN/Karten:] - Übersicht bekannter WLAN-Hardware mit Informationen zum Treiber und zur Inbetriebnahme * [:WLAN/Chipsätze:] - Informationen zu den div. Chipsätzen * [:Router:] - Ubuntu als Router konfigurieren * [:WLAN_Router:] - Ubuntu als WLAN-Router konfigurieren * [:Skripte/WLAN-Accesspoint Konfigurationen:] - Linux-Rechner und WLAN-Router für verschiedene Einsatzszenarien konfigurieren * [:PC-Direktverbindung_per_WLAN:] - Ad-hoc-Vernetzung ohne Router * [:Internetverbindungsfreigabe:] * WLAN-Sniffer: * [:LinSSID:] - grafisches Analysewerkzeug * [:iwScanner:] - grafisches Analysewerkzeug * [:WiFi_Radar:] - grafisches Analysewerkzeug und Verbindungsmanager * [:Kismet:] - Analysewerkzeug für die Kommandozeile * [:FreeRADIUS:] - WLAN-Authentifizierungsserver == Extern == * [wikipedia:Wireless_Local_Area_Network:WLAN] - eine umfassende Beschreibung zu WLAN * [wikipedia:IEEE_802.11n:IEEE 802.11n] * [http://www.wireless-forum.ch/forum/ Deutschsprachiges WLAN-Forum] {de} * [http://darkvoice.dyndns.org/wlankeygen/ WEP-/WPA-Key-Generator] {de} - WLAN-Schlüssel erzeugen * [http://www.linux-community.de/Internal/Artikel/Print-Artikel/LinuxUser/2008/07/Funknetze-von-Grund-auf Funknetze von Grund auf – Wichtige Schlagworte rund um WLAN im Überblick] {de} - Grundlagenartikel, LinuxUser 07/2008 * [pdf:www.bundesnetzagentur.de/SharedDocs/Downloads/DE/Allgemeines/Bundesnetzagentur/Publikationen/service/WLAN.pdf?__blob=publicationFile&v=1:Serviceheft WLAN] {de} - Informationsblatt der Bundesnetzagentur * [http://www.elektronik-kompendium.de/sites/net/1102071.htm IEEE 802.11n / WLAN mit 150 MBit/s] {de} - www.elektronik-kompendium.de # tag: Hardware, Internet, Netzwerk, WLAN