Wie Weboberfläche auf Richtfunkrouter erreichen

Für eine Gemeinschaftsunterkunft benötigen wir eine Richtfunkstrecke. Bei den Richtfunk-Routern handelt es sich um CPE510 mit vorhandenem PharOS und mit eigener privater IP aus dem 172er Netz. Diese Richtfunkstrecke ist lediglich ein „Kabelersatz“. Zwischen Internet und Richtfunkstrecke befindet sich ein Futro. Nun mein Anliegen: Ich möchte gerne von außen per Freifunk auf die Konfigurationsoberfläche der CPE510-Richtfunk-Router zugreifen.

Das 172er Netz wird aber nicht geroutet. Deshalb kann ich (vom Freifunknetz aus) nicht auf die Weboberfläche der CPE510 zugreifen.

Ich sehe drei Möglichkeiten:

  1. Eklige Notvariante: Einsatz eines Raspberrys mit zwei IPs: 172er und einer offiziellen IP aus dem Freifunknetz. Auf dem Raspberry könnte dann ein Web-Proxyserver laufen. Das Ganze ist aber fehleranfällig und ziemlich aufwändig.

  2. Auf den CPE510 jeweils als LAN-Adresse eine zusätzliche zweite „offizielle“ IPv4 aus dem Freifunknetz angeben. Frage: Gibt es in PharOS (Firmware des CPE510) eine Möglichkeit, so eine zweite IP auf den Netzwerkport des CPE510 zu legen?

  3. Das 172er Netz irgendwie zu mir durchtunneln. Ich habe einen vorgeschalteten Futro mit Gluon. Nun könnte ich dem Futro zwar per VLAN auch eine zusätzliche 172er private IP auf das LAN-Interface legen. Aber wie komme ich dann mit meinem Browser aus dem Freifunknetz auf die Weboberflächen der CPE510-Richtfunk-Router?

Ich bin für sachdienliche Hinweise dankbar. Je einfacher und randalesicherer, desto besser.

einer der Freifunk Router muss da ja auch irgendwo in diesem Netz hängen, wenn du dort eine Weiterleitung hast, kannst du beispielsweise Port 80 umbiegen,
ich mach mal ein Beispiel wie ich das hier hab.
Hab eine Unterkunft, und dort einen Freifunkrouter, jetzt will ich an den DSL uplink.
DSL Uplink 192.168.0.1
dann mach ich mir auf dem Freifunkrouter einen ssh key (muss ich nur einmal machen)
dropbearkey -t rsa -f /etc/dropbear/mykey
und trag den auch auf diesem router ein (natürlich auch einmalig)
dropbearkey -t rsa -f /etc/dropbear/mykey -y |grep ssh-rsa >> /etc/dropbear/authorized_keys
dann leite ich traffic um
ssh -i /etc/dropbear/mykey -y localhost -o StrictHostKeyChecking=no -L 8080:192.168.0.1:80 -g
die shell bei dem Freifunk Router bleibt offen, der dritte befehl bewirkt das sich der Router in sich selber einloggt und den Port 80 der Adresse 192.168.0.1 wie ihn der Freifunkrouter sieht auf Port 8080 forwarded. Mit dem Effekt das du dich mit der :8080 verbinden kannst und dann auf deinen DSLRouter kommst.

hoffe das war nicht zu umständlich erklärt. (geht auch einfacher, aber das is aus meinen uraltnotizen und funzt)
vermutlich reicht auch bei dir am computer (ungetestet)
ssh -A root@<freifunkrouter> ssh localhost -o StrictHostKeyChecking=no -L 8080:192.168.0.1:80 -g

Da der dropbear auf den Gluon-Kisten ziemlich ärgerliche Limits hat, insbesondere wenn es um die häufig ziemlich komplex gestalteten „Ajax-Oberflächen“ der Routerinterfaces geht, wo gern mal ein Dutzend Streams offen gehalten wird:
Besser „socat“ benutzen,
das kann auch zwischen IPv4 und IPv6 und zurück umsetzen. Also ein etwas spezielleres „netcat“.

Beispiel auf einem 841, der die Stock-Bridge auf seinem Mesh-Lan „sieht“:

einmalig Paket von erreichbarer IPv6-Quelle installieren (hier ein interner Webserver, openwrt ist häufig per IPv6 nicht erreichbar)

 cd /tmp;wget http://[fda0:747e:ab29:9375:cafe::]/images/others/openwrt/socat_1.7.3.0-1_ar71xx.ipk
 opkg install socat_1.7.3.0-1_ar71xx.ipk

