anleitungen:richtfunkstrecken

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
anleitungen:richtfunkstrecken [2023/11/19 17:07] – Abschnitt zu mehreren Standorten angefangen epkrichianleitungen:richtfunkstrecken [2023/11/24 12:02] (aktuell) – [Mögliche Lösungen] epkrichi
Zeile 119: Zeile 119:
 ===== Mehrere Standorte verbinden ===== ===== Mehrere Standorte verbinden =====
  
-Mit Richtfunkgeräten lassen sich nicht nur zwei Standorte miteinander verbindenMan kann auch eine Verbindung von Standort A zu B und eine von B zu C errichtenEigentlich funktioniert das auch genau so, wie man sich das vorstellt:+<WRAP center round info 60%> 
 +Dieser Abschnitt basiert auf einer [[https://wiki.freifunk-stuttgart.net/anleitungen:mesh_und_switche|Anleitung von Freifunk Stuttgart]]. 
 +</WRAP>
  
 +
 +Mit Richtfunkgeräten lassen sich nicht nur zwei Standorte miteinander verbinden. Man kann auch eine Verbindung von Standort A zu B und eine von B zu C errichten. Das bringt aber ein paar Probleme mit sich, die nicht ganz so leicht zu lösen sind.
 +
 +==== Das Problem ====
 +
 +
 +Das erste Problem ist, dass man an einem Standort, an dem es nur ein Richtfunkgerät gibt, normalerweise Mesh-on-WAN verwendet, damit man auf den LAN-Ports noch das Client-Netz verwenden kann. Möchte man aber zwei oder mehr Richtfunkgeräte verwenden, braucht man auch mehr als einen Port mit Mesh-Netz. Ein Workaround wäre es, hier Mesh-on-LAN zu verwenden, um alle Richtfunkgeräte anzubinden und um zusätzlich einen weiteren Router anzuschließen, auf dem Mesh-on-WAN aktiviert ist, um noch Geräte mit Client-Netz zu versorgen. Das sähe dann ungefähr so aus:
 +
 +{{ :anleitungen:richtfunk_mehrere_standorte_1.drawio.svg |}}
 +
 +Abgesehen davon, dass man jetzt, zwei Router verwendet, hat man noch ein weiteres Problem: Das batman-adv Mesh-Protokoll arbeitet auf Layer 2 - d.h. es schickt seine Pakete, mit denen es andere Mesh-Geräte findet, nicht an eine bestimmte IP-Adresse, sondern einfach an alle Geräte im selben Netzwerk. Da in einem Router auf den LAN-Ports standardmäßig geswitched wird, sieht die Netzwerktopologie auf Layer 2 - also aus Sicht von batman-adv - wie folgt aus:
 +
 +{{ :anleitungen:richtfunk_mehrere_standorte_2.drawio.svg |}}
 +
 +Die Router/Offloader glauben also alle, sie seien direkt - also ohne einen Freifunk-Router dazwischen - miteinander verbunden. Dass das so ist, kann man dann übrigens auch auf der Karte beobachten - dort ist zwischen allen beteiligten Routern eine Verbindung eingezeichnet. Das ist schlecht, denn batman-adv ist dafür verantwortlich, die beste Route für die Pakete zu wählen. Da mit jedem Hop - so nennt man einen Router zwischen dem eigenen Router und dem Ziel - das Risiko eines Paketverlusts und die Latenz (also die Zeit, die ein Paket braucht, bis es am Ziel ist) schlechter werden, sollten möglichst kurze Routen gewählt werden. Wenn batman die Hops aber nicht sieht, wählt es möglicherweise schlechte Routen.
 +
 +Außerdem hat das ganze ein weiteres Problem: Würde man - direkt oder indirekt - Standort 3 wieder mit Standort 1 verbinden, so hätte man eine Schleife gebaut. Diese werden möglicherweise nicht erkannt und dadurch legt man unter Umständen sein ganzes Netzwerk lahm.
 +
 +Übrigens: Im obigen Ansatz könnte man an Standort 2 auch gleich nur einen Router anschließen, an dem man Mesh-on-WAN aktiviert. Vor den WAN-Anschluss würde man dann einen Switch anschließen, an den alle Richtfunkgeräte angeschlossen werden. Das Endergebnis wäre dasselbe wie oben, nur dass man statt eines Freifunk-Routers einen Switch verwendet hat.
 +
 +==== Mögliche Lösungen ====
 +
 +=== Lösung 1 ===
 +
 +<WRAP center round important 60%>
 +Achtung! Diese erste Lösung haben wir nicht ausprobiert.
 +</WRAP>
 +
 +
 +Eine Möglichkeit zur Lösung des Mesh-Problems ist die Verwendung von Mesh-on-LAN und Mesh-on-WAN gleichzeitig. An einem der zwei Standorte, die man miteinander verbinden möchte, muss dann ein Freifunk-Router stehen, der z.B. mit dem WAN-Port an der Richtfunk-verbindung hängt und mit dem LAN-Port am Rest des Standorts. Zwischen den LAN-Ports und dem WAN-Ports wird nicht geswitched, also glaubt batman auch nicht, es hätte eine direkte Verbindung mit den anderen Standorten. Um ein Client-Netz zu erzeugen, bräuchte man dann allerdings einen weiteren Router.
 +
 +{{ :anleitungen:richtfunk_mehrere_standorte_3.drawio.svg |}}
 +
 +Standort 3 könnte in diesem Beispiel genauso aussehen wie auch Standort 2, falls man die Richtfunkverbindung noch weiter spannen möchte. Theoretisch könnte man auch weitere Router an einem Standort aufstellen, um Verzweigungen (das anschließen an mehr als zwei Richtfunkgeräte) zu ermöglichen.
 +
 +Der Vorteil dieser Lösung ist, dass sie ohne besondere Konfigurationen möglich ist. Somit gibt es auch nichts, was bei einem Firmware-Update kaputt gehen kann. Der Nachteil ist natürlich, dass man mehr Geräte braucht. Wenn man beim Erstellen von Verzweigungen nicht aufpasst, kann die Topologie für batman auch seltsam aussehen und das Routing ist dann unter Umständen nicht optimal.
 +
 +=== Lösung 2 ===
 +
 +Anstatt zusätzliche Router aufzustellen, kann man den Router auch so konfigurieren, dass er auf den LAN-Ports nicht mehr switcht. Man erstellt dann pro Richtfunkverbindung ein VLAN, welches auf dem Router nur mit einem Port und mit der "CPU" verbunden ist - Pakete, die an die CPU gehen, können von batman verarbeitet werden. Pakete, die bei der CPU ankommen und an einen anderen Router gehen sollen, werden dann auch über das passende VLAN wieder rausgeschickt.
 +
 +Für diese Lösung muss man allerdings die Netzwerkkonfiguration umschreiben, was nicht unbedingt updatefest ist. Wie genau das gehen kann, kann man in dem oben verlinkten Artikel von Freifunk Stuttgart nachlesen. Der Vorteil ist aber, dass die Topologie dann auf jeden Fall korrekt ist. Außerdem benötigt man nur einen Router pro Standort - denn wenn man schon an der Netzwerkkonfiguration arbeitet, kann man auch die besagten VLANs und gleichzeitig Ports mit Client-Netz konfigurieren. Man kann übrigens auch mehrere VLANs und Netze auf einen Port legen - man sollte sich nur bewusst sein, dass dadurch dann ein Flaschenhals für die Bandbreite entsteht.
 +
 +Hier mal ein Beispiel dazu:
 +
 +{{ :anleitungen:richtfunk_mehrere_standorte_4.drawio.svg |}}
 +
 +An Standort 2 sind mehrere Richtfunkgeräte vorhanden. Deswegen sind auf dem Router auch mehrere VLANs für Mesh-Interfaces konfiguriert. An den anderen Standorten sind die Router auch umkonfiguriert, damit sie das Mesh-Netz auf einem anderen VLAN empfangen. Normalerweise würden wir an solchen Standorten mit nur einer Richtfunkstrecke lieber noch einen Switch aufstellen, der das VLAN vorher entfernt/anbringt, damit man den Router zumindest dort nicht umkonfigurieren muss. An allen Ports mit einer "1" kann man nun APs anschließen (die 1 ist das standard-VLAN für alle Ports mit Client-Netz. Bei den bisherigen Beispielen war das nicht explizit eingezeichnet. Man kann das Client-Netz auch mit einer anderen Nummer versehen und zusammen mit den Mesh-Interfaces getagged auf einen gemeinsamen Port legen, falls man das unbedingt möchte - das spart Kabel/Ports, ist aber möglicherweise etwas komplizierter zu konfigurieren).
  • anleitungen/richtfunkstrecken.1700410043.txt.gz
  • Zuletzt geändert: 2023/11/19 17:07
  • von epkrichi