RPi als FF Offloader

Moin, gibt’s den Vortrag irgendwo online?
Versuche mich ebenfalls gerade an einem RPi image und stehe im Konfigurationsmodus ohne genauen Plan.
Ziel: FF-VPN-Offloader.
Gruß
-Heerde

@heerde: Vortragsreihe: Vom Linux für Anfänger bis zur Freifunk-Gatewayadministration

Beim Pi musst du einfach deinen Laptop an die LAN-Buchse anschließen und dann auf http://192.168.1.1 gehen.

Es werden aber nur bestimmte WLAN-Karten unterstützt. Oder du machst einen reinen Kabel-Knoten aus dem Pi.

Grüße
Matthias

Danke!
Genau das habe ich vor - einen Kabel Knoten. Konfiguration lief sauber durch - er ist auch schon Teil des FF Netzes. Aber ich bekomme die 2. USB-Netzwerkkarte nicht eingebunden.
Sie wird laut dmesg sauber erkannt - aber nicht dem FF-Client-Netz zugewiesen:

root@heerde-RasPi1:~# dmesg
[    3.017046] usb 1-1.2: new high-speed USB device number 4 using dwc_otg
[    3.128247] usb 1-1.2: New USB device found, idVendor=2357, idProduct=0601
[    3.140560] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=6
[    3.153096] usb 1-1.2: Product: USB 10/100/1000 LAN
[    3.163294] usb 1-1.2: Manufacturer: TP-LINK
[    3.172807] usb 1-1.2: SerialNumber: 000001000000

root@heerde-RasPi1:~# brctl show
bridge name     bridge id               STP enabled     interfaces
br-wan          7fff.3e6d3fef9cc8       no              eth0
br-client               7fff.b827ebb5e893       no              bat0

root@heerde-RasPi1:~# ip a s
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-wan qlen 1000
    link/ether b8:27:eb:b5:e8:93 brd ff:ff:ff:ff:ff:ff
3: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop
    link/ether aa:53:eb:85:b3:4f brd ff:ff:ff:ff:ff:ff
4: teql0: <NOARP> mtu 1500 qdisc noop qlen 100
    link/void
5: br-wan: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue
    link/ether 3e:6d:3f:ef:9c:c8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.52.33/24 brd 192.168.52.255 scope global br-wan
       valid_lft forever preferred_lft forever
    inet6 fe80::3c6d:3fff:feef:9cc8/64 scope link
       valid_lft forever preferred_lft forever
6: mesh-vpn: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1364 qdisc fq_codel master bat0 qlen 1000
    link/ether 8e:39:dc:9a:6a:22 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::8c39:dcff:fe9a:6a22/64 scope link
       valid_lft forever preferred_lft forever
7: primary0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1532 qdisc noqueue master bat0
    link/ether 3e:6d:3f:ef:9c:cb brd ff:ff:ff:ff:ff:ff
8: bat0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-client
    link/ether b8:27:eb:b5:e8:93 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ba27:ebff:feb5:e893/64 scope link
       valid_lft forever preferred_lft forever
9: br-client: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue
    link/ether b8:27:eb:b5:e8:93 brd ff:ff:ff:ff:ff:ff
    inet6 2a03:2260:115:100:ba27:ebff:feb5:e893/64 scope global dynamic
       valid_lft 86394sec preferred_lft 14394sec
    inet6 fe80::ba27:ebff:feb5:e893/64 scope link
       valid_lft forever preferred_lft forever
10: local-node@br-client: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue
    link/ether de:ad:be:ef:08:01 brd ff:ff:ff:ff:ff:ff
    inet 10.43.8.1/21 brd 10.43.15.255 scope global local-node
       valid_lft forever preferred_lft forever
    inet6 2a03:2260:115:100::1/128 scope global
       valid_lft forever preferred_lft forever
    inet6 fe80::dcad:beff:feef:801/64 scope link
       valid_lft forever preferred_lft forever

Muss da noch was konfiguriert werden?
Gruß

Hm, der Chipsatz des USB-ETH-Dongles ist ein RTL8153. Ich befürchte, der Treiber fehlt. Kann das jemand bestätigen?

Hallo,

die Karte muss beim ersten Booten angeschlossen sein, sonst erkennt er die später nicht mehr. Wobei ich nicht sicher bin, ob der Pi überhaupt nach einer zweiten Karte sucht, sollte aber eigentlich der Fall sein.

