Verständnisfrage zu B.A.T.M.A.N

Hallo Zusammen,

ich habe mal eine Frage ob ich etwas korrekt verstanden habe.

So wie ich das verstehe wird zwischen den Nodes einer Community ein Mesh (mittels batman-adv auf Layer2) gebaut. Wenn man nun nirgendwo einen Uplink am WAN Port hat, also keinen funktionierenden fastd Tunnel zu den Supernodes, dann ist es doch ein „normaler“ Switch an den einfach Computer angeschlossen werden können, oder?

Wenn ich nun einen Router, sagen wir eine Fritzbox, an einen LAN Port anschließe, dann müssten doch die Clients DHCP und Co von der Fritzbox bekommen und auch darüber ins Internet gehen, oder?

Die Frage wäre nun also, wie man theoretisch aus dem Freifunk Mesh ein eigenes Mesh bauen kann. Ich habe das mittels OpenWRT und dem nachinstallieren von batman-adv mal versucht, aber das gab es viele kleine Hürden, daher wollte ich mal kurz das Verständnis von mir „klären“ und den Weg von Gluon zum Privaten Mesh gehen um dann vielleicht später zu sehen was ich beim OpenWRT falsch gemacht habe.

Wenn ich nun einen Freifunk Router habe, müsste ich den doch durch abschalten des fastd und eventuell ein paar kleiner anderer Änderungen (Umbenennen der SSID, Verschlüsselung des WLAN einschalten und Mesh anpassen) in ein eignens Mesh umwandeln können, oder?

Prinzipiell schon,
Wenn die Boxen nicht genau aus diesem Horrorszenario heraus (Verkabelungsfehler->Leute surfen über Fritzbox von Mitfreifunkenden über deren private Provider-IP->Abmahnung von xy) der DHCP-Traffic auf den Knoten entsprechend blockieren würden.

In vielen Communities wird zudem noch per ffpb-ebtables alles abgefiltert was nicht dem lokalen ipv4/ipv6-Subnetz entspricht. (und kein broadcast ist).
Also „Abfiltern von Martians“.

Aber prinzipiell ja: Du kannst Dein Gluon so ändern, dass er das nicht mehr filtert.
Oder so eine eigenes kleines Meshnetz bauen.

DHCP wird auf den LAN Ports eines Knotens bei den meisten Communitys gefiltert, damit es eben nicht passiert das andere aus deinem LAN eine IP Adresse bekommen, falls jemand mal wieder die gelben Buchsen des Internet Routers mit dem Gelben des Freifunk Routers verbindet.

Aber ein Batman Setup ist eigentlich ziemlich einfach. Steht alles in der Doku.

korrekt, ein Batman-Mäsch ist eine Broadcast-Domäne.

jein, obwohl Batman auf Layer2 liegt, greift es beim Thema DHCP ins Layer3 ein.

Bitte lese dich in Doc-overview - batman-adv - Open Mesh und insbesondere Gateways - batman-adv - Open Mesh für DHCP ein, dort wird alles erklärt.

ja, aber da nimmst Du direkt OpenWrt mit Batman und machst was Du willst, statt sich damit zu quälen Gluon zurück zu OpenWrt umzuwandeln.

Es wird nichts gefiltert, da greift ein Mechanismus des Batman selbst direkt ein. s.o.

Hab das „bat0“ beim OpenWRT nicht zum laufen bekommen, die Technik selbst ist (dachte ich) sonst auch nicht wirklich schwer… aber den Artikel über die Gateways muss ich wirklich übersehen haben. Dann macht dies nun auch Sinn. Danke dafür.

Ich werde dann mit dem OpenWRT noch probieren…

Also ich glaub ich habe es hinbekommen… habe in der letzen Stunde nur vergessen das Internet ans LAN zu hängen, denn dort ist ja der Endpunkt vom Mesh(batman-adv). Nun geht es also… kann man also erstmal nutzen… :slight_smile:

Nun muss ich nur das AdHoc-Mesh noch Verschlüsseln, geht das überhaupt?

ja: Wireless configuration [Old OpenWrt Wiki]

1 Like

Es ging sich eher um die Pakete die Installiert sind, bzw. welche eventuell getauscht werden müssen. So wie es aussiehst muss wpan-mini durch wpad getauscht werden, das ist aber zu groß… muss mal schauen wo ich die Größe finde, denn die Weboberfläche etc. könnte ich schon missen :smile:

Aber ich weiß noch nicht ob das bei einem w841er (4MB) geht, bzw. ob 4MB dann so oder so nicht reichen :-/

Schade… es klappt nicht… selbst wenn ich nur die Vorhandenen Pakete upgrade (also wpad-mini) sind aus 50% freier Speicher auf einmal 19% freier Speicher geworden.

opkg update
opkg upgrade wpad-mini
opkg upgrade hostapd-common

Also scheint an einem 8MB Router, dann vermutlich als kleinster und günstigster der w842n kein Weg vorbei…
Das ist schade… Ich habe übrigens mit enem OpenWRT 14.07 getestet.

Eine andere und wahrscheinlich einfachere Möglichkeit ist, auf der verbreiteten Firmware Gluon aufzubauen. Das ist eigentlich relativ einfach. Lies dir mal das hier durch: GitHub - freifunk-gluon/gluon: a modular framework for creating OpenWrt-based firmwares for wireless mesh nodes Welcome to Gluon — Gluon 2015.1.2 documentation
Auf der anderen Seite ist ein manuelles Setup über OpenWRT leichter nachzuvollziehen. Vielleicht solltest du auch mal in deinem lokalen Hackerspace vorbeigucken. Bei einer Mate oder einem Getränk deiner Wahl, der lockeren Athmosphäre und ein bisschen Gesellschaft lässt sich gleich viel besser arbeiten.

