FF Frimware mit eigenen Packeten bauen

hallo in die runde

Vorgeschichte
ich nutze seit einiger zeit openwrt und bin von den möglichkeiten recht angetan. jetzt bin ich vor kurzem auf das konzept von freifunk gestoßen, welches ich auch sehr spannend finde. insbesondere habe ich die möglichkeit bei mehrerein bekannten die heimische netzwerkinfrastruktur zu beeinflussen. zu erzählen das VPN, NAS und mesh auf openwrt gut zusammenspielen und das man alten router sowas beibringen kann, scheint leute auch 2019 noch zu beeindrucken. ein gäste wlan schaded eigentlich auch nie.
meine community ist Berlin. hier habe ich auch schon die github seite gefunden und erfolgreich meine eigene firmware gebaut (mit standardeinstellungen).
aber jetzt konkret:

Ziel
ich betreibe aktuell schon erfolgreich openwrt router mit folgenden eigenschaften:

  • wireguard VPN
  • batman-adv mesh
  • NFS server für NAS
  • pppoe WAN anbeindung (Fritzboxen)

jetzt würde ich gern diese features und andere (z.b. simple-adblock, btrfs dateisystem) auch zusammen mit freifunk nutzen.

Problem
p. s. während des schreibens ist mir zunehmend bewusst geworden, dass meine probleme nur aus der frage bestehen „wie ist mit dem build system umzugehen“ und welche einstellungsmöglichkeiten finde ich wo. respektive wie lege ich sie fest (env variablen, config files). sollte es hierfür eine erschöpfende dokumentation geben, wäre ein kurzer verweis daruf vermutlich alles was ich brauche

jetzt würde ich aber gern die oben genannten packete zu den images hinzufügen oder auch entfernen was in einem gewissen grad unter packages möglich zu sein scheint. leider erschließt sich mir aktuell aber nicht wie hier die zusammenhänge sind. zum beispiel kann ich nicht einfach „-wpad-basic“ und „wpad-mesh-wolfssl“ einfügen oder „kmod-btrfs“. dann enstehen beim bauen fehler. hierfür müssen vermutlich nur die kernel module / packete an der richtigen stelle liegen… aber wo?

seitens openwrt ist mir bekannt das ich die entsprechende software als modul oder direkt in den kernel bauen kann. das müsste ich dann aber für jedes ziel gerät erneut tun und das ganze SDK thema scheint mir genau dieses problem umgehen zu wollen? übrigens sind aktuell alle meine geräte teil des xrx200 targets
in dem zusammenhang würde ich auch gerne images mit und ohne pppoe fähigkeit erstellen aber nicht beides zusammen weil sonst beispielsweise das tplink 8980 image zu groß wird und den gesamten bau vorgangn abbricht

weiterhin wäre es super (hierfür wird es aber vermutlich keine einfache lösung geben…) wenn ich das openwrt feature nutzen könnte files dem image hinzuzufügen in dem ich sie unter openwrt/path/in/openwrt/image/test.file platziere (natürlich pro gerät).

außerdem wäre es noch spannend openwrt direkt aus dem master zu bauen. ich vermute hierfür gibts auch eine option in den configurations files?

Schlusswort
mir war gar nicht bewusst das ich so viele teil wewechen habe. umsomehr wäre ich über input jeder art dankbar. ich mache mir auch gern selber etwas die finger schmutzig und probiere rum. leider fehlt mir hier etwas der ansatzpunkt.

ungeachtet dessen FROHE WEINACHTEN an alle communities

Das gehört wohl eher ins OpenWrt-Forum, da wenig freifunk-spezifisch.

hi wusel

du hast natürlich recht das ich konkret das sdk thema auch im opernwrt forum mal anfragen könnte. aber gibt es abgesehen davon eine art doku die erklärt wie package und profile konfiguration aus dem github repo funktionieren?

