IN BEARBEITUNG, sehr sehr viele Fehler

Freifunk Offloader

Version:	1
Date:	29/05/2018
Info:	die 3 LAN Ports können nur zum Meshen benutzt werden. Clientverbindungen müssen nach konfiguriert werden. Siehe dazugehöriges Kapitel

Genau so wie beim Freifunk Offloader (Outdoor), der auf einem Zotac ZBOX CI 323 nano basiert, soll diese Offloaderversion auch im Aussenbereich einsetzbar sein. Allerdings soll diese Version etwas kostengünstiger und denoch nicht leistungsarmer sein.

Hardwarevergleich

APU 2C4	CI323 nano
CPU	AMD Embedded G series GX-412TC, 1 GHz quad Jaguar core	Intel N3150 quad-core 1.6GHz
GPU	Not applicable	Intel HD Graphics
RAM	4 GB DDR3-1333 DRAM	4 GB DDR3L-1600 SO-DIMM (8GB maximum)
LAN	3 x Intel i210AT Gigabit Ethernet	2 x Gigabit Ethernet
WLAN	Not applicable	802.11ac
USB	2 x USB 3.0 (external) + 2 x USB 2.0 (internal)	1 x USB 3.0 Type C, 2 x USB 3.0, 2 x USB 2.0
SD Karte	1 x internal sdhci	externer 3-in-1 (SD/SDHC/SDXC)
SSD	1 x internal connector	1 x 2.5 inch SATA SSD/HDD slot
mSATA	2 x mSATA PCIe	Not applicable
Zusatz Anschlüsse	2 x PCIe	HDMI, DisplayPort, VGA
Verbrauch	12 W maximum	40 W
Preis	215 € total	220 € PC + 30 € RAM + 40 € SSD

Warum die APU und nicht der Barebone?

Schaut mann sich die Resourcen an, so hat der Zotac PC die Nase ganz klar vorn. Allerdings muss man die ganze Sachen realistich betrachten. Um das VPN zu berechnen reichen die Resourcen, CPU und RAM, der APU vollkommen aus. Die APU schafft locker 50MB/s, für einen kleinen Freifunk Offloader ist das mehr als ausreichend. Sollte man eine höhere Datenrate brauchen, ist es sinnvoller sein Freifunknetz entsprechend zu konfigurieren und eine 2ten Offloader zu verwenden. Der Grund dafür ist ganz klar. Der Offloader hat den Internet Uplink und muss deshalp auch das VPN berechnen. Sollte es nun nur einen Offloader geben und dessen Uplink ausfällt, so muss ein kleiner Router dies übernehmen. Somit könnte es dann bei einer Datenrate von 12 MB/s maximal bleiben. Hat man nun aber einen 2ten Offloader, kann dieser das ganz Netz weiterhin versorgen und man hat immer noch die 50 MB/s.

Die WLAN Verbindung des Zotac PCs kann mann nicht im Freifunkmodus benutzen, also ist sie sinnlos. Das Selbe gilt für die Grafikanschlüsse.

Eine SSD ist schnell, ungefähr 550MB/s, aber eine mSATA ist weit aus schneller, +2GB/s.

Die APU hat einen Ethernetport mehr, was für einen Offloader ein grosser Vorteil ist.

Beim Verbrauch ist die APU ganz klar der Sieger mit 12W anstatt von 40W.

Preislich ist die APU auch ganz klar der Sieger.

der Nachteil der APU ist, dass man das FreiFunk Image umständlucher auf der mSATA installieren muss als bei einer SSD auf dem Barebone. Dies ist am ende jedoch och nicht sehr viel umständlicher.

Pro APU

weniger Verbrach

mehr LAN-ports

schnellerer Festplattenanschluss

keine Anschlüsse die man nicht benötigt oder nocht verwenden kann

wesentlcih günstiger als der Barebone

Kontra APU

umständlichere Erstaufsetztung

weniger Resourcen als beim Barebone

Fazit: Die APu soll es sein.

Firmware

Da es sich hier um eine normale CPU, kein ARM, verwenden wir das X86-64 Image. Dieses findet man hier gluon-fflux-X.Y.Z-x86-64.img.gz.

Betriebsarten

Es gibt verschiedene Arten um den Offloader zu Betreiben und jede hat Vor- und Nachteile

SD Karte

