Howto/Backbone-Client

Aus Freifunk MWU Wiki
Wechseln zu: Navigation, Suche

Die folgende Beschreibung soll dich mit dem nötigen Wissen versorgen, wenn du dich an unser Backbone-Netz andocken willst. Aktuell stehen hier die UniMedizin und das Schloss Waldthausen zur Verfügung. Näheres findest du unter "Standorte".

Eigenschaften des Backbone-Netzes

  • Anbindung über größere Strecken möglich
  • Unser Backbone sendet und hört nur auf 5 GHz
  • Dafür ist ein Richtfunk-Router der Firma Ubiquiti notwendig für 5 GHz
  • Richtfunk-Router wird mit Original-Software des Herstellers verwendet
  • Konfiguration des Richtfunk-Routers erfolgt als "virtuelles" Kabel zwischen deinem Router und dem Backbone-Standort
  • Über die Verbindung wird das mesh-Protokoll übertragen, wie es Freifunk-Router nutzen um sich über die Antenne mit Nachbar-Routern zu verbinden.

Schritte der Anleitung

Ein Client-System am Backbone besteht also zur Zeit in der Regel aus zwei physischen Geräten: Dem Richtfunk-Router (Nanostation, Nanobeam etc.) mit der Original-Firmware (AirOS) und dem Freifunk-Router mit Gluon. Im Laufe der folgenden Beschreibung werden also zwei Systeme eingerichtet. Nach der Einrichtung wird der Richtfunk-Router über ein Patchkabel mit einem der LAN-Ports des Freifunk-Routers verbunden.

Einrichten des AirOS

Um den AirOS-Router (NanoStation, NanoBeam, etc.) zu konfigurieren, schließt man diesen mit Hilfe des PoE-Adapters direkt an den Computer an. Auf dem muss man dem Netzwerk-Interface manuell eine feste IP-Addresse im Netz 192.168.1.0/24 zuweisen, weil das AirOS-Gerät in genau dem Netz seine Default-Adresse hat. Das AirOS-Gerät ist danach unter der 192.168.1.20 erreichbar. Jetzt kann man sich mit einem Browser in dem AirOS-Router einloggen: https://192.168.1.20 Ubiquiti hat bei seinen Geräten im Auslieferungszustand den Benutzer ubnt mit Passwort ubnt.

Bevor man zum nächsten Reiter wechselt, immer die Konfiguration speichern, indem man den Button ändern rechts unter betätigt und dann oben in der blau erscheinenden Leiste den Button übernehmen drückt. Bei einigen Änderungen dauert es etwas, weil sich der Router neu startet, also immer warten, bis die Anzeige wieder da ist und reagiert (ca. 30 Sekunden).

Auf fast allen Seiten/Reitern nehmen wir Einstellungen vor:

System

Wir benennen das Gerät sinnvoll, setzen die Zeitzone, geben dem Admin-User ein gutes Passwort und legen zusätzlich noch einen Read-Only-User freifunk mit Passwort freifunk an (Status anschauen ohne Änderungen machen zu können). Schließlich sagen wir dem Gerät, wo es aufgestellt ist. Diese Koordinaten sind aber optional, haben für die Funktion keine Bedeutung.

NSM5confSYS.png

Das AirOS wird den Nutzer von Anfang an auffordern, das Passwort zu ändern. Daher fangen wir hier an. Das PW sollte zudem hinreichend gut sein, da der AirOS-Router später im Freifunk-Netz von der Allgemeinheit erreichbar sein wird.

Services

Die Discovery-Funktionen sollten deaktiviert sein. Auch das CDP Cisco Discovery Protocol ausschalten.

Advanced

Auch hier nur eines: die Entfernung (zu der weitesten Gegenstelle) kann voreingestellt werden auf etwa 6 km. Auf jeden Fall aber muss Auto-Adjust aktiviert sein.

NSM5confADV.png

Network

Wir konfigurieren das AirOS-Gerät so, dass es für etwaige Notfälle von einem lokal angeschlossenen Computer über eine 192.168.1.0/24-Adresse erreichbar ist. Weiterhin legen wir VLANs an, damit es über eine Adresse aus dem 10.37.2.0/23 über Freifunk erreichbar sein wird (Adresse: gemäß Netzplan). Damit die Einstellungsmöglichkeiten erst einmal Sichtbar werden, müsst ihr die Selektionsbox von "Einfache" auf "Erweitere Konfiguration" stellen.