oder eventuell ist der umgekehrte weg ja viel einfacher zu gehen?
aktuell versuche ich ein freifunk image mit angepassten paketen zu bauen. sollte ich vielleicht lieber ein openwrt mit zusätzlichen freifunk paketen bauen? ich hatte natürlich schonmal geguckt und FF pakete auch in der package table gefunden. aber die lassen sich nicht ohne weiteres mit opkg installieren.
zugegeben erscheint mir das schon logisch. ich meine in dem git repo auch hinweise gesehen zu haben das die freifunk inhalte separat erstellt und in die images eingebunden werden. auch hier wäre ein kurzes „guck mal dort und dort rein“ echt super

Hi,

schau mal unter

rein. Da ist u.a. eine Datei modules drin. Die verweist wiederum auf
GitHub - FreiFunkMuenster/packages-ffms und in dem sind
Beispiele für kleine Pakete.

Hoffe das hilft. Habe ich leider seit mehr als vier Jahren aber selber
nichts mehr gemacht …

Das wird @Nocte nicht viel bringen, denn beim verlinkten Repo geht es um Gluon-Packages, was eine Metaebene höher ansetzt (Gluon kontrolliert den OpenWrt-Bauprozeß, damit da am Ende ein Gluon-Image rausfällt). Berlin setzt aber ›nur‹ auf OpenWrt plus eigene Packages, IIRC.

Am besten bei Deiner Community nachfragen; Berlin ist hier im Forum IIRC eher kaum vertreten.

ich hab mir das repo von @paulinsche mal angesehen und muss @wusel da zustimmen. nichtsdestotrotz arbeite ich mich gerade durch das berliner repo. mir fehlt leider das make know how aber ansonsten scheint mir das ganze ding schon recht clever zu sein. zum beispiel wollte ich unter ./opernwrt/files/... weitere dateien im image haben. im berli FF repoe existiert ./embedded-files/ dessen inhalt nach openwrts files/ gelinkt wird

die berliner haben auch ein wöchentliches meet up. wenn ich im neuen jahr noch nicht durch bin besuche ich die mal. danke für den tipp das berlin hier weniger aktiv ist!

an der stelle aber noch die frage… sind wirklich alle communities unabhängig von einander? wie gesagt kommt mir der berliner ansatz schon clever vor und vielleicht könnte man hier ein kleines tutorial zusammen schreiben wie man auf den meisten openwrt routern auch freifunk betreiben könnte? (das zusätzlich noch den eigenen bedürfnissen angepasst ist)

Ja. Wobei es Zusammenschlüsse/Zusammenarbeit/Kooperationen gibt. Münsterland zum Beispiel (und andere) betreiben die technische Infrastruktur nicht nur für sich, sondern auch andere Communites.

Ja, wenn man auf Insellösungen steht, mag das gefallen :wink: Das Problem illustriert LibreMesh auf deren Seiten ganz gut. Reine L3-Hotspots mit eigenem Adressraum müssen unterschiedliche SSIDs haben, aus Uablility-Gründen möchtest Du nur eine SSID im gesamten Netz. Gluon löst dies derzeit per L2, die größeren Communities (>50 Konten) die L2-Probleme durch Segmentierung der Meshes, z. B. anhand von Gemeinde-/Stadtteilggrenzen. Bei Gluon kannst Du zusätzliche OpenWrt-Packages ins Image packen, der Gluon-Ansatz ist aber den von »Standard-Images« für alle Knoten in der Community; außer Dir will niemand eine Frittzbox 7360 als NAS-/NFS-Server betreiben, außer mir niemand uvc-Treiber und anderes Gedöns für USB-Cams im WNDRMAC v2-Image haben …

… daher würde ich sagen »feel free«; für Gluon ist das IMHO dokumentiert, da erweiterst Du aber einen FF-Knoten zum XYZ-Server. Freifunk beliebiger Spielart („Berlin“, Gluon, „Bielefeld“, „Franken“, …) aber auf OpenWrt zu propfen, erscheint mir kein zielführender Ansatz zu sein.

@wusel herzlichen dank an den ganzen input von dir !
und ein hoch auf die feiertage… ich habe mir jetzt das berliner FF so hingebogen das es tut was ich will

Das Problem illustriert LibreMesh auf deren Seiten ganz gut

