Firmwareunterschiede: Unterschied zwischen den Versionen

Aus Freifunk Franken
Wechseln zu:Navigation, Suche
Keine Bearbeitungszusammenfassung
Zeile 161: Zeile 161:
Hardware und bist an keine Firmwaregrenzen mehr gebunden."
Hardware und bist an keine Firmwaregrenzen mehr gebunden."
</div>
</div>
[[Kategorie:Technik]]
[[Kategorie:Einstiegsinformationen]]

Version vom 11. Juli 2021, 12:25 Uhr

Freifunk Franken unterscheidet im wesentlichen zwischen zwei Firmware-Varianten, der älteren "node" Variante und der neueren "layer3" Variante.

Man könnte diese beiden unterschiedlichen Firmwarevarianten auch Konzepte nennen.

node

Die node Variante basiert auf dem Hood-Konzept, dass je 1-2 Gateways auf Servern im Internet einzelne Bereiche, Hoods, versorgen.
Ein weiteres zentrales Element ist der keyXchange-v2, ein Datenbankserver, welcher den Nodes den Weg zu ihren korrekten Gateways zeigt.

Der node Betreiber muss hierfür lediglich die korrekte Firmware auf einem kompatiblen Gerät installieren und Koordinaten über eine Karte setzen, eine Kontakt-Mailadresse hinterlassen. Es stehen einige weitere Felder und Optionen bereit.

Die node Variante ist für jedermann geeignet, der es schon einmal bis in die Weboberfläche des eigenen Routers geschafft hat, oder dies gerne lernen möchte.

Die node Variante schafft je nach Gerät ca. 15-50 Mbit/s Durchsatz.

Alle Infos sowie Links zur node Variante findest du hier: [Link]

layer3

Die layer3 Variante richtet sich an Nutzer, welche mehr aus ihren Geräten herausholen wollen und mehr Kontrolle über ihr eigenes Netz haben wollen.
Denn der Nutzer baut sich dabei sein eigenes Netz, sucht sich Peering-Partner und wird Teil des Babel-Backbones von Freifunk Franken.

Die layer3 Variante findet oft auch Anwendung bei größeren Installationen mit Stock-FW APs dahinter und optional inklusive Richtfunk.

Dazu gehört Protokollierung in unserem Wiki, Kontakt zu der Community, und ein gewisses Hintergrundwissen im Netzwerkbereich, bzw die Bereitschaft sich dieses anzueignen.

Man kann das Konzept der layer3 Variante auch mit OpenWRT oder auf x64 / arm nachbauen, egal ob auf einem Raspi4 oder in einer VM.

Alle Infos sowie Links zur layer3 Variante findest du hier: [Link]

Betreiber-Zitate

Auf unserer Mailingliste gab es im Juni 2020 einige unterschiedliche Erklärungsversuche, welche die beiden Varianten unterscheiden sollten.

Hier deshalb die Zitate

#1 "um es einfach auszudrücken, Node ist unsere "alte" Standard-Firmware. Du trägst deine Kontaktdaten und Koordinaten ein und das Gerät ist betriebsbereit.

Hierbei bist du Teil der großen v2-Hoods, dieser blauen Bereiche: https://monitoring.freifunk-franken.de/map?mapcenter=49.82400,10.78600,9&source=1&layers=0,1,0,0,1,0,0

Jede dieser Hoods wird von 1-2 Gateways bedient. Eine Hood ist eine Broadcastdomäne. Alle Nodes sind über Layer2 Tunnel angebunden, wie an einem großen virtuellen Switch.

Diese Tunnel benötigen mehr CPU Leistung, es gibt mehr Broadcast-Overhead.

-> Einfach einzurichten, aber eher langsam mit begrenzten Möglichkeiten zur Individualität.

Die Layer3 Variante verschiebt dieses Konstrukt vor Ort. Du baust dir ein Gateway vor Ort auf, zB eben mit der layer3 Firmware auf einem geeigneten Router, oder auf einer VM, Raspi, sonstiger Hardware die Linux / OpenWRT kann. Man richtet sich eigene IP Bereiche ein, muss sich um Tunnel- bzw. Richtfunknachbarn kümmern, hat dafür die Hoheit über diese lokale Hood.