nach einem boot: (Bei Dir wäre es eine andere RFC1918er-Range, also 172.31.x.y/

 ifconfig br-wan 192.168.4.61
 socat TCP6-LISTEN:2331,fork,su=nobody TCP:192.168.4.244:443 &

auf einem von außen gut erreichbaren Host (mit IPv4), der auch in der Freifunk-Domain hängt.

sudo socat TCP-LISTEN:2331,fork,su=nobody TCP6:[fda0:747e:ab29:9375:16cc:20ff:fea4:9a6e]:2331 &

Dann Zugriff via

https://jumppad.ffdus.de:2331

(Und nein, ich werde hier keine Diskusstion um „IPv6-fähige Stocklink-Webinterfaces“ und/oder „public-IPv6 auf die Plasterouter“ führen, da ich zur Wartung häufig in einem LTE hänge, wo es schlicht kein IPv6 gibt ohne extreme Verrenkungen mit weiteren VPN-Layern. Und ich mache das hier, um Probleme zu lösen, nicht um noch weitere anzusammeln.)

P.S. Werte sind alle nur Beispiel.

4 Likes

1 Router mit MwW auf einen der beiden eine passende WAN IP (zu den CPEs) und SSH Tunnel fertig.
mache ich immer so.

Danke für die ausführlichen Beschreibungen. Die Variante von @adorfer hört sich interessant an. Das Paket socat_1.7.3.0-1_x86.ipk konnte ich auf dem Futro installieren. Doch irgendwie funktioniert meine Konfiguration nicht.

@fuzzle Deine Variante hilft mir sehr gut. Sie reicht für meine Verhältnisse aus. (Mir geht es darum, die CPEs der Richtfunkstrecke - von zu Hause aus - zu monitoren.) Erste Tests brachten mich dem Ziel schon näher.

Wahrscheinlich habe ich aber noch einen Denkfehler: Hinter dem DSL-Router hängt ein Futro (eth1 als mesh_vpn) (eth0 als mesh_lan). Vergebe ich nun auf eth0 des Futro eine zusätzliche statische IP aus dem 172er Netz (eth0.1), so kann ich (vom Futro aus) die CPE510 mit ihren 172er IP nicht anpingen.

Schalte ich im Futro auf eth0 nun mesh_lan ab und konfiguriere eine blanke statische IP aus dem 172er Netz auf eth0, so kann ich die CPEs vom Futro aus erreichen und die Tunnelung der Weboberfläche klappt prima. Allerdings stehen dann die Smartphones im Dunkeln. Habt Ihr eine Möglichkeit für mich, auf eth0 neben mesh_lan auch noch eine zusätzliche statische IP aus dem 172er zu vergeben? Oder geht diese Kombination prinzipiell nicht?

Andernfalls müßte ich mir einen Knoten hinter der Richtfunkstrecke schnappen und dort eine zusätzliche statische IP auf dem WLAN-Port konfigurieren. Irgendwie widerstrebt mir das aber, weil ich dann erst einmal über die Richtfunkstrecke rüber muss.

Hallo,

kannst du den Richtfunkern nicht einfach eine v4 Adresse aus eurem Netz geben oder funktioniert das nicht?

kann man schon, aber idR transportiert man über die Bridges nicht das FF-Client-Netz (br_client), sondern das batman-Mesh. Und dort sind (sinnvollerweise) natürlich keine FF-Client-IPs erreichbar.
(Ansonsten müsste man auf jedem Knoten einen ziemlich irrsinnigen Aufwand im EB-Tables betreiben, um das individuell auseinander zu halten und Paketstürme zu verhindern.)

Aber natürlich, für den Fall, dass man das BR-client mit einer StockFW-Bridge verlängern möchte: Dann geht’s.

Dann ist mir nicht klar, was auf dieem Kabelnetz für eine Bridge anliegen soll.
Man muss nämlich schon eine sinnvolle lokale IP4 Quelladresse im Futro wählen.
Entweder halt aus der ff-IPv4-range, oder aus einem anderen RFC1918er, nur halt auf dem passenden Interface hinter dem der Stocklink zu erreichen ist. (Ja, man kann auch mehrerere IPs aliasen. Oder virtuelle Interfaces anlegen und die dann auf die gleiche Bridge kleben, oder noch zusätzilche Bridges anlegen. Kann man beliebig komplex machen…)

hi

sinnvollerweise schickt man auf dem Kabel vom FF Router zum RF Router Batman getagged als VLAN und untagged das Clientnetz. Ubiquiti Hardware (keine Ahnung obs TP-Link auch kann, Mikrotik kanns auf jeden Fall ebenfalls) kann dann wunderbar das VLAN das Batman transportiert per WLAN weiterleiten (Bridge) und das Clientnetz nur als Zugang verwenden (WLAN aus der Client-Bridge raus nehmen, tut man das nicht ist die Gefahr einer Loop vorhanden!):

https://wiki.freifunk-franken.de/w/Batman_Funkbrücke

Anleitung ist allerdings nicht für Gluon sondern für die Freifunk Franken Firmware, würde aber wetten das geht mit Gluon auch nur vllt. minimal anders (VLAN taggen und so).

Hab ich hier selbst im Einsatz und jeder der am ICVPN hängt, kann sich per http://10.50.32.80 das WebUI angucken nur kommt er ohne Passwort nicht rein :wink:

mfg

Christian

Hallo,

wir verwenden dafür feste IPS aus dem IPv4 Range, über das auch die Gateways erreichbar sind. Als Alternative wäre Irgendwas mit VLANS sicher machbar :wink:

Ich finde, ihr denkt zu kompliziert. Einfach eine statische IP auf Ubiquity und dann wie von @fuzzle erklärt, über den Gluon-Router hoppen. Ich verwende einfach diesen Befehl:

ssh root@<ipv6-Gluon> -L 8080:<IPv4-Ubiquity>:443

(Ubiquity macht ausschließlich https, also ggfs. das auch explizit im Browser eintippen: https://localhost:8080)

Und dann die IP auf das Meshinterface:

gluon$ ip a a 172.16.1.2/24 dev ethX 

Dabei kann man eine IP auch auf das Meshinterface packen. Sie sollte nur nicht mit der FF-Domäne kolidieren.

1 Like