Roaming bedeutet, dass das Endgerät von Router zu Router weiter gereicht wird und im selben Netz bleibt. Dies ist zu vergleichen, wenn man sich mit seinem Handy durch die Stadt bewegt und es sich immer automatisch mit dem nächst besten Sendemast verbindet. Roaming ist zur Zeit nur zwischen Router möglich die via Kabel mit einander verbunden sind.

Das Roaming basiert auf Batman. Benötigt werden die Pakete kmod-batman-adv und batctl, welche in Kathleen 0.1.2 schon enthalten sind. Überprüfen kann man dies unter System -> Paketverwaltung.

Testphase

Aktuell installiert auf TP-Link WDR3600, Nanostation M2, Nanostaion Loco M2 und Picostation M2.

Konfiguration Kathleen

Die Anleitung basiert auf der eigentlichen Anleitung für Kathleen und beinhaltet Änderungen zur stand alone konfiguration.

  • Auf Routern mit Roaming wird ein verschlüseltes Servicenetz eingerichte, damit bei Problemen mit dem Roamingnetz und dem Meshnetz von außen noch auf den Router zugegriffen werden kann. Dafür nehmen wir die alten 6er Netze, da sie keine aktive Rolle im FF-Netz spielen.
    • SSID: ServiceFFP-(letzten beiden Stellen d. IP; Bsp.: ServiceFFP-254-91)
    • IP-Vergabe im FF-Wizard: Unter DHCP 6er-Adresse angeben. Diese wird wie folgt gebildet. Die Mesh-IP im Beispiel lautet 10.22.254.91. Davon nehmen wir die letzten beiden Stellen und bilden die Adresse 6.254.91.0/24.
  • DHCP-WLAN analog mit der 6er-Adresse konfigurieren.
  • Drahtlos 2.4GHz: Das interface mit der SSID "ServiceFFP-xxx-xx" bearbeiten und unter Wireless Security eine WPA2-Verschlüsselung einrichten.

Router mit 4MB Speicher

Betrifft: WR841N/ND und WR741N/ND !!!Nur als Client verwendbar!!!
In der Kathleen für die kleinen 4MB Router ist Batman nicht enthalten. Daher ist ein kleiner Umweg nötig, um Batman drauf zu bekommen. Das ffp-apdb-Script sollte erst zum Schluss eingespielt werden.
Nach der Konfiguration muss das Backbone-Image für den Router eingespielt werden und der Haken bei "Keep Settings" gesetzt bleiben. Nach dem Reboot kann mit der Client-Konfiguration fortgefahren werden.

Server

  1. Unter Netzwerk -> Drahtlos ein neues Master-Netzwerk anlegen
    1. ESSID: Name für das Roamingnetz
      • Modus: Access Point
      • Keine Schnittstelle auswählen
      • "Speichern und anwenden"
  2. Unter Netzwerk -> Schnittstellen eine neue Schnittstelle anlegen
    1. Name der Schnittstelle: ROAM_AP (wenn ein anderer Name gewählt wird musst du die restliche Anleitung daran anpassen)
      • Protokoll: Statische Adresse
      • Häkchen bei Netzwerbrücke erzeugen wichtig
      • Schnittstelle: Drahtlosnetzwerk: Master "ESSID-Name der unter 1 gewählt wurde"
      • "speichern und anwenden"
    2. Hier geben wir ein extra DHCP-Netz neben dem schon vorhandenen Netz an. Als Beispiel nehmen wir jetzt ein 10.22.192.0/24 Netz. Die ersten 10 Adressen sind für die Accesspoints. Als erstes auf "DHCP Server einrichten" klicken, da man sonst alles doppelt eingeben darf.
      • IPv4 Adresse: 10.22.192.1
      • Netzmaske: 255.255.255.0
      • DHCP Server
      • Start: 10.22.192.11
      • Limit: 150 (je nach Größe und Wunsch)
      • Laufzeit: 15m oder 30m
      • Unter Erweiterte Einstellungen, Häkchen bei Start erzwingen
      • Bei dem Reiter IPv6 alles auf disable stellen.
      • "speichern und anwenden"
    3. Die eben erzeugte Schnittstelle zur Firewallzone Freifunk hinzufügen.
    4. Unter Services -> OLSR IPv4 -> HNA-Announcements das eben erstellte DHCP-Netz hinzufügen (Netz-ID und Netzmaske)
  3. Über ssh mit dem Router verbinden und die rc.local editieren.
      • vi /etc/rc.local
      • Folgende Zeilen hinzufügen:
        batctl if add wlan0-adhoc-2
        #batctl if add *weitere meshende Schnittstelle* //optional, ggf. Kabelkopplung
        brctl addif br-ROAM_AP bat0
        batctl it 3000
        batctl gw server
        ip link set bat0 up

      • exec reboot

Server auf DHCP Interface

  1. Unter System -> Startup bei Local Startup folgende Zeilen vor 'exit 0' hinzufügen:
    • Eine dieser Zeilen, je nachdem, wie das Mesh-Interface heißt
      • batctl if add wlan0-adhoc-2
      • batctl if add wlan0-mesh-2
      • batctl if add wlan1-mesh-2
    • Eine dieser Zeilen, wenn der Router eine Kabelkopplung hat, je nachdem, welches das Kabelkopplungs-Interface ist
      • batctl if add eth0.3
      • batctl if add eth0
      • batctl if add eth1
    • alle folgenden Zeilen
      • brctl addif br-dhcp bat0
      • batctl it 3000
      • batctl gw server
      • ip link set bat0 up
  2. Speichern
  3. Unter System -> Reboot den Router neu starten

Nach dem Neustart sollte das ganze schon funktionieren, wenn man allerdings an den Netzwerkeinstellungen etwas ändert, kann es sein, dass das bat0-Device nicht mehr in der Bridge ist, deshalb:

  1. Unter Network -> Interfaces das DHCP-Interface editieren
    1. Unter Physical Settings bei Interface bat0 hinzufügen
    2. Save
    3. Save and Apply

Damit ist das bat0 Device auch nach Änderungen an den Einstellungen in der Bridge.

Client

  1. Unter Netzwerk -> Drahtlos ein neues Master-Netzwerk anlegen
    1. ESSID: Name für das Roamingnetz (identisch mit Server)
      • Modus: Access Point
      • Keine Schnittstelle auswählen
      • "Speichern und anwenden"
  2. Unter Netzwerk -> Schnittstellen eine neue Schnittstelle anlegen
    1. Name der Schnittstelle: ROAM_AP (wenn ein anderer Name gewählt wird musst du die restliche Anleitung daran anpassen)
      • Protokoll: Ignoriert / Unmanaged
      • Häkchen bei Netzwerbrücke erzeugen wichtig
      • Schnittstelle: Drahtlosnetzwerk: Master "ESSID-Name der unter 1 gewählt wurde"
      • "speichern und anwenden"
    2. nichts ändern
      • "speichern und anwenden"
    3. Die eben erzeugte Schnittstelle wird zu keiner Firewallzone hinzugefügt.
  3. Über ssh mit dem Router verbinden und die rc.local editieren.
      • vi /etc/rc.local
      • Folgende Zeilen hinzufügen:
batctl if add wlan0-adhoc-2
# batctl if add *weitere meshende Schnittstelle* //optional, ggf. Kabelkopplung
brctl addif br-ROAM_AP bat0 
batctl it 3000 
batctl gw client
ip link set bat0 up
      • und noch
        exec reboot