VLAN-Konfiguration

Da wir die VLANs für alle anderen Schritte benötigen, fangen wir an diese anzulegen. VLAN 3 für Freifunk-Client und VLAN 10 für das mesh-Protokoll (BATMAN). Da diese VLAN Nummern auch später im Router übernommen werden, muss man erst mal im Router schauen, wie viele VLANs er erlaubt. Das hängt ganz vom Hersteller und Modell ab. In der Regel können alle Router mindestens die VLANs 1-15 nutzen. Die VLANs 1 und 2 sind dabei reserviert für interne Zwecke. Daher fangen wir mit Nr. 3 an und bleiben unter 16. Obwohl die Richtfunk-Router von Ubiquiti viel mehr VLANs können, sind wir wegen der Beschränkung im Freifunk-Router hier eingeengt. Die Anzahl der möglichen VLAN-Nummern bekommt man im Freifunk-Router angezeigt, wenn dort auf der Konsole der Befehl "swconfig dev switch0 help" eingegeben wird. Hier ein Hardcopy von der AirOS Oberfläche mit unseren gewählten Werten:

04 VLAN.jpg

Bridge-Konfiguration

Was wir in diesem Schritt machen müssen, ist eine Bündelung vorzunehmen. Wir legen dazu weitere Bridges an. Bridge0 gibt es schon, da muss WLAN0 entfernt werden (LAN0 bleibt). In die Bridge1 kommt das Freifunk-Management mit VLAN3 (lan0.3) und in Bridge2 kommt das WLAN-Interface und das mesh-VLAN10 (wlan0, lan0.10). Der Haken unter der Spalte STP sollte nicht gesetzt sein.

Ganz wichtig: Nach diesem Schritt die Konfiguration übernehmen und speichern. Erst nachdem dieses in der Konfiguration drin ist, mit den folgenden Schritten weitermachen.

03 Bridge.jpg

Managment-IP-Konfiguration

Wichtig: Erst die IP Konfiguration und IP-Alias in einem Stück eintragen und dann erst Speichern und Anwenden klicken. Sonst kommt ihr nicht mehr an die Einheit dran und müsst mit einem Firmware-Reset wieder ganz von vorne anfangen.

Die Konfiguration wird nun, wie im Bild zu sehen, vorgenommen. Erst "Bridge1" einstellen. Eure eindeutige frische unbenutzte IP-Adresse habt ihr euch selber im Netzplan reserviert und benutzt die an dieser Stelle (auf keinen Fall die aus dem Bild verwenden). Wichtig sind auch die weiteren Einträge wie DNS und GATEWAY, damit das Gerät später auch aus der Ferne erreichbar ist.

01 Konfig Network Management.jpg

Als nächstes wird Alias-IP eingerichtet, damit das AirOS-Gerät im Notfall auch direkt an einem PC angeschlossen, konfiguriert werden kann. Das Interface für die IP ist "Bridge0".

02 IP-Aliase.jpg

Nach dem Übernehmen und Anwenden der Einstellungen sollte der AirOS-Router lokal unter der 192.168.1.0/24er Adresse erreichbar sein. Später dann auch über das Freifunk-Netz dank des VLAN3 unter der vergebenen Freifunk-Backbone-IP aus dem Netzplan.

Wireless

Befindet sich der AirOS-Router schon in Empfangsposition, so kann im Wireless-Reiter die Backbone-SSID ausgewählt werden, mit der man sich nun verbinden will. Idealerweise ist das die, zu der man den besten Empfang hat an seinem Standort. Hierzu stellt man den Wireless Mode auf Station, was im Ubiquiti-Slang der Client Mode ist, und kann dann über den Button rechts neben dem SSID-Feld eine Gegenstelle auswählen.

Das Backbone-Mesh ist WPA2-verschlüsselt, man braucht also einen PSK bzw. eine Passphrase, die man auf der Mailing-Liste Backbone erfragen kann. Hierhin kann man sich auch bei Problemen oder mit Fragen wenden. Die Frequenz oder Kanalbreite sollte bei den weiteren Optionen auf Auto gestellt sein, da sonst einige Gegenstellen nicht angezeigt würden. Den Haken bei Frequenz-Scan-Liste braucht man nicht zu setzen, wenn die SSID der Gegenstation eingetragen ist. Das hat den Vorteil, dass bei einem Frequenzwechsel sich das Gerät automatisch die Gegenstation sucht. Die Kanäle für den Innenbereich werden abgewählt, dadurch wird das Scannen der übrigen Kanäle schneller.