Das Problem mit dem Speicher ist dann aber nach wie vor identisch, es geht alles… Nur die Verschlüsselung läßt sich nicht realisieren… :frowning: in meiner Gegend und den möglichen Zeitfenstern ist das auch alles sehr schwirig… Sonst sehr gern…

Naja, die Weboberfläche kannst du dabei weglassen… Das dürfte genug Platz schaffen.

Nimm bitte für dein Projekt kein Gluon sondern OpenWrt. 4 MiB reichen locker aus für das, was Du vor hast.


EDIT

ups, m’kay. Dann schau dir die Stichworte JFFS2 vs. SquashFS an. Arbeite Dich hier ein: Image Generator (Image Builder) - EN [Old OpenWrt Wiki] und generiere dein eigenes OpenWrt, mit den Paketen … die Du brauchst. 4 MiB reichen locker aus für das, was Du vor hast. Und Du willst kein Update fahren … Du möchtest ein neues, sauberes Image, in dem sich die installierten Pakete auf dem SquashFS befinden

3 Likes

Zum Experimentieren (für schnelle Turnaround-Zeiten) lohnt sich dann ein Zoo von Virtualbox-Instanzen mit eben so virtuellen Switches und darin dann Openwrt-x86.
Da kann einem auch erstmal die Größe des Images egal sein. Optimieren kann man wenn’s läuft.
Ach ja, WiFi geht damit natürlich nicht (einfach) mit onboard-hardware. Da brauch es dann idR noch eine AP-Bridge extern.

1 Like

Erst einmal danke für die vielen Hinweise… Habe sowohl Gluon als auch OpenWRT versuch zu kompilieren… da gab es ein wenig Probleme daher hab ich erst mal versuch ob das Ziel überhaupt in Sicht ist. Das ist es auf jeden Fall. Wenn Ihr nun sagt die 4MB reichen, dann kann und werde ich auch versuchen mehr Zeit reinzustecken.

Ansonsten wäre die Frage ob ein 842 nicht ein guter Ersatz wäre. Weiß jemand ob der von den Leistungen wirklich vergleichbar ist. Also Funkreichweite, Chipsatz etc. Denn hier ist in jedem Fall 8MB Speicher vorhanden, ein USB Anschluss und somit bietet er für ein wenig mehr Geld „die selbe“ Optik und mehr Möglichkeiten zum Spielen. Denn auch ein WAN über UMTS per USB-Stick wäre cool zum testen :wink: (später).

Kann mir denn jemand sagen wie ich GENAU diese Build Umgebung bekomme um GENAU das Image zu erstellen was ich gerade verwende? So dass ich wirklich „nur“ Änderungen machen muss und nicht durch Kernel und Paketliste für den Anfang bei NULL starte? Bei Gluon wird ja in der „Site.mk“ entschieden welche Pakete mir drin sind (wenn ich das korrekt gesehen habe).

Also „back to the roots“ und erstellen einer Build Umgebung. Hab hier vorhin ein Video zum erstellen einer eigenen Firmware von Gluon gesehen, das wird sicher auch für OpenWRT Hilfreich sein, oder?

Noch mal Danke für die Hilfe… werde mal sehen wann ich schaffe diese Umgebung einzurichten…

Ich sehe, Du hast Dich gar nicht mit dem Image Generator beschäftigt, dessen Anleitung ich Dir oben verlinkt habe. Damit sparst Du wertvolle Zeit, wenn Du nicht unbedingt Kanal 12 und 13 nutzen musst. OpenWrt ist da fertig Kompilliert – mit allen Paketen, die es gibt … einfach Pakete zusammenstellen und Firmwareimage generieren.

Und wie man GENAU genau macht, ist auch oben von PetaByteBoy verlinkt.

Ich habe hiermit alles beantwortet, den Rest kannst Du Dir aus den verlinkten Quellen ableiten. Viel Spaß und Erfolg.

Sorry, gelesen hatte ich das schon, aber ein wenig anders verstanden…
Dennoch danke für deine Rückmeldung.

So, ich hab nun nach langem hin und her alles geschafft. Ich habe „nur“ drei Geräte in einem Raum miteinander verbunden. Kein fastd oder ähnliches Richtung „Supernode“. Die Supernode in meinem Netz ist die Fritzbox. Also DHCP und IPv6 Lieferant und Gateway über meine Leitung.

Was ich extrem komisch finde… wenn ich einen Speedtest mache, dann komme ich auf nicht mal die hälfte der Bandbreite im Downstream. Upstream ist quasi voll da. Und diese Tests nur mit einem Gerät. Wenn ich die anderen beiden einschalte wird das noch mal weniger bis von den 50mbit nur noch ca. 10 über sind.

Ist das normal, also BATMAN läuft ja nur „lokal“…

Das ist nicht normal. Was für Geräte hast du genommen und wie sind die verbunden, Kabel oder Funk?

Grüße
Matthias

Das sind die 841er per WLAN (also AdHoc) verbunden… ein OpenWRT 14.07 mit dem BATMAN von OpenWRT.