Hi zusammen,
Ich wollte meine Ideen und Pläne gerne mal vorstellen und
gemeinsam mit euren eine Roadmap erarbeiten. :)
Meine Pläne für das Netz und die Firmware:
1. Hoodselector fertigstellen: Aktuell fehlen noch ein paar
Zustände die in den kommenden Wochen angeschlossen sein sollten.
Das betrifft hauptsächlich den BATAMAN_GATEWAY mode. Z.B. das
verhalten beim zurück wechseln in die Eigene hood wenn sich ein
mesh Router an eine benachbarte hood gehängt hat. Siehe dazu:
https://github.com/freifunk-gluon/gluon/pull/997
2. Support für L2TP VPN.
Aus dem gluon upstream soll l2tp in unsere Firmware backported werden.
Das ist dank der neuen Patch Möglichkeit in unserer Firmware nun relativ
einfach realisierbar.
3. Router als Batman-adv Gateways
Die Idee hatte ich schon länger im Kopf bin aber bisher noch nicht wirklich
dazu gekommen in der Richtung was zu machen. Im Grunde ist die Idee das,
leistungsfähigere Router bsp. Archer C7 einen eigenen VPN zu exit Servern
aufbauen wie z.B. IPredator, HidemyAss, Tor, usw. Paralell zu den VPN soll
ein weiterer VPN fastd oder l2tp die virtuelle mesh Verbindung für das interne
Netz weiter zur Verfügung stellen.
Vorteile bei dieser Struktur:
* Es gibt deutlich mehr Exit Nodes.
* Es kommt dem Dezentralen Konzept ein Stück näher.
* Unser Server backbone wird entlastet (bessere lasten Verteilung).
* Evtl. Technische Lösung der VDS
Nachteile:
* IPv4 würde in dem Konstrukt wahrscheinlich Probleme machen.
Lösung könnte hier ddhcpd sein ein zurzeit experimenteller distributed dhcp
Server.
4. Prof of concept erstellen für generische Layer3 Routern zwischen hoods.
Hierzu habe ich mir noch keine näheren Gedanken gemacht. Aber der Titel
sollte schon aussagen worum es geht.
Das sind bisher nur Ideen und Vorstellungen woraus letztlich eine Roadmap
entstehen kann.
Ich würde mich über feadback und/oder andere Ideen Freuen :)
Schöne Grüße
Tarek
Moin Moin leute,
Ich habe heute eine neue Firmware gebaut. Basisdaten:
* Firmware-Version: 20170822
* Gluon-Version: v2016.2.x
* Commit ID: d722c2638a9f7a662ea46b74e997a3e460e70971
* Download: https://firmware.ffnw.de/20170822
Folgende Gluon spezifischen Änderungen gab es unter anderen:
* Backport sysupgrade error handling fixes
* prereq: backport changes to git detection to work with newer Git versions
* automake: import upstream fix for perl 5.26
Die upstream Änderungen findet ihr hier:
https://github.com/freifunk-gluon/gluon/compare/0d2b078...d722c2
Folgende Comunnity spezifischen Änderungen gab es:
package repo:
* Neues Paket "disable-11s" welches das versehentliche einschalten von IEEE802.11s
wieder rückgängig macht.
* Hoodselector bug: nicht abgefangener Null Index zugriff behoben danke an Lorenz
https://lists.ffnw.de//pipermail/dev/2017-August/002213.html
Die Änderungen an unseren eigenen Paketen können im Packages-Repository hier eingesehen werden:
https://git.nordwest.freifunk.net/ffnw-firmware/packages/compare/20170629..…
siteconf repo:
* Autoupdater url für wechsel auf Gluon v2017.1.x angepasst.
Änderungen an der Siteconf können im Siteconf-Repo hier eingesehen werden:
https://git.nordwest.freifunk.net/ffnw-firmware/siteconf/compare/20170629..…
Ich bitte euch die Änderungen zu prüfen und die Firmware im Anschluss zu
signieren. Die Dokumentation zum Signaturprozess findet ihr im Wiki unter:
https://mediawiki.ffnw.de/Firmware/Releaseprozess#Firmware_signieren
Schöne Grüße
Tarek
Hallo zusammen,
auf dem letzten Treffen kam nochmals die Frage nach einer Offline-SSID
auf. Tarek möchte so eine grundlegende Entscheidung auf der ML diskutieren.
Ich denke wir sollten eine Offline-SSID einführen. Diese muss nicht
direkt vom Online-Status des Routers herrühren, sondern könnte auch
durch ein fehlendes (Batman-)Gateway ausgelöst werden.
Grund: Ohne Gateway Anbindung hat man nicht den erwarteten Zustand.
Befindet man sich beispielsweise in Oldenburg und verbindet sich mit
unserem Netz, erwartet man eine IPv4 und eine Publicv6 aus dem
Oldenburger Bereich zugewiesen zu bekommen und mit jedem anderen im
Freifunk Nordwest Netz und auch mit dem gesamten Internet Daten tauschen
zu können.
Für Nutzer, die auch die ganz grundlegenden lokalen Features nutzen,
sollte es kein Problem sein sowohl Offline- als auch Online-SSID zu
speichern / sich damit zu verbinden.
Wenn wir das nicht tun provozieren wir an reinen Mesh-Routern ohne
Anbindung ein Offline-legen der User. Die Geräte verbinden sich mit
Freifunk, schalten mobile Daten ab und sind offline.
Außerdem kann es auch beim Ausbau unterstützen: Mein Blick in der
Oldenburger Innenstadt geht gerade dahin, wo ich einen Uplink her
bekomme, obwohl ein weiterer Routerstandort auch ohne cool ist. Ich
werde aber keine Router aufbauen, die von vornherein offline sind und
Nutzer beeinträchtigen. Mit Offline-SSID kein Problem und die Geräte
würden sich auf die normale SSID konfigurieren, sobald ein Uplink-Router
in der Nähe ist.
--
Viele Grüße,
Simon
Hi zusammen,
Die Portierungen zu gluon v2017.1.x sind nun weitestgehend abgeschlossen.
Es müssen nur noch ein paar Schönheits Änderungen erledigt werden, dann
ist soweit alles abgeschlossen.
vg
Tarek
Hallo Leute,
ich habe dem Hoodselector beigebracht, (auch nichtkonvexe) Polygone als Hoods zu erkennen. Hierzu habe ich die Strahl-Methode nach dem Punkt-in-Polygon-Test nach Jordan [1] in lua implementiert und als Funktion in den hoodselector eingebaut. Hierzu habe ich einen lokalen branch polygone-hoods vom packages-repo erstellt und würde den ganz gerne mit
git push --set-upstream origin polygone-hoods
pushen. Aber:
GitLab: You are not allowed to push code to this project.
;(
kann mich jemand als Developer hinzufügen?
Auch die hoods.json habe ich entsprechend angepasst. Jede n-eckige Hood besteht jetzt aus einer Box, mit n+1 Punkten, wobei Punkt[1]=Punkt[n+1]. Unter [2] kann man sich das Ergebnis anschauen. Natürlich sind damit jetzt auch schräge Hoodgrenzen möglich, zB entlang Teutoburger Wald oder Autobahnen etc. Es muss nur jemand (tm) machen.
Habe die neue Kombination aus hoodselector + hoods.json mal durch mein test-script [3] laufen lassen. er hat alle hoods erkannt und kam auch überall online :)
Übrigens: Verschachtelte Hoods (also zB. Bad-Iburg innerhalb landkreis-osnabrück) stellten übrigens schon früher kein Problem dar, sofern sie in der hoods.json richtig sortiert waren. Wenn die "Unterhood" vor der "Oberhood" steht, kam der hoodselector immer schon damit klar.
[1] https://de.wikipedia.org/wiki/Punkt-in-Polygon-Test_nach_Jordan
[2] http://bl.ocks.org/d/ea7ee9d9ff49ff90047ebda82e306c77
[3] https://git.nordwest.freifunk.net/lrnzo/check-hoods
LG lrnzo
Moin,
ich bin seit geraumer Zeit aus der Firmwarentwicklung raus und nun
wollte ich für einen MR3020(v1) mal ein LEDE-Image bauen. Normale Images
für den Router gibt es ja, doch recht schnell auch Platzprobleme, sodass
ich diverse Pakete direkt in das Image backen wollte.
Merkwürdigerweise purzelt aber für den MR3020 am Ende kein Image raus,
aber für viele andere AR71xx-Geräte. Gibt's für den MR3020 irgendwas zu
beachten?
Grüße
bjo
Hi,
> ich habe ma einen neuen branch gemacht für das nächste update:
>
> https://git.ffnw.de/ffnw-firmware/siteconf/commit/88dd11323ba571dd30688724a… <https://git.ffnw.de/ffnw-firmware/siteconf/commit/88dd11323ba571dd30688724a…>
>
> dort habe ich den Ordner für den stable link mal angepasst.
>
> Alle Router schauen jetzt in das Verzeichnis
>
> autoupdate.ffnw/stable
>
> das könnten wir so lassen
Ich lösche das noch mal. Wir sollten das erstmal besprechen
befor wir da potentiell unnötie branchs und co aufmachen.
> nach dem nächsten update mit gluon 2016.2.6 ändern wir den zukünftigen stable und testing Ordner auf:
>
> autoupdate.ffnw/stablelede2017
> autoupdate.ffnw/testinglede2017
>
> der Branch wäre dann immer noch „stable“ bzw „testing“
>
> das erste update mit Gluon 2017.x.x kommt dann in den Ordner „stablelede2017“
>
> alle alten router die dann noch mal online kommen würden dann mit dem autoupdater erst unsere letzte Gluon 2016.2.6 Firmware laden und installieren und danach auf lede wechseln.
>
> Irgendwann können wir dann wieder aus stablelede2017 wieder stable machen
>
> Was haltet ihr von dem Vorschlag?
Wir könnten es wahrscheinlich einfacher machen.
Wir lassen
autoupdate.ffnw/stable auf den 201707** (v2016.2.x) Ordner zeigen.
ab der Version 201707** (v2016.2.x) zeigt die autoupdater url z.b. auf
autoupdate<anhängsel>.ffnw/stable
vg
Tarek
Hallo Leute,
sobald der hoodselector einmal nicht terminiert hat, kann er nicht wieder ausgeführt werden, weil er seine eigene pid-file (/var/run/hoodselector.pid) nicht gelöscht hat. Folgender Einzeiler löscht diese Datei, falls sie älter als 300 sekunden = (5 minuten) ist.
if [ $(($(date +%s) - $(date +%s -r "/var/run/hoodselector.pid"))) -gt 300 ];then rm /var/run/hoodselector.pid;fi
könnte das vielleicht als watchdog/cronjob in die nächste firmware mit rein? wäre schon sehr praktisch.
PS. ich teste das jetzt mal auf paar routern
LG lrnzo
Hallo Leute,
heute morgen wollte ein Kabelmeshrouter nach automatischem Reboot nicht wieder online kommen, aber ich konnte noch per link-local rauf und habe mal ein wenig herumprobiert. Noch ist er nicht wieder online, aber ich dachte mir, die Ausgaben könnten fürs Firmware-debugging interessant sein. Deshalb hier:
---------------------------8<---------------------------
root@FF-Bad-Iburg-Pfarrheim-Glane-01:~# hoodselector
No VPN connection found
Testing neighboring adhoc networks for batman advanced gw connection.
The following wireless networks have been found:
73 2437 02:00:0a:12:58:00 mesh.ffnw
After filtering we will test the following wireless networks:
No neighboring freifunk batman advanced mesh found.
Command failed: Request timed out
Failed to parse json data: unexpected end of data
currend configuration are not defined as hood
VPN stopped.
Command failed: Request timed out
Command failed: Request timed out
Command failed: Request timed out
Wireless restarted.
IBSS needed reconfiguration. Applied new settings and restarted.
Command failed: Request timed out
Command failed: Request timed out
Command failed: Request timed out
Wireless restarted.
MESH needed reconfiguration. Applied new settings and restarted.
Fastd needed reconfiguration. Stopped and applied new settings.
VPN enable.
VPN started.
Interface br-client restarted.
VPN needed reconfiguration. Applied new settings and restarted.
Set hood "default"
Set defaulthood.
Command failed: Request timed out
Failed to parse json data: unexpected end of data
Command failed: Request timed out
/usr/bin/lua: /usr/sbin/hoodselector:132: attempt to index local 'e' (a nil value)
stack traceback:
/usr/sbin/hoodselector:132: in function 'r'
/usr/sbin/hoodselector:205: in function 'h'
/usr/sbin/hoodselector:938: in main chunk
[C]: ?
--------------------------->8---------------------------
im logread steht nur alle paar Minuten:
---------------------------8<---------------------------
Thu Aug 3 16:42:24 2017 kern.emerg kernel: [23206.120000] unregister_netdevice: waiting for bat0 to become free. Usage count = 4
Thu Aug 3 16:42:24 2017 kern.emerg kernel: [23206.380000] unregister_netdevice: waiting for primary0 to become free. Usage count = 1
Thu Aug 3 16:42:24 2017 kern.emerg kernel: [23206.640000] unregister_netdevice: waiting for local-node to become free. Usage count = 1
--------------------------->8---------------------------
die systemzeit ist offensichtlich falsch, aber das liegt sicherlich an der Nichterreichbarkeit jeglicher ntp-server. Ich werde ihn bis 18 Uhr erstmal nicht rebooten, sondern warten, ob jemand eine Idee hat, welche Ausgaben außerdem aufschlussreich sein könnten. Die /tmp/hoodselector_error war übrigens leer
LG Lorenz
Hi,
Ich habe heute eine neue Firmware gebaut. Basisdaten:
* Firmware-Version: 20170629
* Gluon-Version: 2016.2.6
* Download: https://firmware.ffnw.de/20170629
Folgende Änderungen gab es:
* siteconf Repo:
* für x86 add kmod-usb-net-mcs7830
* drop libwlocate
* drop lwtrace
* packages Repo:
* Hoods:
* Osnabrueck -> Osnabrueck1 und Osnabrueck2
* Oldenburg -> Oldenburg1 und Oldenburg2
* Leer Emden Aurich -> Leer und Aurich
* Butjadingen -> Butjadingen und Tossens
* Hoodselector:
* fix filter own Network
* fix filter default Hood
Die Änderungen an der Siteconf können im Siteconf-Repo mittels folgendem Befehl eingesehen werden:
https://git.ffnw.de/ffnw-firmware/siteconf/compare/20170530...201706
Die Änderungen an unseren eigenen Paketen können im Packages-Repository mittels folgendem Befehl eingesehen werden:
https://git.ffnw.de/ffnw-firmware/packages/compare/201705...201706
Ich bitte euch die Änderungen zu prüfen und die Firmware im Anschluss zu signieren. Die Dokumentation zum Signaturprozess findet ihr im Wiki unter:
https://wiki.nordwest.freifunk.net/Entwicklung/Firmware_releaseprozess#Firm…
Viele Grüße
Johannes