05 Wireless.jpg

Wenn man ganz sichergehen will, ob man die richtige Gegenstelle benutzen, dann drückt man den Button Auswählen neben dem Eingabefeld für die SSID. Dann wird in einem Popup-Fenster ein Frequenzscan durchgeführt.

06 Scan-Verlauf.jpg

Sobald die gewünschte SSID in der Liste auftaucht, wählt man diese aus (in das Kreis-Icon klicken) und drückt den Button Auswählen, das Fenster schliesst sich und die SSID wird übernommen. Speichern und Anwenden nicht vergessen.

07 Scan-SSID-Auswahl.jpg

Main

Auf der Seite Main sind dann die wichtigsten Werte dargestellt, insbesondere wird auch die Qualität der Verbindung angezeigt.

08 Übersicht.jpg

Reset im Notfall

Bei der Konfiguration kann es durchaus sein, dass man sich ausschließt oder anderweitig das Gerät nicht mehr erreichbar ist. Um einen Werksreset durchzuführen, muss entweder der Resetknopf am Gerät betätigt werden, alternativ gibt es diesen auch am PoE-Injektor. Der Schalter am Gerät löst sich nämlich schnell von der Leiterplatte, wenn man zu stark drückt und das Gehäuse der Nanobeams lässt sich nicht öffnen.

Gluon-Router-Konfiguration

Hier wird beispielhaft eine Konfiguration eines WDR3600 gezeigt. Sie befindet sich unter /etc/config/network. Es wird der gesamte Switch in den Tagged-Modus umgeschaltet. Sollte dies nicht gewollt sein, so entfernt man einfach die entsprechenden Ports aus der Konfigurationszeile (z.B. LAN-Port 1 und 2 raus: option ports '0t 4t 5t'). Das kleine t bedeutet jeweils die Teilnahme des Ports am Betrieb mit Tags. Aufpassen: bei anderen Routermodellen kann die Numerierung der Ports anders sein, wie auch der Nummernbereich, aus dem man sich VLAN IDs aussuchen kann. Infos hierzu gibt es in den entsprechende OpenWRT-Wiki-Seiten über das konkrete Routermodell, wo der konkret verbaute Switch erklärt wird. Es sind auch Unterschiede zwischen Hardware-Revisionen desselben Modells möglich!

  • anzeigen der Anzahl an unterstützten VLAN-IDs, höchstes benutzbares VLAN ist "angezeigte Anzahl - 1" (der WR841 z.B. nur VLAN-IDs <16):
 swconfig dev switch0 help
 
  • anzeigen der Portkonfiguration:
 swconfig dev switch0 show

Konfiguration der Network config:

 config switch                                                                            
       option name 'switch0'
       option reset '1'
       option enable_vlan '1'

Ports aus dem default VLAN 1 löschen (außer Port 0t = CPU):

 config switch_vlan                                                              
        option device 'switch0'                                                          
        option vlan '1'                                                                  
        option ports '0t'                                                        

Anlegen eines Management-VLANs, über das später das Freifunk-Client-Netz laufen wird:

 #Freifunk Client MNGMT VLAN                                                              
 config switch_vlan                                                              
       option device 'switch0'                                                          
       option vlan '3'                                                                  
       option ports '0t 2t 3t 4t 5t'  

Anlegen eines VLANs, über das die BATMAN-Pakete laufen. Als Konvention bietet sich an, den WLAN-Kanal des AirOS-Geräts als VLAN-Nummer zu wählen. Hier die allerdings die 10, weil der Router maximal die 16 zulässt:

 config switch_vlan                                                            
       option device 'switch0'                                                          
       option vlan '10'                                                                
       option ports '0t 2t 3t 4t 5t'

Nun wird das VLAN3 der Client-Bridge hinzugefügt und das alte Untagged-Interface (in diesem Fall eth0) wird entfernt:

 config interface 'client'
       option reqprefix 'no'
       list ifname 'eth0.3'
       list ifname 'bat0'
       option proto 'dhcpv6'
       option type 'bridge'
       option igmp_snooping '0'
       option macaddr 'xx:xx:xx:xx:xx:xx'   # diese MAC-Adresse nicht ändern  
       option peerdns '1'

