Freifunk ohne gluon?

Ich bin schon seit einigen Jahren ein großer Fan von Freifunk. Leider war in Aachen bis zum Jahre 2014 wenig bis gar keine Aktivität rund um dieses Projekt zu verzeichnen. Das hat sich zum Glück deutlich geändert. Mittlerweile sind über 2.000 Knoten / Access Points in Betrieb.

Wie bei jeder Software bin ich lange nicht mit allen Facetten der aktuellen gluon Firmware zufrieden. Das beste Beispiel dafür ist die Tatsache, dass man für sein Heimnetz häufig 3 Router aufstellen muss um eine vernünftige Abdeckung des eigenen Netzes zu gewährleisten. Möchte man zusätzlich Freifunk betreiben, braucht man weitere 2, besser 3 Geräte. Das halte ich für inakzeptabel. Es gibt noch einige anderen negativen Aspekte, auf die ich jetzt nicht weiter eingehen möchte.

Jedenfalls habe ich nicht einfach die Hände in den Schoß legen wollen. Leider hat es sich leider gezeigt, dass die Einflussnahme bei gluon auf Netzwerk-Design Entscheidungen sich sehr schwierig gestaltet.
Unter Anderem deswegen habe ich schon im Jahre 2014 angefangen mit Hilfe der OpenWRT buildroot Umgebung eine eigene Firmware zu erstellen, die mittlerweile auf LEDE basiert.

Zunächst bedurfte es einiger Experimente mit der buildroot Umgebung. Bei der Anzahl Flash-Vorgänge aus den letzten beiden Jahren würde ich auf eta 100 tippen. Zahlreiche Design Entscheidungen bezüglich des Build Prozesses mussten erst mühevoll gefunden werden.
Noch bevor ein wirklich brauchbares Firmware release veröffentlicht wurde, erschien der Quellcode (GPL) auf Github. Dabei ist festzuhalten, dass es sich bei Freifunkcp nicht ausschließlich um ein Firmware release handelt, sondern in erster Linie tatsächlich um einen Firmware Baukasten.

Durch meine Erfahrungen mit Freifunkcp möchte ich berichten:
Eingesetzte Switche unterstützen idealer Weise 802.1Q. ath10k kann man durchaus einsetzen, allerdings gibt es hier einige Tücken. Freifunkcp läuft bislang nur auf einer Hand voll Geräten. Prinzipiell kommen alle Geräte ab 8MB Flash auf denen OpenWrt / LEDE läuft in Frage. Allerdings veröffentliche ich nur fertige Images für Geräte, die ich getestet habe.
Knoten müssen nicht zwangsläufig das adhoc interface zum kabellosen Meshen betrieben werden. Mit Freifunkcp ist es sehr einfach möglich dieses Feature abzuschalten, da eine Kabel-Mesh Strecke oft viel sinnvoller ist. Dazusind  mehrere VLAN reserviert in der Freifunkcp Firmware. Um mit meinen Nachbarn zu meshen – zu denen ich noch kein Kabel habe – steht auf dem Dach ein Gerät, dass natürlich Meshing über Wifi betreibt.

Schon seit etwa 2 Jahren betreibe ich nun schon produktiv Access Points auf Basis von Freifunkcp. Die Hauptnachteile derzeit sind die fehlende Integration in die Freifunk Karte und die fehlende Möglichkeit mit einem Freifunkcp basiertem Gerät die VPN Verbindung zum gluon supernode aufzubauen. Für Letzteres empfehle ich einen gluon offloader z.B. virtualisiert auf Basis von x86 zu betreiben.

Mittlerweile wächst auch die Freifunk Community in Alsdorf. Wer sich dafür interessiert sollte unbedingt mal die Webseite des Freifunk Alsdorf besuchen.

Da sich immer noch Niemand bereit erklärt hat mich aktiv in der Entwicklung zu unterstützen, maintaine ich Freifunkcp immer noch alleine. Nicht zuletzt deswegen befindet sich die Firmware immer noch im beta Status. Trotzdem möchte ich empfehlen mal ein Image auszuprobieren.

Compile gluon openwrt

Prerequisites:

  • Debian 8.1
  • sudo apt-get install git build-essential libncurses5-dev zlib1g-dev gawk subversion unzip zlib1g-dev
  • enough free space
  • target domain: Aachen but with pebrille’s flavour (https://github.com/imp1sh/site.git)
  • target release: v2015.1.2
  • target platform: ar71xx-generic and kvm image

Step by step:

  1. git clone https://github.com/freifunk-gluon/gluon.git gluon -b v2015.1.2
  2. cd gluon
  3. git clone https://github.com/imp1sh/site.git
  4. make update
  5. make GLUON_TARGET=ar71xx-generic
  6. make GLUON_TARGET=x86-kvm_guest

OpenWRT removes AICCU implementation

As I found out recently in this thread aiccu support had been removed from the latest builds of openwrt (Attitude Adjustment, aka 12.09). It  seems to have something to do with the aiccu disconnect problems I blogged about before (GER). For me aiccu was one of THE reasons to use openwrt because IPv6 support is very important to me. What’s even more important to me is that nobody seems to be bothered by the openwrt developer’s decision.

I hereby declare that I am really pissed!

Please reintegrate aiccu and thus IPv6 fully into openwrt. Without it it’s kind of useless to me.

Openwrt Backfire Aiccu sixxs disconnect -> reconnect

Ich benutze nun schon seit über einem Jahr OpenWRT Backfire (10.03.1, r29592) auf einem wndr3700. Leider ist immer noch ein Bug im System:

https://dev.openwrt.org/ticket/10418

Im Netz findet man relativ wenig dazu. Ich habe einen Workaround  für das folgende Problem:

  1. DSL-Leitung wird unterbrochen (z.B. 24h Disconnect)
  2. DSL-Leitung wird wieder aufgebaut
  3. Aiccu Tunnel funktioniert nicht mehr

Leider ist dadurch die IPv6 Konnektivität mehr als gestört, speziell, wenn es mal häufiger vorkommt, dass die IPv4 Verbindung verloren geht. Wenn man das folgende Skript beim hochfahren des WRT automatisch starten lässt, prüft es alle 2 Minuten, ob IPv6 Konnektivität vorhanden ist. Falls nicht, startet es Aiccu neu. Viel Spaß damit.

#!/bin/ash
sleep 120
while [ true ]; do
ping6 -c1 2a02:2e0:3fe:100::7 2>/dev/null && echo still up || /etc/init.d/aiccu restart
sleep 120
done
exit 0