[Freifunk-Bonn] PirateBox und Freifunk
Jan Lühr
ff at stephan.homeunix.net
Sa Apr 27 10:43:06 CEST 2013
Hallo,
danke für Deine ausführliche Antwort. Ich werde auch noch ein wenig Zeit brauchen um alles zu lesen.
Ganz ehrlich gesagt, sind mir die Details viel zu technisch ...
Aktuell überlege ich erstmal rein konzeptionell:
-> Wie sieht der Use-Case für den Endanwender aus?
* Wie halten wir es einfach / durchschaubar? Aktuelle Arbeitsthese: Ist ist einfacher eine PB in das FF-Netz zu integrieren als umgekehrt, da für den Nutzer einfacher durchschaubar ist, welche HW er für welchen Zweck braucht.
* Ideal wäre imho der Use-Case: Wenn Du einen TP Link Router mit USB hast, auf dem OpenWRT installiert ist, und einen USB-Stick mit dem Image einsteckst, dann hast Du eine PB im FF-Netz
* Sind alle PBs im ganzen Netz verfügbar? Erreicht man immer nur eine (Anycast) oder erreicht man nur PBs im Funkreichweite?
-> Welche Last wird hierdurch verursacht?
(bspw. die Forbad all-hosts(!) multicasts (broadcasts!) auf eine komplett vermaschte Topologie loszulassen ist imho sehr unglücklich ...
Alles Gute
Jan
Am 27.04.2013 um 10:32 schrieb Matthias Strubel:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hallo Jan,
> cool, dass du dich meldest!
> Danke!
>
> Ich habe ein wenig um die Ohren, muss so eine Uralte PHP4 Seite auf
> PHP5.4 umstellen, das macht noch mehr graue Haare als ich gebrauchen kann.
>
> Aber zurück zum Thema, leider kann ich an besagten Events nicht teilnehmen.
> Vielleicht bin ich demnächst (5.5.) in Köln für ein oder zwei Tage
> (Urlaub), aber das ist noch nicht 100% fest geplant. Da könnten wir uns
> auf einen Kaffee/Kölch treffen, wenn du magst.
>
> Die Integration einer PirateBox in das FreiFunk-Netz würde ich mit
> größer Vorsicht wagen. Aktuell ist der DHCP auf non-authorative
> eingestellt, was die PirateBox (richtig konfiguriertes LAN und bat0
> vorausgesetzt) einfach nur zu einem Knoten (und den DHCP-Daemon stumm
> schaltet, sobald ein anderer auftaucht).
> Ich weiß, dass es auch einen Besitzer (ich glaube aus Koblenz) gibt, der
> eine PirateBox via Mesh in ein FreiFunk eingebunden hat. Aktuell gibt es
> leider ein größeres Problem mit der Integration als Server: Die
> Upload-Box erfolgt über ein separates Python-Script was als
> Server-Dienst auf dem Port 8080 erhört und per iframe in die Startseite
> eingebunden wird. Das IFrame ruft daher einen statischen Host-Namen auf,
> was bei Integration mit einer richtigen DNS-Configuration nicht richtig
> aufgelöst und aufgerufen werden kann.
> Wir arbeiten aktuell an einer Lösung das separate PythonScript
> abzulösen, was sich leider als problematisch heraus stellt, denn das
> PythonScript arbeitet (interessanter Weise) sehr gut mit den Eigenarten
> der kleinen Router zusammen.
>
> Dazu kommt das Mesh-Thema für die PirateBoxen selbst. Hierzu habe ich
> mir mal die Mühe gemacht und für eine Nachfrage hatte ich bereits eine
> nicht-so-technischen Einleitung geschrieben:
> http://piratebox.aod-rpg.de/dokuwiki/doku.php/mesh/introduction?s[]=mesh&s[]=introduction
>
> Ich verwende batman-adv . ***Ursprünglich*** war die Idee so:
> http://forum.daviddarts.com/read.php?2,2736,2769#msg-2769 :
> * IPv4 nur zwischen End-Client und PirateBox
> * IPv6 spannt End-Client quer über die PirateBox ins Mesh, sodass man
> über IPv6 auch einen Client hinter einer PirateBox erreichen kann.
> * IPV6 Präfix was mesh-wide gültig ist, und ab einer bestimmten Stelle
> PBx spezifisch ist.
> * Jede PBx vergibt mit (allgm. Prefix)+(PBx-spez. Präfix) an ihre Clients.
> * Jede PBx ist gleichberechtigt. (Wichtig!)
>
> Gescheitert ist das ganze an Unwissen meinerseits, und das bei komplett
> gebridgeden br-lan es zu anderen "Interferenzen" kam.
>
> Aktuell ist die Implementierung wie folgt:
> * Kein IPv6
> * IPv4 192.168.1.x auf AP/Client Seite
> * IPv4 10.x.y.z auf Mesh Seite . x.y.z wird einmal bei der Installation
> meines Mesh-Paketes generiert.
> * Clients können mit Forward und NAT auf remote PBx zugreifen.
> * Eigenes Script was die Configuration von OpenWRT vornimmt (
> /etc/config/network & /etc/config/firewall )... der Aufbau von dem
> wifi-Interface & bat0 erfolgt über ein eigenes Script (was auch auf
> Notebooks recht stabil läuft).
>
> Zukünftig will ich die Implementierung auf folgendes Umstellen:
> http://prezi.com/9b0bz6okdvtt/piratebox-draft-for-changes-in-mesh/?utm_source=twitter&utm_medium=landing_share
> Der Hintergrund ist, dass so "advanced" User mehr Möglichkeiten haben um
> zweite Geräte als Server einzusetzen. Das wären sie die theoretischen
> Configurations-Möglichkeiten:
> http://piratebox.aod-rpg.de/dokuwiki/doku.php/mesh/configuration (Entwurf)
>
> Das PirateBox-Paket befindet sich auf github hier:
> https://github.com/MaStr/mkPirateBox-Mesh
> Was das Teil bisher kann:
>
> * Generierung IPv6 Präfixen
> * Generierung der IPv4 Adresse und Sicherung in einer Config-Datei
> * Anpassung der MAC Adresse für mesh0
> * Sauberes "hochfahren" der verschiedenen Interfaces mit
> Fehlerabfrage und einer Ausgabe die sehr Detailliert ist.
> * Configuration von bat0 via batctl oder ohne (manche
> debian-Installation haben den Treiber installiert und nur das Tool nicht)
> * Umstellen der MTU auf dem bat0 Interface (was der Unterschied zu
> deinem Script ist, es configuriert das wifi-Interface runter... aber das
> kann man bei mir noch implementieren)
> * RTS disablen
> * CUSTOM_BSSID setzen
> * Für PirateBox habe ich dann noch die originator-Pings vom
> Protokoll auf eine etwas niedrigere Frequenz gesetzt. (Meine Idee....)
>
> Hier die Config-Datei dazu:
> https://github.com/MaStr/mkPirateBox-Mesh/blob/master/src/data/etc/mesh.config
> Wie du siehst kann man dort einiges an und abschalten. (Hier gibt es den
> einen oder anderen Bug noch... )
>
> Im Makefile gibt es ein Build-Target was die einzelnen
> Script-Bestandteile zu einem fertigen .sh File für Notebooks zusammen
> nagelt. Im Rahmen der Umstellung auf das komplette 10.x.y.z Netz auch
> für Clients, werden auch noch die OpenWRT spezifischen Dinge aus der
> mesh.common entfernt und separat neben an gestellt... aber das sind wie
> gesagt nur Aufräumarbeiten.
>
> Beim Test und der Erstellung des Scriptes habe ich mich teilweise an die
> Erfahrungen von Elektra gehalten, was sie im Buch "Mesh"
> niedergeschrieben hat.
>
> Was die PirateBox nach den Dingen auf Layer 2 & Layer 3 noch braucht ist
> so ein "NameService". Also das PirateBox sich eine Liste erzeugen kann,
> welche Boxen in der Nähe aktiv sind und diese in ihre DNS-Auflösung
> integriert. Die Idee ist, z.B. dass ich meiner PirateBox den Namen
> irc.piratebox.lan gebe und ich als User hinter einer entfernten
> PirateBox die URL eingeben kann und komme genau auf diese PirateBox.
> Technisch kann man die Auflösung zusätzlicher Namen aus der
> Catch-All-DNS Configuration relativ leicht rauslösen mit einer
> zusätzlichen hosts-Datei, die aufgefüllt wird und man ein SIGHUP zum
> dnsmasq schickt, damit er die neu einließt.... das überschreibt die
> gefakten Antworten der PirateBox und würde dann auf die entfernte PBx
> mit dem Namen irc.piratebox.lan zeigen.
> Offen dafür ist "nur noch" ein kleines Script was Broadcasts senden
> "here I'am" und eins was diese empfängt und in regelmäßigen
> Zeitabständen ein JSON File sowie eine hosts config schreibt (und den
> SIGHUP auslößt).
> http://piratebox.aod-rpg.de/dokuwiki/doku.php/mesh/nameservice
> Das JSON File ist dann für die Frontend-Liste.
>
> Ich hätte gerne:
>
> * Feedback zur Konfiguration des Mesh-Teils selbst (Protokoll, Setup
> WLAN etc.)
> * Feedback zur IP-Konfiguration
> * Erfahrungswerte mit den DHCP/BroadCast Stuff.
> * Ist das mit dem NameService überhaupt sinnvoll oder sollte ich auf ein
> anderes Protokoll setzen (OLSR hat ja einen Nameservice integriert, ist
> aber deutlich aufwändiger in IP)
> * Gibt es einen generellen Denkfehler?
> * Sonstiges?
>
> vielen Dank und liebe Grüße aus Wiesbaden
> Matthias Strubel
> PS: Wie du siehst, war die Länge und Ausführlichkeit der Grund für die
> lange Response-Zeit ;P
>
>
> Am 24.04.2013 11:42, schrieb Jan Lühr:
>> Hallo Matthias,
>>
>> nachdem wir uns auf der Crypto Party 5 leider nicht wirklich
> austauschen konnten, wollte ich Dich kurz per E-Mail kontaktieren.
>> Bist Du irgendwann im Raum Köln / Bonn? Nimmst Du am
> Wireless-Community-Weekend teil?
>>
>> Uns interessiert insb. wie wir die Pirate-Box oder deren Services in
> unser Freifunk-Netz integrieren können.
>> Alternativ können wir auch auf Jitsi, Google Hangout, etc. ausweichen.
>>
>> Alles Gute
>> Jan
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.19 (MingW32)
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iEYEARECAAYFAlF7jR4ACgkQ7JXKWHWrFtPWsgCg3G5Q+t/dOAjF+g9bLhvwBih0
> 6FkAoKakPyapNXzKTJYAtT0lXPKGJW5g
> =gCVD
> -----END PGP SIGNATURE-----
>
Mehr Informationen über die Mailingliste Freifunk-Bonn