Wir verwenden hier eben Layer3 Tunnel, die auf gleicher Hardware deutlich performanter sind als die Node Variante.

Meist wird hinter diesen layer3-GWs AccessPoints mit Hersteller-Firmware verwendet. Damit kann man dann auch 5GHz im Outdoorbereich bedenkenlos anbieten.

Auch kann/muss eine individuelle SSID definiert werden.

-> Komplexer, dafür schneller und flexibler

Ein kurzes Beispiel bei bestehender Infrastruktur: Man nimmt einen Layer3 Router / installiert sich ein Äquivalent auf einer VM, packt das Client Netz in ein VLAN und wirft dieses als extra SSID auf die vorhandenen AccessPoints. Geht mit der Node zwar auch, skaliert aber bei eurer zu versorgenden Fläche nicht so richtig."


#2 "Die node Firmware setzt im großen und ganzen das Konzept um, was unter "Wie funktioniert das Netz aktuell" beschreiben ist. Die layer3 Firmware setzt das Konzept um, was unter "Die dezentrale Hood" beschreiben ist, um.

Was gut ist und was nicht liegt jetzt im Auge des Betrachters: Will man ein dezentrales, ausfallsicheres, vernetztes Freifunk, welches auch unabhängig von großen ISP arbeiten kann, und gleichzeitig Know-How über Netzwerke verbreitet, weil man sich damit befassen muss => layer3 Will man, dass möglichst viele Leute mit möglichst wenig Aufwand Hotspots und Zugang zum Freifunk aufstellen können und die relativ fragile Administration an wenigen Leuten hängt => node"


#3 "ich [...] versuche ganz unbeeinflusst als nicht ITler das ganze zu beschreiben.

Es gibt kein Gut oder Böse, kein Falsch oder Richtig.

(An alle ITler: Man möge mir grobe Ungenauigkeiten verzeihen. Ich versuche das ganz einfach zu schreiben. Evtl gelingt es mir, evtl auch nicht.)

Bis vor kurzem gab es eine einzige Firmware. Das ist die aktuelle node firmware.

Da stehen einige viele Server im Internet, die für das Freifunknetz IPs vergeben. Zusätzlich haben diese den Datenverkehr ins Internet geleitet. Also alles das was die Fritz.Box zu Hause so tut. Zusätzlich wollen wir ja alle miteinander im Freifunk Netz kommunizieren können, auch über die einzelnen Server und unterschiedlichen IP Adressbereichen hinaus. Deshalb wurden diese Server, mittels Layer3 vpn Tunnel und einem Routing Protokoll verbunden. Diese kommunizieren dann untereinander was der beste Weg ins andere IP Netz oder ins Internet ist. Dein Router schickt also seine Koordinaten an EINEN EINZIGEN Server, der dir dann die Zugangsdaten zu deinen zuständigen Server(n) schickt, dein Router meldet sich darauf an und funktioniert ab diesem Zeitpunkt als Switch für deine Clients.


Zwischenzeitlich!!! Vielen war es ein Dorn im Auge, dass es da diesen EINEN EINZIGEN ZENTRALEN Server gab, der von einer Hand voll Admins administriert wurde und diese theoretisch die absolute Hoheit über das Freifunk Netz haben. Außerdem sind große IP-Netze über vpn tunnel meeeeega uneffizient und außerdem ... wenn das doch meine Fritz.Box kann, warum brauch ich dann nen Server bei Strato oder Hetzner oder wo auch immer?

Das war der Anfang der Layer3 Firmware entwicklung.

Diese Firmware macht eigentlich das gleiche wie oben die beschriebenen Server, nur das der ZENTRALE EINZIGE Server nicht benötigt wird. Alle Clients werden quasi per Kabel oder Richtfunk an diesen Router angebunden und bekommen von dem Layer3 Router eine IP, ohne den Umweg durch das Internet oder irgendwelchen Hetzner Servern machen zu müssen -> genau wie bei deiner FritzBox eben. Weiter läuft auch das Routing Protokoll auf diesen Routern. Die Layer3 Tunnel (wesentlich effizienter) werden dann, wie gehabt über das Internet in das Freifunk Netz aufgebaut oder über Richtfunkstrecken oder du legst ein (Glasfaser-)Kabel zu deinem befreundeten Nachbarn oder oder oder.