Schließlich wird das BATMAN-VLAN noch dem bat0-Interface hinzugefügt:

Gluon 2017.1.x

 config interface 'mesh_vlan10'                                                          
        option auto '1'
        option ifname 'eth0.10'                                                         
        option proto 'gluon_mesh'  
        option fixed_mtu '1'
        option transitive '1'
        option macaddr 'xx:xx:xx:xx:xx:xx'   # hier eine korrekt formatierte, eindeutige MAC-Adresse einfügen, die aus dem Locally Administered Bereich stammt, Online-Generatoren gibt es z.B. hier

Gluon 2018.1.x

 config interface 'mesh_vlan10'
        option disabled '0'
        option ifname 'eth0.10'
        option proto 'gluon_wired'
        option fixed_mtu '1'
        option transitive '1'
        option macaddr 'xx:xx:xx:xx:xx:xx'   # hier eine korrekt formatierte, eindeutige MAC-Adresse einfügen, die aus dem Locally Administered Bereich stammt, Online-Generatoren gibt es z.B. hier
        option index '0'

Außerdem sollten ab Gluon 2018.1.x alle manuell angelegten Mesh-Interfaces in /etc/config/network der Zone wired_mesh hinzugefügt werden.

 config zone 'wired_mesh'
        option name 'wired_mesh'
        option input 'REJECT'
        option forward 'REJECT'
        option output 'ACCEPT'
        list network 'mesh_lan'
        list network 'mesh_vlan10'

Danach startet man das Netzwerk neu mit:

/etc/init.d/network restart

Dies dauert ein paar Sekunden.

Will man mehrere AirOS-Router an einem Standort betreiben, so sollte man für jeden ein eigenes BATMAN-VLAN konfigurieren und dem bat0-Interface hinzufügen. Die AirOS-Router können alle mit verschiedenen Backbone-IPs im gleichen Management-VLAN sein. Es muss jedoch sichergestellt werden, dass mehrere AirOS-Router dasselbe Freifunk-Client-VLAN (hier VLAN3) nicht zusammen "bridgen". Genauso muss sichergestellt werdern, dass man mehrere Gluon-Router nur über BATMAN-Ports (Mesh) zusammenstecken darf, nicht aber über Client-Ports (hier VLAN 3).

Testen des Setups

VLAN-Switch-Konfigration

Die VLAN-Konfiguration kann jetzt auf Richtigkeit überprüft werden:

swconfig dev switch0 show

Die Ausgabe sollte folgendes beinhalten:

Global attributes:
        enable_vlan: 1
        mirror_monitor_port: 15
Port 0:
        enable_mirror_rx: 0
        enable_mirror_tx: 0
        pvid: 0
        link: port:0 link:up speed:1000baseT full-duplex txflow rxflow
Port 1:
        enable_mirror_rx: 0
        enable_mirror_tx: 0
        pvid: 0
        link: port:1 link:up speed:100baseT full-duplex auto
Port 2:
        enable_mirror_rx: 0
        enable_mirror_tx: 0
        pvid: 0
        link: port:2 link:down
Port 3:
        enable_mirror_rx: 0
        enable_mirror_tx: 0
        pvid: 0
        link: port:3 link:down
Port 4:
        enable_mirror_rx: 0
        enable_mirror_tx: 0
        pvid: 0
        link: port:4 link:up speed:100baseT full-duplex auto
VLAN 0:
        vid: 0
        ports: 0t 1t 2t 3t 4t
VLAN 1:
        vid: 1
        ports: 0t
VLAN 3:
        vid: 3
        ports: 0t 1t 2t 3t 4t
VLAN 10:
        vid: 10
        ports: 0t 1t 2t 3t 4t

VLAN-Interfaces

Wenn der Gluon-Router mit dem AirOS-Router verbunden ist, sollten sowohl beim Interface eth0.10 als auch bei eth0.3. auf Rx- und Tx-Seite (Receiver und Transmitter) Pakete fließen.

 ip address show dev eth0.10

Erreichbarkeit im Freifunk-Netz

Nun kann man versuchen, den AirOS-Router im Freifunk anzupingen. Das ist die IP-Adresse, die Du Dir im Netzplan für Dein Backbone-Setup ausgesucht hast.

 ping <backbone-ip>

Dies sollte innerhalb des ganzen Freifunk-Mainz-Netzes möglich sein.


Siehe auch