das liest sich doch auch ganz gut… warum machen wir das nicht alle? (das muss hier nicht ausdiskutiert werden :slight_smile: )

das „clever“ von mir sollte sich nur drauf beziehen, dass ich es charmant finde ein belibig aktuelles openwrt nehmen zu können und mit einem set an patches und standard oder eigenen konfiguration (was ich jetzt für meine unterschiedlichen paketlisten pro router angelegt habe) ein eigenes image (mittels image builder) erstellen zu können. was du sagst ist aber soweit durchaus plausibel. außerdem weis ich nicht genug darüber wie einzelne ansätze im detail funktionieren um mich da weit aus dem fenster zu lehnen.

ich habe auch kurz bei gluon rein gelesen. das scheint ja mehr oder minder genau das zu sein was ich gerade beschrieben habe. nur wäre mir hier nicht auf anhieb klar wie ich das auf die berlin community anpasse. da muss ich irgendwann mal mehr zeit investieren. was ist denn der wesentliche unterschied zwischen FF auf gluon basis und FF berlin?

außer Dir will niemand eine Frittzbox 7360 als NAS-/NFS-Server betreiben

und andere fritzboxen mit funktionierendem vdsl pppoe wan :wink: die geräte für die es fertige FF images gibt sind schon einige aber leider nicht die, die ich gerade zur hand habe.
aber du hast auch hier vollkommen recht. dennoch bin ich ein großer freund davon die möglichkeit zu haben. ich kann das auch mit openwrt allein machen. freifunk ist technisch gesehen reiner mehraufwand für mich… aber warum nicht eine sinvolle sache unterstützen

Am LibreMesh-Beispiel: FF Berlin setzt – AFAIK, bin da aber 3+ Jahre draußen – auf ein L3-Setup, Gluon auf ein L2-Setup. Die jeweiligen Nachteile adressieren die es einsetzenden Communities auf unterschiedliche Art.

Für Gluon spricht aus meiner Sicht die Einfachheit beim Einsatz: jeder kann einen Knoten irgendwo aufstellen, ›es tut einfach‹. (Beim L3-Ansatz braucht man eine koordinierte Netzvergabe, damit jeder Knoten eindeutige Adressen vergibt, die man per (hier:) OLSR routen kann.) Das erkauft man sich mit den bekannten Layer-2-Nachteilen, u. a. skaliert das nur bis zu ein paar hundert Geräten einigermaßen. Durch Filterung auf Ethernetebene geht Gluon gegen einige der Nachteile vor, weshalb es nicht ganz trivial ist, mit OpenWrt plus batman_adv in einem Gluon-Netz ›mitzuspielen‹.

An sich möchte ›man‹ aus technischer Sicht einen Ansatz wie bei LibreMesh für ›sein‹ Freifunk-Netz: L2-Mesh, wo sich Knoten ›hören‹, L3 sonst. Und dabei ›IP-Roaming‹ zwischen den Orten auch bei Wechsel von L2- zu L3-AP, sodaß man eine SSID nutzen kann. Mit LibreMesh bedingt das aber (Netz-) Planung; hier kommt hoffentlich dann demnächst Gluon-mit-Babel, was von der Zielsetzung AFAIK in die Richtung geht, halt als reiner L3-Ansatz.

https://wiki.freifunk-franken.de/w/Dezentrale_Hood

Ja will man und ja macht mächtig Spaß sowas zu haben vorallem mit RF durch die Stadt: FFF Monitoring :: Map

Gruß Christian

da bin ich auch bei euch. ich möchte zwar ein L2 mesh netz haben aber ich möchte ein kleines L2 mesh netz haben. aus technischer sicht gibt es aktuell ja notwendiger weise in jedem haushalt mit internetanschluss ein gateway und einen dhcp server.
unter der annahme das die störerhaftung kein problem mehr ist, muss der heimrouter ja nur eine 2. SSID mit einen eigenen subnetz aussenden und fertig…

@ChrisD macht das rechenzentrum aus dem FFF bild mehr als die statusdaten der router entgegen zu nehmen? der text klingt so als würde aktuell noch jeder internet traffic da hin getunnelt werden.