SD Karten bekommt man heutzutage nachgeschmissen. Ein weiterer Vorteil der SD Karte ist die Installation des Images. Mit einem Tool wie Etcher, wird sogar dies extrem leicht.

Ein Nachteil der SD Karte ist einfach, dass sie nicht für diese Art von Aufgaben bestens geeignet sind. Die Lebensdauer einer SD Karte wird mit dem Offloader stark reduziert. Ein weiters Nachteil, das auch die Leistung des Offloaders beeinträchtigs, ist, sollten es nicht mindestens ein Klasse 10 SD Karte sein, so wird der ganze Offloader langsam. Beispiel: Mein alter Skynet-Freifunk-Offloader basierte auf dem Zotac CI323 nano und lief mit einer Klasse 10 SD Karte. Das Hochfahren des Offloaders dauerte aber schon mal 30 Minuten ansich.

Diese Betriebsart würde ich nur zum Testen empfehlen.

USB Stick

USB Sticks sind eine Mischung aus SD Karten und SSDs, sehr günstig und denoch sehr schnell. Ein Vorteil des USB Sticks ist die Installation des Images. Mit einem Tool wie Etcher, wird sogar dies extrem leicht. Da die APU 2C4 2 USB 3.0 Anschlüsse bsitzt, ist Geschwindigkeit nicht das Problem. Allerdings besteht die Gefahr, dass der USB Stick ungewollt abbrechen könnte.

Diese Betriebsart würde ich der SD-Karte vorziehen, aber denoch nur zum Testen verwenden.

SATA SSD

Der SATAanschluss kann für eine SSD benutzt werden. Allerdings ist der Einbau in die APU sehr schwierig und auch nicht zu empfehlen, da man die PCIe-anschlüsse opfern muss.

Dies ist nicht zu empfehlen.

mSATA SSD

Die mSATA SSD ist definitif die schnellste und auch die bequemste Art und Weise den Offloader zu betreiben. Der Einbau ist kinderleicht, er liegt intern, es bietet die höchste Geschwindigkeit von +2 GB/s und man bekommt eine mSATA im APU 2C4 BBundle gleich mit. Da er auch nur 215€ mit Versand kostet, gibt es keine Grosse Diskusion.

Dies ist die bevorzugte Bertriebsart.

Installation

Sollten man die APU über SD Karte oder USB Stick betreiben wollen, so muss man nur das X86-64 Image daruaf flashen und die APU damit booten. Alles Andere ist wie bei jedem anderem Freifunknode.

Für alle anderen bitte weiter lesen.

Benötigt wird:

Die APU

2 leere USB Sticks

Das Freifunk Image für X86-64

Ein LAN Kabel

Ein USB auf Seriel Konsole Kabel

Ein Null Modem Kabel

Einen funktionierenden PC

Voyage Linux Image

Geduld

Der erste Schritt besteht darin einen bootfähigen USB Stick mit dem Voyage Linux Image zu erstellen. Dafür kann man z.B Etcher benutzen.

Schritt 2 besteht darin, das FF Image einfach auf den 2ten USB Stick zu kopieren. Wichtig die Image datei muss in entzippter Form auf dem USB Stick liegen. Nicht auf den USB Stick flashen.

Nun bereiten wir unseren PC vor. Zurest muss ein Konsolen Emulator installiert werden der mit der Serielen Schnittstelle der APU reden kann. Ich habe mich für picocom entschieden. Mit apt ist er auch schnell auf dem Ubuntu Laptop installiert.

sudo apt-get install picocom

Soll eine anderen Terminal Emulator verwendet werden, bitte über den Verbindungsaufbau informieren und nicht blind die Kommandozeilen verwenden.

Jetzt bereiten wir unsere serielle Verbindung vor. APU noch nicht mit Strom versorgen. Voyage Linux Stick in die APU stecken. APU mit den Kabeln an den PC verbinden. Folgenden code in einem Terminal ausführen.

sudo -s
picocom -b 115200 /dev/ttyUSB0

Damit wird das Terminal zu einem seriellen Terminal, das die serielle Kommunikation zwischen PC und APU anzeigen kann.

115200 ist die Baudrate. Diese ist sehr wichtig, da sie entscheidet ob wir komische Zeichen angezeigt bekommen oder einen verständlichen Text.

/dev/ttyUSB0 ist der USB port unseres Kabel.

Bei Bedarf müssen diese Variablen angepasst werden. Es sollte aber nicht der Fall sein bei einer APU 2C4.

