WAN über WLAN

Aus Freifunk Halle
Version vom 24. Mai 2015, 09:56 Uhr von Tommy (Diskussion | Beiträge) (→‎Kernelmodul installieren)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Warum über ein WLAN andocken

In manchen Szenarien ist eine Kabelverlegung für den WAN Anschluss des Freifunk Routers kompliziert oder unmöglich. Meist ist der Internet Router an einem Standort, der für den Freifunk Router nicht optimal ist. In einer Kneipe oder öffentlichen Einrichtung mal eben 10m Cat5 Kabel verlegen verringert die Akzeptanz beim Knotenbetreiber. Für den Fall "WAN über WLAN", also den Freifunk Router mit einem existierenden WLAN an das Internet anzubinden, gibt es 2 Szenarien.

  1. Aufstellen eines zweiten Routers im Clientmode und Anbindung des Freifunk Routers über Netzwerkkabel
  2. Nutzung eines Freifunk Routers mit USB Anschluss (WR842, WR1043, etc.) und Verwendung eines WLAN Stick

Die erste Lösung lässt sich recht einfach realisieren, hat aber den Nachteil, das zusammen mit dem Freifunk Router 2 Router im Einsatz sind. Entsprechend 2 Netzteile, eventuell noch ein Dreifachverteiler und ein Netzwerkkabel. Neben dem finanziell hohen Aufwand auch eine optisch unschöne Lösung. Die 2. Lösung ist, vom Materialaufwand und optischen Eindruck, wesentlich ansprechender, wenn auch die technische Umsetzung nicht ganz trivial ist. Hauptgrund für Schwierigkeiten sind die verschiedenen Chipsätze der WLAN Sticks und deren mehr oder weniger gute Implementierung/ Unterstützung in OpenWRT

Anmerkung: Aufgrund der Tatsache, das eine WLAN Verbindung immer langsamer ist, als eine Netzwerkanbindung über Kabel, sollte WAN über WLAN nur im Notfall genutzt werden. Eine Kabelverbindung, zwischen Internetzugang und Freifunk Router, ist immer schneller und robuster.

Auswahl des WLAN Stick

Ich habe mehrere Sticks getestet und nur einen als uneingeschränkt empfehlbar herausgefunden. Es mag sein, das mit mangels Linux Erfahrung der ein oder andere Trick nicht geläufig ist. Kernelmodule selber zu kompilieren o.ä. kam für mich nicht in Frage. Der Stick sollte mit den im Meshkit angebotenen und nachladbaren Kernelmodulen funktionieren

Nicht empfohlene Sticks

  • Logilink WL0084A (Realtek Chipsatz) - Router hängt sich beim Scan auf
  • TP-Link TL-WN722N (Atheros Chipsatz) - Als Regionaleinstellung funktioniert nur CN (China), systemweit fehlen also Kanal 12+13

Empfohlene Sticks

  • D-Link DWL-G122 HW Revision C1 (Ralink Chipsatz). Den Stick gibt es in den HW Revisionen A1, B1, C1 oder E1. Jede Revision benötigt ein anderes Kernelmodul. Ich habe nur die Revision C1 getestet und kann daher keine Aussage über die Anderen treffen. Der Stick ist ein 11g Stick. Es ist also maximal eine Brutto Datenrate von 54MBit zu erreichen.

Installation

Ich schildere nun die Installation und Inbetriebnahme eines D-Link DWL-G122 HW Revision C1. Der verwendete Router ist ein TP-Link WR842ND mit der aktuellen Meshkit Firmware. Zur installation solltet ihr per Kabel an einem LAN Port verbunden sein und den Router über 192.168.1.1 im Browser aufgerufen haben. Verbindung über WLAN ist nicht angeraten, da die Interfaces mehrmals neugestartet werden und die Verbindung abreißen wird.

Kernelmodul installieren

Der eingebauten Chipsatz wird vom Kernelmodul kmod-rt73-usb unterstützt (unter Windows würde man es Treiber nennen). Wir rufen also im Webinterface System -> Paketverwaltung auf. Dort als erstes "Liste aktualisieren". Dann den Tab "Verfügbare Pakete" auswählen und in das Suchfeld rt73 eintragen. Es sollte genau das Paket kmod-rt73-usb angezeigt werden. Dieses installieren wir. Das Log der Installation sollte wie folgt aussehen:

Installing kmod-rt73-usb (3.18.10+2015-03-09-3) to root...
Downloading http://meshkit.freifunk-halle.org/static/ar71xx-r45287/packages/base/kmod-rt73-usb_3.18.10+2015-03-09-3_ar71xx.ipk.
Installing kmod-rt2x00-usb (3.18.10+2015-03-09-3) to root...
Downloading http://meshkit.freifunk-halle.org/static/ar71xx-r45287/packages/base/kmod-rt2x00-usb_3.18.10+2015-03-09-3_ar71xx.ipk.
Installing kmod-rt2x00-lib (3.18.10+2015-03-09-3) to root...
Downloading http://meshkit.freifunk-halle.org/static/ar71xx-r45287/packages/base/kmod-rt2x00-lib_3.18.10+2015-03-09-3_ar71xx.ipk.
Installing kmod-lib-crc-itu-t (3.18.10-1) to root...
Downloading http://meshkit.freifunk-halle.org/static/ar71xx-r45287/packages/base/kmod-lib-crc-itu-t_3.18.10-1_ar71xx.ipk.
Configuring kmod-lib-crc-itu-t.
Configuring kmod-rt2x00-lib.
Configuring kmod-rt2x00-usb.
Configuring kmod-rt73-usb.

Nach der Installation von Kernelmodulen muß immer ein re-boot erfolgen. Ansonsten stehen diese nicht zur Verfügung. Beim re-boot kann der Stick schon angesteckt werden.

Stick konfigurieren

Beim ersten Bootvorgang mit gestecktem Stick, wird der Stick als neues Device erkannt und ist unter Schnittstellen -> Drahtlos als "radio1" automatisch angelegt. Nach diesem ersten Boot wird das im Router eingebaute WLAN nicht (korrekt) funktionieren. Der Grund ist, das default für den Stick die Regionaleinstellungen "US" verwendet werden. Diese Settings gelten scheinbar System-weit und bringen den Atheros Chipsatz des Routers aus dem Tritt. Der erste Schritt ist also in den Einstellungen des "radio1" im Tab "Erweiterte Einstellungen" den Ländercode auf "DE" einzustellen. Als "Modus" wählen wir "Client". Danach das System re-booten, damit der Stick erneut geladen wird und die richtigen Einstellungen gelten.

WLAN verbinden

Um uns mit einem WLAN zu verbinden führen wir unter Schnittstellen -> Drahtlos auf dem "radio1" einen Scan durch. In der angezeigten Liste wählen wir das entsprechende WLAN aus indem wir Diesem beitreten. Jetzt legt der Router automatisch eine neue Schnittstelle (Interface) WWAN an und öffnet die Konfigurationsseite für das Device "radio1". Auf dieser Seite muss der WPA Key des zu verbindenen WLAN eingetragen werden. Nach dem "Speichern und Anwenden" sollten wir schon TX/RX Pakete sehen, die von einer erfolgreichen Verbindung herrühren.

VPN konfigurieren

Als letzten Schritt müssen wir noch unter Schnittstellen die Konfigurationsseite für WWAN aufrufen und als Protokoll "Halle-DHCP" auswählen, setzen und "Speichern und Anwenden". Das Protokoll ist wichtig, da sonst die VPN Tunnel nicht initialisiert werden.

Gegenkontrolle an der Konsole

Um die Konfiguration zu überprüfen, können wir uns an der SSH Konsole mit Putty anmelden und mit cat /etc/config/wireless die Konfiguration anschauen. Die letzten beiden Blöcke sollten aussehen wie unten gezeigt. Wenn alles richtig ist, einen re-boot durchführen und die Verbindung sollte stehen. Unter OLSR -> Nachbarn sollten nach kurzer Zeit die Gateways zu sehen sein.

root@Johannisviertel-Essbar:~# cat /etc/config/wireless

config wifi-device 'radio0'
        option type 'mac80211'
        option path 'platform/ar934x_wmac'
        option htmode 'HT20'
        option diversity '1'
        option distance '1000'
        option channel '13'
        option country 'DE'
        option hwmode '11g'
        option txpower '20'

config wifi-iface 'radio0_mesh'
        option device 'radio0'
        option encryption 'none'
        option network 'wireless0'
        option ssid 'ffde-adhoc'
        option bssid '02:CA:FF:EE:BA:BE'
        option mode 'adhoc'

config wifi-iface 'radio0_hotspot'
        option device 'radio0'
        option mode 'ap'
        option encryption 'none'
        option network 'batman'
        option ssid 'dessau.freifunk.net'

config wifi-device 'radio1'
        option type 'mac80211'
        option hwmode '11g'
        option path 'platform/ehci-platform/usb1/1-1/1-1:1.0'
        option txpower '20'
        option disabled '0'
        option country 'DE'
        option channel '1'

config wifi-iface
        option network 'wwan'
        option ssid 'FRITZ!Box Turbo Cable'
        option encryption 'psk2'
        option device 'radio1'
        option mode 'sta'
        option bssid '24:65:11:2F:EA:18'
        option key '12345678910'

root@Johannisviertel-Essbar:~#