Freifunk/PrivateWLAN
Warnung
Achtung: Diese Seite enthält Anleitungen, die ein sehr weitgehendes Verständnis der eingesetzten Technologien voraussetzen. Beachten Sie, dass ein erhebliches Risiko besteht, dass Sie ihr Gerät in einen nicht-funktionsfähigen Zustand versetzen. Das ist natürlich um so größer, je weniger Sie verstehen.
Getestete Geräte
Die nachfolgenden Anleitungen wurden getestet auf folgenden Plattformen:
- TP-Link TR-WL841N, Firmware 0.6.3
Vorbedingung
SSH-Zugriff auf einzurichtende Geräte nötig. Dieser muss ggf. im Expert-Mode konfiguriert werden. Da der SSH-Zugang fortan auch im Freifunk-Mesh erreichbar ist, sollte ein starkes Passwort oder viel besser, ein Public Key für SSH eingerichtet werden.
Ob die Konfiguration nach automatischen Firmware-Updates (oder auch manuellen Firmware-Updates) erhalten bleibt, ist derzeit noch ungetestet. Wer keine Überraschungen erleben will, deaktiviert also die automatischen Updates und führt mit ein wenig Zeit ausgestattet das Update selbst in einer ruhigen Minute aus.
Privates WLAN
Vgl.: http://gluon.readthedocs.org/en/v2014.4/features/private-wlan.html
Es lässt sich recht einfach ein "normales" verschlüsseltes WLAN konfigurieren:
- Dieses WLAN hat eine übliche WPA-PSK-Verschlüsselung. Es sollten ebenso auch komplexere (oder gar: einfachere, also unverschlüsselte) Strukturen einrichtbar sein. Dazu sollte sie OpenWrt-Dokumentation zu Rate gezogen werden - siehe Links unten.
- Dieses WLAN ist mit der Bridge "wan" verbunden (device name br-wan)
- Der Router konfiguriert diese Netzwerkbrücke mit dem Namen "wan" und verbindet sie in der normalen Konfiguration ausschließlich mit dem "WAN"-Anschluss des Routers - in der "Privates WLAN"-Konfiguration eben auch mit dem dann neu erzeugten Infrastruktur-WLAN
Konfiguration
uci set wireless.wan_radio0=wifi-iface uci set wireless.wan_radio0.device=radio0 uci set wireless.wan_radio0.network=wan uci set wireless.wan_radio0.mode=ap uci set wireless.wan_radio0.encryption=psk2 uci set wireless.wan_radio0.ssid="private1" uci set wireless.wan_radio0.key="PRIVATE1" uci set wireless.wan_radio0.disabled=0 uci commit wifi
SSID- und Key-Konfiguration müssen natürlich an das gewünschte Ergebnis angepasst werden. "wan_radio0" ist der Name der Interface-Konfiguration. Die sollte sich nicht mit anderen konfigurierten Interfaces überschneiden.
Privates WLAN über mehrere Stationen via 4-Address-Mode
Privates WLAN schön und gut. Aber wer mehr als einen Freifunk-Node aufgebaut hat, profitiert bei Freifunk ja vom Mesh-Mechanismus und dem Adhoc-Netz zwischen den Knoten. So wird es bei Freifunk ja möglich, weitere Router quasi als "Repeater" zu verwenden - ohne eigenen Anschluss an ein LAN.
Infrastruktur-WLAN mit 4-Address-Mode
(Media:Privatesinfrastrukturnetz.png, Media:Privatesinfrastrukturnetz.svg)
Etwas entfernt ähnliches lässt sich auch für das Private WLAN konfigurieren. Und zwar auf Basis des auch manchmal "WDS" genannten 4-Adressen-Modus. Aber Achtung: Dabei handelt es sich nicht um ein vollwertiges Mesh-Netz, sondern um einen erweiterten Infrastruktur-Betrieb. Konsequenz ist, dass die Verbindungen von Punkt möglichst geplant sein sollten.
Im folgenden soll ein solches Netz "privates Infrastruktur-Netz" heißen. Achtung: Davon können durchaus mehrere eingerichtet werden - was unter bestimmten Voraussetzungen eventuell auch sinnvoll ist. In einem privaten Infrastruktur-Netz gibt es exakt einen Access Point (AP) und einen oder mehrere (naja, oder keine, aber dann kann mans auch lassen) Stations (STA).
Konfiguration eines privaten Infrastruktur-Netz Access Point
uci set wireless.wds1ap_radio0=wifi-iface uci set wireless.wds1ap_radio0.device=radio0 uci set wireless.wds1ap_radio0.network=wan uci set wireless.wds1ap_radio0.mode=ap uci set wireless.wds1ap_radio0.encryption=psk2 uci set wireless.wds1ap_radio0.ssid="wds1" uci set wireless.wds1ap_radio0.key="PRIVATEKEY" uci set wireless.wds1ap_radio0.wds=1 uci set wireless.wda1ap_radio0.disabled=0 uci commit wifi
Dabei können und sollten SSID und Key angepasst werden. "wds1ap_radio0" ist der Name der Konfiguration. Sollen mehrere entsprechende Interfaces konfiguriert werden, ist der Name der Konfiguration natürlich unterschiedlich zu wählen. Das Setting "wds=1" aktiviert lediglich den 4-Address-Mode und enumeriert nicht etwa die Netze (d.h. das muss für alle privaten Infrastruktur-Netze auf 1 stehen und stehen bleiben!). U.U. ist ein Reboot nötig.
Konfiguration einer privaten Infrastruktur-Netz Station
uci set wireless.wds1sta_radio0=wifi-iface uci set wireless.wds1sta_radio0.device=radio0 uci set wireless.wds1sta_radio0.network=wan uci set wireless.wds1sta_radio0.mode=sta uci set wireless.wds1sta_radio0.encryption=psk2 uci set wireless.wds1sta_radio0.ssid="wds1" uci set wireless.wds1sta_radio0.key="PRIVATEKEY" uci set wireless.wds1sta_radio0.wds=1 uci set wireless.wda1sta_radio0.disabled=0 uci commit wifi
Dabei können und sollten SSID und Key angepasst werden und sollten natürlich der Konfiguration des Access Points entsprechen. U.U. ist ein Reboot nötig.
Mehrere Infrastrukturnetze verbinden
Infrastruktur-Netze lassen sich ganz einfach verbinden, indem die o.g. Konfiguration jeweils für eines der Netze auf demselben Gerät ausgeführt wird.
- Ein Gerät kann gleichzeitig Station in einem privaten Infrastruktur-Netz sein und Station in einem anderen.
- Ein Gerät kann gleichzeitig Station in einem privaten Infrastruktur-Netz sein und Access Point in einem anderen.
- Ein Gerät kann gleichzeitig Access Point in einem privaten Infrastruktur-Netz sein und Access Point in einem anderen - aber diese Konfiguration ist nicht sehr sinnvoll, da die Reichweite ja jeweils identisch ist. Ausnahme evtl.: Infrastruktur-Netze auf verschiedenen Radio-PHYs.
Anmerkungen
Bridge-Loops sollten eigentlich vom Bridging Code im Linux auf den Routern erkannt werden. Glaubt jedenfalls der Autor dieser Zeilen. Ist aber nicht sicher - daher Obacht!
Bei nicht via Ethernet/LAN angebundenen Geräten sollte (Freifunk-)"Mesh via WAN" deaktiviert werden. Denn was sonst eigentlich kein großes Problem ist, wenn nichts angeschlossen ist, sieht nun, mit dem privaten Infrastruktur-Netz, ganz anders aus: auf dem WAN-Interface ist nun via Brücke(n) das private LAN und damit auch der häusliche Internet-Anschluss erreichbar. Wenn nun Mesh auf WAN aktiviert wäre, würden die Router via privatem Infrastruktur-Netz Verbindung mit dem Freifunk-Gateway im Internet aufnehmen. Das macht aber besser nur das Gerät, das wirklich selbst per Kabel angeschlossen ist. Die anderen bekommen Freifunk dann via Freifunk-Wireless-Mesh.
Bisher nicht untersucht wurde, ob noch Anpassungen an den Bridge-Tables nötig sind (ebtables).
Links
- Gluon-Dokumentation "Private WLAN": http://gluon.readthedocs.org/en/v2014.4/features/private-wlan.html
- OpenWrt-Wireless-Konfiguration: http://wiki.openwrt.org/doc/uci/wireless
- Atheros und OpenWrt-WDS: http://wiki.openwrt.org/doc/recipes/atheroswds