Schließ die Karte mal an ein modernes Desktoplinux (Debian / Ubuntu / Fedora) an und guck dir im dmesg an, welcher Kerneltreiber genau geladen wird. Dann kann man nachgucken, ob der Treiber im Image drin ist.

Grüße
Matthias

Hi,
um 100% sicher zu gehen habe ich die Karte neu mit FF geflashed und vorher alles angeschlossen. Das gleiche Spiel - Dongle Treiber wird vermutlich nicht geladen.
Ich habe mal eine Karte mit Debian Jesse auf dem PI gestartet. Hier funktioniert der Dongle. Ich kann auf dem Interface sniffen und sehe die DHCP-Pakete des angeschlossenen Clients.

pi@raspberrypi:~ $ sudo dmesg
[    3.337408] usb 1-1.2: new high-speed USB device number 4 using dwc_otg
[    3.468933] usb 1-1.2: New USB device found, idVendor=2357, idProduct=0601
[    3.485500] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=6
[    3.502275] usb 1-1.2: Product: USB 10/100/1000 LAN
[    3.516677] usb 1-1.2: Manufacturer: TP-LINK
[    3.530162] usb 1-1.2: SerialNumber: 000001000000
...
[   18.241578] cdc_ether 1-1.2:2.0 eth1: register 'cdc_ether' at usb-20980000.usb-1.2, CDC Ethernet Device, 18:d6:c7:11:22:a2
[   18.256654] usbcore: registered new interface driver cdc_ether

pi@raspberrypi:~ $ sudo lsusb
Bus 001 Device 005: ID 0bf8:100c Fujitsu Siemens Computers Keyboard FSC KBPC PX
Bus 001 Device 004: ID 2357:0601
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp. LAN9500 Ethernet 10/100 Adapter / SMSC9512/9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Kann man nachträglich einen Treiber zum FF-Image hinzufügen? Falls nicht gebe ich hier auf - angesichts der zu erwartenden Performance ist es wohl eh besser, sich einen zweiten supporteten Router als Offloader zu besorgen…
Danke und Gruß
Heerde

Hi,

anders als erhofft, steht da leider nicht der geladene Kerneltreiber. Guck vielleicht mit lsmod (vorher / nachher) mal nach, welcher Treiber da geladen wird.

Das Modul kann man theoretisch nachrüsten, aber das Problem ist, dass die Karte dann nicht mehr erkannt wird. Gehen tut es bestimmt, ich habe es aber bisher immer so gemacht, dass ich mir eine Firmware mit dem passenden Modul gebaut habe.

Der Durchsatz des PIs wird super schlecht sein. Selbst der fest verbaute LAN-Anschluss ist keine „echte“ Netzwerkkarte, sondern hängt nur am USB-Bus. D. h. du müsstest zwischen zwei USB-Geräten kommunizieren. Das lahmt alles vorne und hinten.

Selbst ein 841er dürfte mehr Durchsatz erreichen, zumindest gegenüber den alten PIs, die neuen kann ich nicht so einschätzen. Ist eher was zum Basteln.

Was hast du denn genau vor, dann können wir dir was an Hardware empfehlen?

Grüße
Matthias

Superschlecht ist relativ aber ist halt nur USB2. Ich habe mal den kleinsten Odroid als Offloader gebaut, der spielte sich dann nur an den Füßen bei gutem Durchsatz. Offloader lohnen fast nicht mehr seitdem fastd weg ist.

Wofür sie aber immer gut sind sind Bastelarbeiten und was lernen :slight_smile:

2 Like

Hallo zusammen,
zunächst: was ich überhaupt vorhabe: Ich will meinen CPE210 wieder auf Originalfirmware umstellen und damit entlasten, denn es hat sich gezeigt dass der Durchsatz massiv in den Keller geht wenn mehr als ein paar Clients angemeldet sind. Also soll ein FF-Knoten zwischen meinem Heimnetz und CPE.
Bevor ich jedoch neue Hardware kaufe wollte ich das mit nem hier noch rumfliegenden RasPi samt 2. Netzwerkkarte mal testen und - wie @kgbvax schon sagte - was lernen.