ich habe durchaus gesehen das die FF communities auch eigene services in ihren netzen anbieten (was auch eine gute sache ist) aber grundsätzlich möchte ich ja nur eine art gäste wlan haben das ich oder andere einfach erweitern können.

also vorerst letzte wichtige frage:
kann ich mir auch einen FFF frimware bauen und die in berlin verwenden so dass auf layer 2 sich andere FF geräte trotzdem damit anfreunden können? oder konkret: sind firmwares verschiedener communities inkompatibel zueinander?

ansonsten bin ich mit dem ursprungsthema durch. ich werde mal irgend eine nachricht als lösung markieren

Da sich (glaub ich) niemand traut bei uns den Traffic auf seiner Internetleitung (Telekom, Vodafonde&co) abzuladen, wird der Internettraffic auch zu den Gateways ins RZ getunnelt und von dort zu irgendeinen Vereinsserver o.ä. Da gibts bei uns div. Möglichkeiten und viele Leute betreiben ihre eigenen privaten Server im RZ und tunneln von dort weiter zu nen Vereinsserver oder Firmenserver wo es dann Exit Kapazitäten gibt. Das ganze ist wie „ein kleines Internet“ anzusehen da nicht jeder Server mit jeden spricht sondern man sich dediziert unterhält wie man sich denn nun verbindet und darauf dann Babel als Routingprotokoll wirft. Im Gegensatz zum Internet werden aber alle Routen die man erhält auch an alle Nachbarn weitergegeben so das man immer irgendwo eine v4 default Route bzw. bei v6 nutzen wir source specific default route findet. Man muss also nicht direkt mit einen Exit-Betreiber reden sondern nur irgendjemand aus dem Netz kennen der einen mit anbindet. So wächst das Netz stetig weiter.
Plan ist natürlich von den Tunneln wegzukommen und per RF ins RZ zu funken, wir arbeiten da aktuell daran aber da muss noch einiges klappen :wink: Direkt daheim ins Internet leiten würde technisch dank Layer 3 Routing natürlich auch einwandfrei funktionieren, man müsste es sich nur trauen :wink:

Wenn Berlin Babel als Layer 3 Routingprotokoll (machen sie nicht, sie haben OLSR) nutzen würden dann ja. Sonst passen die Routingprotokolle halt nicht zusammen

Also ja, sie sind inkompatibel. Wobei es der Franken Community relativ egal ist wo die Router aufgestellt werden.

Gruß

Christian

alles klar. also gibt es aktuell noch keine perfekte lösung für mich. ich werde damit vorerst bei der angepassten berliner lösung bleiben aber immer mal ein auge offen halten was um libre mesh rum passiert. gefällt mir ganz gut :slight_smile:

Direkt daheim ins Internet leiten würde technisch dank Layer 3 Routing natürlich auch einwandfrei funktionieren, man müsste es sich nur trauen :wink:

im endeffekt macht das doch aber auch jedes kleine kaffee das wlan anbietet :thinking:. und laut FF webseite ist doch ab 2017 die gesetzeslage derart das es keine problem mehr ist? also nicht „sich trauen“ sondern „wollen“?

in jedem fall vielen dank an den ganzen input !!!

nein trauen:

https://media.ccc.de/v/SFFFAQ

Solang dahinter kein „Provider“ steckt der sich auf § 8 TMG - Einzelnorm berufen kann, wird dir am Ende immer im Zweifel erstmal die Tür eingetreten.

Man muss sich das grob so vorstellen:

  • Straftat wird von der Polizei/Kripo ermittelt
  • Kripo schaut wem gehört die IP
  • Kripo schreibt den Provider an und will den Kunden dazu wissen