Lange Rede kurzer Sinn:

Bei der Node Firmware hat man im prinzip keine administrative verpflichtung, braucht nicht viel Ahnung und ist mit einem klick im Freifunk-Netz. Andererseits muss man sich eben auf diesen EINEN EINZIGEN ZENTRALEN Server (Admins) verlassen, muss sich auf die Admins der IP vergabe Server verlassen, muss sich mit relativ ineffizienten Layer2 Netz rumtummeln UND du hast als einzelner eigentlich kaum Mitspracherecht, dafür auch nicht viel Verantwortung.

Bei der Layer3 Firmware hat man eigentlich alles selbst in der Hand. Weg mit zentralen Admins, die das ganze Netz in der Hand haben (ein klick -> alles kaputt) ;) effiziente Layer 3 Tunnel IP-Vergabe bestimme ich. Routing bestimme ich. Den weg in die anderen Netze oder ins Internet bestimme ich. usw usw. Die Layer3 Firmware ist also etwas für Leute die sich näher mit dem Netz beschäftigen wollen und dann aber auch VIEL mehr Selbstbestimmung im eigenen Teil des Freifunk Netzes."


#4 "dann versuche ich auch mal

Node: 1) Bei der Inbetriebnahme des Routers wird ein Standort angegeben. 2) Regelmäßig fragt der Router beim einen zentralen KeyXchange-Server von Freifunk Franken nach, in welcher Hood er sich befindet und welche Gateway-Server es dort gibt. 3) Der KexXchange-Server sendet ein Hoodfile mit der benötigten Information. 4) Der Router sucht sich automatisch das beste der angebotenen (meist 1 oder 2) Gateways aus. Wenn jetzt ein Client ins Internet oder Freifunknetz will, 5) fragt der Router beim Gateway nach einer IP und gibt diese an den Client weiter, 6) schickt der Router alles vom Client durch einen Tunnel zum Gateway.

Layer3: Der Router ist nun selber ein kleines Freifunk-Gateway. 1) Bei der Inbetriebnahme muss man selber Peerings angeben. Das sind Verbindungen zu anderen Gateways, die man mit den gewünschten Partnern absprechen muss. Es gibt also keinen zentralen Server, der irgendwas zuteilt. 2) Ebenso muss man im FFF-Wiki sich freie IP-Adressbänder reservieren, einen eigenen Hoodnamen ausdenken, eine SSID ausdenen usw. Dies wird alles in eine Konfigurationsdatei eingetragen. Wenn jetzt ein Client ins Internet oder Freifunknetz will, 5) gibt der Router eine IP aus dem eigenen Band an den Client weiter, 6) schickt der Router alles vom Client zu einem der Partner-Gateways weiter.

Der Konfigurationsaufwand ist also deutlich größer, denn all die benötigten Angaben werden nicht automatisch zugeteilt. Dafür wird aber auch kein spezielles Gateway benötigt - nur eben Peerings zu mindestens einem beliebigen Freifunk-Gateway, weil sonst kein Netzwerk entstehen kann.

Dass in deinem Fall noch eine Fritzbox und ein kommerzieller Internetprovider dazwischenhängt, ist bei beiden Konzepten gleich. Mit Verbindung per Kabel oder Funk zu einem anderen (leistungsfähigen) Freifunkknoten wäre das nicht nötig. Irgendein Gateway in der Kette muss allerdings einen Internet-Exit haben, sonst gäbe es nur Freifunknetz."


#5 "Der eigentliche Unterschied ist konzeptionell. Die node Firmware spannt ein grosses layer2 Netzwerk auf, das zentral von $jemand verwaltet wird. Die layer3 Firmware macht eigentlich nur ein wenig ip-routing (ok, dhcp und dns auch) und du administrierst alles selbst.

Aber eigentlich recht simpel im Vergleich zur node Firmware. Die hat richtig viel Magie unter der Haube. Das siehst du an deinem Setup. Das geht alles einfach so "out of the box".

Andererseits kann man da kaum etwas "selber machen". Das ist der grosse Vorteil der layer3. Und wenn du mal richtig viel im und mit dem Netz machen möchtest, nimmst du irgend ein Linux auf irgend einer geeigneten Hardware und bist an keine Firmwaregrenzen mehr gebunden."