Der Durchsatz an sich sollte nicht so das Problem werden. Ich hab zur Zeit den Pi mit Debian Jessie und einer L2-Konfig als Bridge laufen und er erreicht locker seine 40MB/s, was das Maximum des dahinterliegenden Powerline Netzwerks ist.

Nur leider erkennt die FF-Firmware wie gesagt die Netzwerkkarte nicht. Deswegen wäre ich für Tipps dankbar,

  • wie ich erkennen kann ob es wirklich an der Karte liegt und welches Modul genau fehlt
  • Wie ich eine FFMS-Firmware mit diesem Modul “backen kann”
  • Woran ich Bottlenecks erkenne

Hier noch auf die Schnelle der Output von # lsmod bei eingesteckter Karte:

root@raspberrypi1B:~# lsmod
Module                  Size  Used by
nfnetlink_queue        12441  0
nfnetlink_log           9809  0
nfnetlink               7179  2 nfnetlink_log,nfnetlink_queue
bluetooth             374820  0
bridge                112471  0
stp                     2218  1 bridge
llc                     5790  2 bridge,stp
cfg80211              525742  0
rfkill                 21373  2 bluetooth,cfg80211
evdev                  11746  0
cdc_ether               6246  0
snd_bcm2835            23131  0
snd_pcm                97825  1 snd_bcm2835
snd_timer              22706  1 snd_pcm
snd                    68784  3 snd_timer,snd_bcm2835,snd_pcm
bcm2835_gpiomem         3791  0
uio_pdrv_genirq         3718  0
uio                    10166  1 uio_pdrv_genirq
fixed                   3029  0
ipv6                  384468  27 bridge

Besten Dank! Wie gesagt, wenn es zu kompliziert wird muss ich einfach in den sauren Apfel beißen und einen 1043nd (oder vergleichbar) kaufen.
Gruß
Heerde

Das kaufe ich dir nicht ab. Durch eine 100 Mbit/s-LAN-Karte kriegst du maximal 12,5 MB/s. Und auch die werden glaube ich beim PI nicht ganz erreicht. Oder meinst du 40 Mbits/s?

Aber zu bedenken wäre: Der Durchsatz auf USB-Hosts bricht ein, wenn du mehrere Geräte hast, die plötzlich Bandbreite brauchen. Also wird sich das ggfs. halbieren, bzw. maximal die Hälfte vom maximalen Durchsatz bringen.

Also gehen tut das schon. Lernen ist auch immer gut :).

Lsmod vom Raspi bringt uns nichts, weil da das Modul gerade fehlt. Du musst lsmod an einer Desktopdistri machen, die den Treiber dabei hat.

Grüße
Matthias

Cpe 210 hat mehr als ausreichend power für ms ff Bedenke bitte es liegt nicht immer an der Menge der Clients eher an die Gateways denn die sind auch irgendwann ausgereizt bzgl Datendurchsatz

Hoppla. Ja Du hast Recht, ich meinte Mbits/sec.

Gerade nochmal den RasPi 1B mit iPerf3 getestet:

PC  <->  RasPi Layer2-Bridge   <->  PC
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec  83.9 MBytes  70.4 Mbits/sec                  sender
[  4]   0.00-10.00  sec  83.8 MBytes  70.3 Mbits/sec                  receiver