Da nun unser Terminal bereit ist, können wir die APU booten lassen. Das Booten kann einige Minuten dauern. Sollten jetzt denoch komische Zeichen auftauchen, dann liegt es daran, dass die Baudrate nicht stimmt. Anderen Baudraten die noch passen könnten sind:

9600

38400

Nach dem die APU gebootet ist, mussen wir uns einloggen.

login: root
password: voyage

Dies sind standart Logidaten und sollten bei anderen Verwendungen von Voyage Linux geändert werden. Da wir aber Voyage Linux nur zur Installation des eigentlichen Betriebssystems verwenden, überspringen wir diesen Punkt.

Da wir jetzt eingeloggt sind geht es mit der eigentlichen Arbeit erst los. Was jetzt getan werden muss, ist folgendes:

Herausfinden was unsere mSATA ist und was ein USB Stick

Mount Punkt für den USB Stick erstellen

USB Stick mounten

mSATA mit Freifunk Firmware flashen

Erstmal unseren zweiten USB Stick in die APU stecken, bis 10 zählen und Enter drücken.

Dann folgenden befehl benutzen:

lsblk

Damit finden wir heraus was wo gemounted ist. Normalerweise ist sdb1 auf / gemounted. Das ist dann unser Voyage Linux Sick. Sollte sich der / Mount Punkt nicht bei sdb sonder sda oder sdc befinden, dann ist das nicht weiter schlimm. Es geht nur darum rauszufinden wo der Mount Punkt / ist, da wir diesen USB Stick nachher nicht flashen dürfen.

Nun kommt der folgende Befehl zum Einsatz

dmesg

Benutzt man diesen Befehl, so gibt das Termianl erstmal jede Menge Infos heraus, die einen erschalgen können. Aber keine Panik, was wir suchen steht ganz klar und einfach zusammen gefasst in den ganzen Berg von Informationen.

Da wir wissen wo unser wo unser Mount Punkt / ist, normalerweise sdb, suchen wir jetzt einfach nach sda und sdc. einer der beiden sollte die Info ATA haben, das ist unsere mSATA Festplatte. Folglich ist der Andere der 2te USb Stick.

Die mSATA Festplatte ist normalerweise sda und der 2te USB Stick sdc.

jetzt erstellen wir einen Mount Punkt für unseren 2ten USB Stick und mounten ihn anschliessend.

cd /media
mkdir USB
sudo mount /dev/sdc /USB

Überprüfen wir kurz ob jetzt auch alles richtig ist.

cd USB
ls

Solten wir jetzt unsere Freifunk Firmware sehen, somit ist alles in Ordnung. Sollte dass nicht der Fall sein, kein Problm.

cd /media
sudo umount /dev/sdc
sudo mount /dev/sda /USB
cd /USB
ls

Jetzt haben wir die Freifunk Firmware bereit zum flashen der mSATA.

Mit folgendem Befehl flashen wir nun unsere mSATA mit der Freifunk Firmware.

dd bs=4M if="name_der_FF_firmware".img of=/dev/sda conv=fsync

2 Minuten später haben wir jetzt einen Freifunk Offloader auf APU 2C4 basis.

Beim nächsten booten wird sich der Offloader wie ein normaler FreiFunk Router verhalten und man kann ihn auch genau so konfigurieren.

Konfiguration

Da wir die APU als Offloader verwenden müssen wir noch 1 Konfiguration vornehmen. Für diese Konfigurationen muss amn ssh Zugang besitzen.

Mesh On LAN aktivieren

uci set network.mesh_lan.auto=1
for ifname in $(cat /lib/gluon/core/sysconfig/lan_ifname); do
uci del_list network.client.ifname=$ifname
done
uci commit network
/etc/init.d/network restart

auf allen Freifunknodes die über den Offloader einen Uplink bekommen, muss noch das Mech on WAN eingeschaltet werden.

Mesh on WAN aktivieren

uci set network.mesh_wan.auto=1
uci commit network
/etc/init.d/network restart

Da die APU 3 LANports besitzt, wird ein Port für WAN und die übrigen beiden für LAN benutzt. Der WANport ist normalerweise der Port neben dem Seriellenschnittstellenport.

Möchte man nun noch einen Client an den übrigen LANport anschliessen, so muss man folgend Konfiguration vornehmen.

kommt noch