An dem Punkt muss man es nun „selbst“ (oder ein Freifunkverein oder Firma oder…) sein. Die Telekom z.b. (in dem Video war es ein Hetznerserver, lief aber auf das gleiche hinaus, Hetzner Provider → Gibt Kundendaten an Kripo weiter → Kripo tritt Tür von Kunden ein) gibt ihre Kundendaten raus (sind sie verpflichtet) und dann wird die Tür eingetreten weil es für die Kripo erstmal so aussieht als wäre der Telekomkunde der Verursacher, vllt. kommt man im Zweifel wieder raus aber ne neue Tür brauchst du trotzdem und die Nachbarn gucken dir solang in die Wohnung, ne das will zumindest ich nicht. Steht man an dem Punkt aber als eigener Provider da, kann man sagen „Hierhinter ist Freifunk, wir haben aus Datenschutzgründen keine Logs da wir nichts für Abrechnungszwecke benötigen und nach §8 TMG können wir eh nix machen blabla“ und ist dann fein raus.

Natürlich gibt es Leute die sich das trauen, ich gehöre aber da nicht dazu. Dafür betreibe ich ein eigenes AS, hab mein Kleinunternehmen als Provider bei der BNetzA gemeldet und stelle hier auch eigene Freifunk Exit Kapazitäten zur Verfügung mit meinen Namen dran. Das AS kann ich aber natürlich nicht an nem Telekom Kundenanschluss announcen (falls jemand weiß wie das vllt. günstig doch geht, PN ist offen ;)) also muss ich erst mal ins RZ tunneln solang es dorthin kein RF/Glas/whatever gibt.

Gruß

Christian

Ist zwar mittlerweile meilenweit entfernt von der Ausgangsfrage, aber nunja.

Jeder Privatmensch, jedes Café, das sein Fritzbox-Gast-Netz, auch verschlüsselt, für seine Gäste öffnet, steht vor dem gleichen, alten Problem: Strafrecht ist ein anderes Kaliber, und die Polizei hat auch Schutzaufgaben. Mir haben sie nicht die Tür eingetreten, aber Frau und Kinder sturm aus dem Bett geklingelt (ich war unterwegs), weil ein angekündigter Selbstmord in einem (Jugendlichen-) Forum von Dritten zur Anzeige gebracht wurde und die Polizei nun ermitteln wollte, von welchem Internetzugang das geschah, um ggf. eingreifen zu können.* (Daß die Ankündigung schon mehrere Tage alt war, nunja, bekanntlich kann man ja mit mehr Eifer Zeit gut machen.)

Da (in der RIPE-DB) fett an den IP-Adressen „Freifunk“ dran stand, war den lokalen Beamten schon zwar im Vorfeld klar, daß ich das nicht war, aber trotzdem stand abends um 23 Uhr vor unserem Haus 'ne Funkstreife. (Bestimmt von manchen Nachbarn nicht unerwartet ;-))
Wäre der lokale Freifunk ein Verein und wäre ich dort Funktionsträger, würde es im Zweifel genauso laufen — nur mit dem. im Unterschied zum privaten DSL-Zugang, Vorwissen „das ist nicht der Übeltäter, sondern nur ein Zeuge/Auskunftspflichiger“.

Somit: die Störerhaftung mag ›gefallen‹ sein, aber nach wie vor ist es nun einmal die IP-Adresse des Absenders einer Mail oder eines Beitrags, über welche Ermittlungen gestartet werden. Wie @ChrisD schon ausführte, wenn einer privat über seinen DSL-/Kabel-Anschluß ausleiten würde und jemand postet darüber eine Anschlagsdrohung, wird erst einmal angenommen, der Anschlußinhaber war das. Im dann zugigen Esszimmer mag er dann erläutern, daß das der Anschluß seines Cafés sei — aber wie beweißt man, etwas nicht getan zu haben? Insofern hat Freifunk – wie auch die kommerziellen Angebote anderer Anbieter – imho nach wie vor seine Daseinsberechtigung.

Auch deshalb betreiben auch wir ein eigenes Freifunk-AS (an dem u. a. mein Name klebt) und leiten über diesem AS zugeordnete IP-Adressen aus (und nicht über IPs von Hetzer & Co.). Ist zwar mehr Aufwand, aber wenn schon, dann richtig :wink:

__
* In meiner kleinen Welt ist Selbsttötung nicht strafbar, insofern hinterfrage ich grundsätzlich die Rechtmäßigkeit staatlichen Eingreifens. Aber da haben Juristen bestimmt tolle Theorien zu; anderes Thema.