RasPi <-> PC
[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.15  sec  57.5 MBytes  47.5 Mbits/sec    0             sender
[  4]   0.00-10.15  sec  57.5 MBytes  47.5 Mbits/sec                  receiver


PC <-> PC (Gegenprobe)
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec  1.03 GBytes   882 Mbits/sec                  sender
[  4]   0.00-10.00  sec  1.03 GBytes   882 Mbits/sec                  receiver

Speedtest vom RasPi (direkt am Router)
Hosted by LWLcom GmbH (Dusseldorf) [121.46 km]: 30.724 ms
Testing download speed........................................
Download: 46.05 Mbit/s
Testing upload speed..................................................
Upload: 23.39 Mbit/s

Der Flaschenhals ist also IMHO nicht die USB-Schnittstelle, sondern die CPU des Gen1-RasPis.

Der # lsmod btw. war von der Linux-Distri auf dem Pi, wo der Dongle korrekt funktioniert (wie o.g. Tests natürlich auch).

Ich glaub ich lass die Sache. Wäre mal interessant zu wissen wie sich so ein Uralt-Pi mit dem Image schlägt, aber ich werd jetzt keinen anderen Dongle kaufen sondern dann eher direkt n Router. Schade.

Das wage ich zu bezweifeln. Mein CPE sollte ein ordentliches Backbone haben - dennoch kommt ein Client kaum “rein” ins WLAN wenn schon 30+ angemeldet sind (“WLAN hat keinen Internetzugriff etc.”) und der Speedtest kommt dann auf max. 1-2Mbit/s.
Wir können es gerne mal nach den Ferien zur Rush Hour (Schulzeit) gemeinsam testen. :wink: Ist der heerde-beam.
Gruß
Heerde

Das hat aber mit Sicherheit andere Gründe die auch ein Offloader nicht löst. Stichwort ist hier Airtime… Was sendet bei dir denn in der Umgebung sonst noch so im 2,4 GHz WLAN Bereich?

Die CPE ist leider funktechnisch ein sehr schwaches Gerät. Sowohl mit der Originalfirmware als auch mit Gluon - zumindest meiner Erfahrung nach. Ich hab hier auch noch zwei Stück rumliegen.

Grüße
Matthias

Hi, hat jemand schon den neuen Pi 4 aufgesetzt? Beim Freifunk München gibt’s eine ziemlich ausführliche Anleitung dazu, allerdings bräuchte ich noch die Infos bzgl. Münsterland:

  • FASTD Port
  • Segmentname
  • VXLAN ID zum Meshen

Würde das gerne ausprobieren…

Hallo und Wilkommen bei uns im Forum @tgeimer

so einfach ist das leider nicht. Wir setzen bei uns weder FastD als VPN Tunnel ein noch nutzen wir VXLAN und Segmente sind bei uns Domänen. Die Techniken die eingesetzt werden unterscheiden sich von Community zu Community sehr stark, daher kann man leider nicht jede Anleitung adaptieren.

Den Weg alles manuell und zu Fuß einzurichten würde ich dir in diesem Fall auch nicht empfehlen. Die Gefahr das man z.B. irgendwo eine Regel vergisst zu setzen und der Traffic dann doch über deine Private Leitung ausgeleitet wird ist verdammt hoch.

Es gibt für den Raspberry Pi 1 und 2 ein Image von unserer Firmware das vlt auch auf dem Pi4 läuft. Kann ich aber nichts näheres zu sagen. Wenn du Experimentieren möchtest würde ich dir auch ehr zu einem Richtigen Router raten. Die gibt es schon für ne schmale Mark.

Du kannst auch gern mal an einem Mittwoch Abend zu einem unserer Treffen in der Warpzone am Hawerkamp kommen. Die Tagesordnung findest du wöchentlich hier im Forum.
Ggf. hat dann sogar jemand auch noch einen Router über und würde ihn dir für ein Paar € überlassen. Das müsstest du aber ankündigen damit wir auch einen da haben.

Gruß Marius

1 Like

Hi,
ich habe das Image vom Pi 1 und 2 noch nicht auf meinem 4er ausprobiert. Erstmal nutze ich eine Fritzbox 4040 zum Start, vielleicht stelle ich später mal um.
Ich komme vielleicht heute abend mal in die Warpzone oder nehme per Mumble teil wenn die Zeit es erlaubt. Tüftle nun erstmal mit der FritzBox

Ich finde einen RPi für Freifunk interessaner den je - gerade im Hinblick auf die dünner werdende Luft an Low-Cost-Routern und dem mutmaßlich guten Treibersupport der mittlerweile ausreichend performanten OnBoard-Komponenten.
Alleine als reiner FF-Knoten für Einsteiger dürfte ein 4er PI interessanter sein als extra dafür eine betagte FF4040 zu beschaffen. Und wenn dann noch ein unterstützter Dongle für die 2te Netzwerkkarte dran kommt, hätte man einen prima „Offloader“ für Unify-APs.
Ich kann aber nicht beurteilen, wie schwer es ist eine Firmware dafür zu backen. Damit steht und fällt es…

Was ist denn daran betagt? Die sind super die Dinger.

1 Like

Finde das dies gerade für Einsteiger eine große Hürde ist da es viel mehr Stolpersteine gibt im vergleich zum flashen einer Fritzbox mit einem image das direkt läuft.

2 Like