Firmware: Unterschied zwischen den Versionen
Yanosz (Diskussion | Beiträge) |
Yanosz (Diskussion | Beiträge) |
||
Zeile 23: | Zeile 23: | ||
** https://github.com/ff-kbu/site-ffkbuu/tree/v2016.2 | ** https://github.com/ff-kbu/site-ffkbuu/tree/v2016.2 | ||
** https://github.com/ff-kbu/site-ffkbuu/tree/v2016.2-noautoupdate | ** https://github.com/ff-kbu/site-ffkbuu/tree/v2016.2-noautoupdate | ||
* Hood Euskirchen (Gluon 2018.2) | * Hood Euskirchen (u.a. Gluon 2018.2 - Branch auswählen) | ||
** https://github.com/freifunkeu/site/tree/2018.x-fastd | ** https://github.com/freifunkeu/site/tree/2018.x-fastd | ||
Version vom 28. August 2019, 09:42 Uhr
Diese Wiki-Seite erläutert, wie Du Deine eigene Firmware bauen kannst. So kannst Du selber mit Setups experimentieren oder Firmware für neue Geräte bauen.
Fertige Downloads findest auf den Seiten Firmware herunterladen und Alternative Firmware.
Gluon/Linux
Fast alle Nodes im KBU-Netz verwenden Gluon/Linux, das auf OpenWRT basiert. Das Bauen von Gluon wird in der Dokumentation https://gluon.readthedocs.io unter Getting Started beschrieben. Für Gluon wird eine site-Konfiguration benötigt, die verschiedene Parameter (IP-Adressen, VPN-Server, usw.) codiert. Die gültigen Parameter hängen stark von der Gluon-Version ab - Site-Konfigurationen können mit älteren oder neuen Version nicht einfach wiederverwendet werden. Es gibt:
- Hood BonnV2 (Gluon 2018.2)
- Alte Hood Bonn (Gluon 2016.2)
- Hood Köln (Gluon 2016.2)
- Hood Umland (Gluon 2016.2)
- Hood Euskirchen (u.a. Gluon 2018.2 - Branch auswählen)
- Continuous Integration (CI) - regelmäßige Testbuilds für alle Hoods (Gluon 2018.2.x, multisite)
- IBSS-Treiber: https://git.kbu.freifunk.net/ff-kbu/gluon-build
- 802.11s-Treiber: https://git.kbu.freifunk.net/ff-kbu/gluon-build/tree/master-11s
Notizblock für altes Zeug =
Kompatible Hardware
Grundsätzlich können alle OpenWRT-fähigen Geräte im Freifunk-KBU-Netz genutzt werden. Hierbei gibt es leider eine wesentlich Einschränkung:
- Jedes Gerät muss zwei WLAN-Netze (ad-hoc + Infrastruktur) betreiben.
- Ad-hoc, um zu meshen
- Infrastruktur, um die Clients zu bedienen.
Viele ältere Geräte können dies nicht (z.B. WRT54G). Dies kann grundsätzlich durch die Nutzung mehrere Geräte umgangen werden. Bitte wende Dich an uns, wenn Du hieran Interesse hast - es wird jedoch kompliziert.
Diese Artikel beschreibt die im Freifunk-KBU-Netz von uns verwendete Firmware.
Hierbei verwenden wir OpenWRT "Attitude Adjustment" (12.09) & OpenWRT "Barrier Breaker" (14.07).
Die Firmware basiert auf der Lübecker Freifunk Firmware (LFF).
Für folgende TP-Link Geräte gibt es vorkonfigurierte Downloads (Siehe Mitmachen):
- WDR4300
- WDR3500
- WR1043ND
- WR841N(D)
- WR842N
- WR740N-v4
- WR741ND
Für andere, ebenfalls "Atheros"-basierte Geräte bieten wir ebenfalls Downloads an, die wir - mangels Hardware - jedoch nicht testen können.
Falls keine Downloads für Dein Gerät existieren ist Handarbeit und Expertenwissen notwendig. Falls Du Lust und Zeit hast, vorkonfigurierte Firmware-Dateien für Dein Gerät zu bauen und zu testen, stellen wir die Images gerne ebenfalls online. Frage uns einfach über die Mailingliste
Freifunk-Firmware auswählen
Zuerst brauchst Du unsere Freifunk-Firmware (Betriebssystem), die du auf deinem Router installierst. Das klingt kompliziert, ist es aber nicht. Denn die Hersteller-Firmware bietet eine Einstellungsmöglichkeit via Web-Browser, mit der die Firmware geändert werden kann.
Für die drei geographischen Bereiche (genannt "Hoods") Köln, Bonn und Umland gibt es die aktuelle Version 1.4 unserer Gluon-Firmware.
Die Classic-Version funktioniert zwar noch eingeschränkt, wird aber weder von der Übersichts-Karte unterstützt noch aktiv weiterentwickelt.
Wir raten daher stark davon ab, die Classic-Firmware weiterhin einzusetzen oder auf neue Geräte aufzuspielen.
Gluon-Firmware
Hinweis: Diese Seite wurde in das Archiv verschoben. Die Informationen sind größtenteils veraltet und nur für Spezialfälle relevant.
Die KBU Gluon Firmware unterstuetzt auch neuere Hardware. Freifunk-Router mit Gluon-Firmware werden auf unserer Karte angezeigt, sofern Geo-Koordinaten bei der Konfiguration des Freifunk-Routers angegeben wurden. Für die Router mit Classic-Firmware gilt das leider nicht mehr, da hier Protokolle inkompatibel sind. Auch deshalb solltest Du auf die neue Firmware umsteigen, falls Du noch Classic-Versionen im Einsatz hast.
Für die Hardware-Version 10 (v10) des beliebten und konstengünstigen TP-Link WR841N existiert aktuell keine Version 1.4, sondern nur eine bleeding edge-Version aus dem Hauptentwicklungszweig. Diese scheint recht stabil zu sein. Für v11 wurde eine vorläufige Version zusammen-gepatcht.
Die KBU Gluon Firmware wird aktiv weiterentwickelt und es ist insbesondere bei brandneuen Beta-Versionen mit Bugs zu rechnen. Die Aktualität erkennst Du am Datum im Dateinamen der Firmware.
Classic-Firmware
Hinweis: Diese Seite wurde in das Archiv verschoben. Die Informationen sind größtenteils veraltet und nur für Spezialfälle relevant.
Die Classic-Version funktioniert zwar noch eingeschränkt, wird aber weder von der Übersichts-Karte unterstützt noch aktiv weiterentwickelt.
Wir raten daher stark davon ab, die Classic-Firmware weiterhin einzusetzen oder auf neue Geräte aufzuspielen.
Die KBU Classic Firmware ist die ältere von beiden, bleibt weiterhin funktional und in einem stabilen Zustand. Allerdings besteht bei der Classic-Firmware keine Möglichkeit mehr, die Router auf unserer Karte anzeigen zu lassen.
Hinweis: Diese Seite wurde in das Archiv verschoben. Die Informationen sind größtenteils veraltet und nur für Spezialfälle relevant.
Wer von der Classic auf Gluon Firmware umsteigen will, muss bei Ziel-Gluon-Versionen vor 1.4 unbedingt beachten, bei der Installation die bestehende Konfiguration nicht zu übernehmen, da das zu Schwierigkeiten führen wird: beim Update ist dann das entsprechende Häkchen nicht zu aktivieren.
Ausschließlich die Gluon-Version 1.4 behält die SSH-Keys und die Option "Konfiguration beibehalten" kann gefahrlos genutzt werden!
Zukünftige Gluon-Versionen werden aufgrund des Konfigurationsaufwands wiederum nicht direkt die Konfiguration von alten Classic-Installationen übernehmen können. Dann muss zuerst auf 1.4 geupdated werden und von dort auf das aktuellste Gluon-Release.
Du hast die Qual der Wahl und wie immer bei Freifunk heißt es: selber ausprobieren!
Upgrade Classic auf Gluon
Hinweis: Diese Seite wurde in das Archiv verschoben. Die Informationen sind größtenteils veraltet und nur für Spezialfälle relevant.
Wer von der Classic auf Gluon Firmware umsteigen will, muss bei Ziel-Gluon-Versionen vor 1.4 unbedingt beachten, bei der Installation die bestehende Konfiguration nicht zu übernehmen, da das zu Schwierigkeiten führen wird: beim Update ist dann das entsprechende Häkchen nicht zu aktivieren.
Ausschließlich die Gluon-Version 1.4 behält die SSH-Keys und die Option "Konfiguration beibehalten" kann gefahrlos genutzt werden!
Zukünftige Gluon-Versionen werden aufgrund des Konfigurationsaufwands wiederum nicht direkt die Konfiguration von alten Classic-Installationen übernehmen können. Dann muss zuerst auf 1.4 geupdated werden und von dort auf das aktuellste Gluon-Release.
Releases
Aktuelle Version
Bitte zur Zeit folgende Hinweise zum Ath9k-Problem beachten
Namensraumen für zukünftige Releases: Freie Filme (http://wiki.creativecommons.org/Films) Das Release 1.2 hat noch keinen Namen (Vorschläge sind willkommen).
Konfiguration
Alle Nodes, die am Freifunk-Netz betrieben werden, müssen wie folgt konfiguriert sein:
- Wlan
- Infrastruktur-Netz: SSID: kbu.freifunk.net
- Ad-Hoc-Netz: ESSID / BSSID: 02:d1:11:37:fc:39 - Kanal: 1
- Netzwerk- / IP-Adressen
- batman-adv, Infrastruktur-Netz müssen in einer Bridge zusammen gefasst werden
- Kein DHCP
- Keine IPv4-Adressen konfigurieren - auch keinen DHCP-Client.
- VPN / fastd:
- Peers
- Konfiguration: - Hinweis: Das wget-Applet in Busybox < 1.19 unterstützt keine Post-Request. Es muss das wget(-no-ssl) Paket verwendet werden.
- batman-adv
- Zugewiesene Interfaces: ad-hoc, VPN
Die einzelnen Konfigurationsdatein können im github heruntergeladen werden. Bitte beachte, dass einige Dateien erst durch Scripts beim ersten Boot generiert werden.
Hinweis: fastd ist in OpenWRT nicht enthalten und muss zusätzlich kompiliert werden.
Optionale Erweiterungen
Statistiken
Es besteht die Möglichkeit, dass wir statistische Daten (Don't Panic) deines Nodes zentral von deinem Node geschickt bekommen und dann graphisch darstellen. Damit wir die Daten von deinem Node erhalten können, benötigst du ssh Zugriff auf deinen Node, sowie die Pakete collectd, collectd-mod-interface und collectd-mod-network.
Hinweis:
Die Pakete sind bei der aktuellen Firmwareversion (1.x) default installiert und konfiguriert . Brauchen also derzeit nicht nachinstalliert zu werden!
Andernfalls:
- Installation der Pakete: (Achtung: Die Installation funktioniert nicht mit der 1.2.1b, weil der Server jenkins-v6.kbu.freifunk.net nicht gefunden wird.
root@node # opkg update root@node # opkg install collectd collectd-mod-interface collectd-mod-network
- Kopiere folgende Datei nach /tmp/collectd.conf.sh und führe sie mit sh /tmp/collectd.conf.sh aus:
#!/bin/sh #Include lib_node.sh for accessing node_id . /lib/freifunk/lib_node.sh # This script creates collectd.conf after flashing. # collectd uses node_id.nodes.kbu.freifunk.net as hostname # nodes.kbu.freifunk.net does not exists at this time (2012-01-15). # However, if needed, it can be set up using register / mysql- or ldap-based bind9 easily - or - # mdns if avahi is configured to resove nodes.kbu.freifunk.net and not .local local hostname="$(get_node_id).nodes.kbu.freifunk.net" cat > /etc/collectd.conf <<EOF Hostname "${hostname}" BaseDir "/var/lib/collectd" PIDFile "/var/run/collectd.pid" Interval 10 ReadThreads 2 LoadPlugin network LoadPlugin interface <Plugin interface> Interface "br-wan" Interface "wlan0-1" IgnoreSelected false </Plugin> <Plugin network> Server "collectd.kbu.freifunk.net" "25827" </Plugin> EOF
Anschließend starte deinen Node neu.
Sourcecode-Quellen
Falls Du unsere OpenWRT-Quellen verwenden möchtest (inkl. fastd), dann forke bitte https://github.com/ff-kbu/fff.
Für jedes (beta)-Release gibt es einen Tag.
feeds.conf.default enthält bereits neuere batman-adv und fastd-Pakete.
Somit ist es bspw. möglich, auf dem Router ein gewöhnliches OpenWRT zu installieren und die selbstgebauten Pakete (z.B. fastd) nachträglich einzuspielen.
Bitte beachte die Hinweise zum Kompilieren von OpenWRT (howto build) - Es gibt keine Abweichungen bei dem Build unseres Forks - abgesehen vom git-Repository - es ist kein svn update erforderlich.