Verbindungsabbrüche OpenVPN Plugin
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
-
-
root@vuduo2:/usr/script# route |head -n 1
Kernel IP routing table
root@vuduo2:/usr/script# ./tunnel.sh
2 Default VPNS detected. Removing 1st
head: invalid option -- '1'
BusyBox v1.19.4 (2014-06-13 22:59:17 CEST) multi-call binary.Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von mrcknbbn ()
-
-
-
Hmja, ist schwierig, weil ich dein Setup bei mir irgendwie emulieren muss. Noch ein Versuch:
Shell-Script
- #!/bin/sh
- TUN0=tun0
- TUN1=tun1
- DEFAULTGW=fritz.box
- # get tunnel gateway
- gettungw() {
- route |grep $1 |grep -v default |grep "UH" |while read TARGET GW MASK FLAG METRIC REF USE DEV; do
- echo "$TARGET"
- done
- }
- # reduce to one defaultroute
- myinit() {
- if [ `route |grep default |grep -v $DEFAULTGW |wc -l` -gt 1 ]; then
- route |grep default |head -n 1 |while read TARGET GW MASK FLAG METRIC REF USE DEV; do
- echo "removeing multiple defaultroutes (dev $DEV)"
- route del default gw $GW netmask $MASK dev $DEV
- done
- myinit
- fi
- }
- myinit
- # get tunnel gateways
- TUNGW0=`gettungw $TUN0`
- TUNGW1=`gettungw $TUN1`
- echo "tungw0: $TUNGW0"
- echo "tungw1: $TUNGW1"
- # switch routes
- route |grep default |grep tun |head -n 1 |while read TARGET GW MASK FLAG METRIC REF USE DEV; do
- case $DEV in
- $TUN0)
- echo "$TUN0 is active. switching to $TUN1"
- route del default gw $TUNGW0 netmask $MASK dev $TUN0
- route add default gw $TUNGW1 netmask $MASK dev $TUN1
- ;;
- $TUN1)
- echo "$TUN1 is active. switching to $TUN0"
- route del default gw $TUNGW1 netmask $MASK dev $TUN1
- route add default gw $TUNGW0 netmask $MASK dev $TUN0
- ;;
- esac
- done
- echo "active defaultroute: `route |grep default`"
-
Yes :-))) Es funktioniert - Klasse ! Bei jedem Start des Scripts wird von tun0 nach tun1 sowie umgekehrt gewechselt - Und das mit dynamischen IP Support inklusive :-)))
Ganz Herzlichen Dank - jetzt muss ich nur noch die Script Ausführung von der Konsole irgendwie auf die Vu Box bekommen ;rolleyes: -
-
Echt Genial
Cool, habe es jetzt mit Multiquickbutton auf green_long editiert und es läuft -
Gibt's eine Möglichkeit nach der Ausführung des Scriptes über MultiQuickButton ein Echo zu erhalten ?
-
Keine Ahung, ob der MQB dafür eine Möglichkeit bietet. Müsstest du im MQB Support Thread in Erfahrung bringen.
Alternativ könnte man eine Nachricht über das WebIF message.cgi absetzen:
Shell-Script
- #!/bin/sh
- TUN0=tun0
- TUN1=tun1
- DEFAULTGW=fritz.box
- # get tunnel gateway
- gettungw() {
- route |grep $1 |grep -v default |grep "UH" |while read TARGET GW MASK FLAG METRIC REF USE DEV; do
- echo "$TARGET"
- done
- }
- # reduce to one defaultroute
- myinit() {
- if [ `route |grep default |grep -v $DEFAULTGW |wc -l` -gt 1 ]; then
- route |grep default |head -n 1 |while read TARGET GW MASK FLAG METRIC REF USE DEV; do
- echo "removeing multiple defaultroutes (dev $DEV)"
- route del default gw $GW netmask $MASK dev $DEV
- done
- myinit
- fi
- }
- myinit
- # get tunnel gateways
- TUNGW0=`gettungw $TUN0`
- TUNGW1=`gettungw $TUN1`
- echo "tungw0: $TUNGW0"
- echo "tungw1: $TUNGW1"
- # switch routes
- route |grep default |grep tun |head -n 1 |while read TARGET GW MASK FLAG METRIC REF USE DEV; do
- case $DEV in
- $TUN0)
- echo "$TUN0 is active. switching to $TUN1"
- wget -O - "http://127.0.0.1/web/message?text="Now+active:+$TUN1"&type=1&timeout=2" 2>/dev/null 1>/dev/null
- route del default gw $TUNGW0 netmask $MASK dev $TUN0
- route add default gw $TUNGW1 netmask $MASK dev $TUN1
- ;;
- $TUN1)
- echo "$TUN1 is active. switching to $TUN0"
- wget -O - "http://127.0.0.1/web/message?text="Now+active:+$TUN0"&type=1&timeout=2" 2>/dev/null 1>/dev/null
- route del default gw $TUNGW1 netmask $MASK dev $TUN1
- route add default gw $TUNGW0 netmask $MASK dev $TUN0
- ;;
- esac
- done
- echo "active defaultroute: `route |grep default`"
Achtung ungetestet!!! Ich habe gerade kein VU+ in Reichweite!
Was diese zwei neuen wget-Zeilen im Detail tun, kannst du hier nachlesen und ggf. Abändern:
Message anzeige -
Der Script funktioniert mit Echo über die Vu+ einwandfrei, wenn es über die Konsole oder über das Dreamexplorer Plugin manuell gestartet wird - beim Start über Multi Quick Button kommt allerdings nur die "Loading" Anzeige und es ist notwendig, dass das GUI neugestartet wird - nach GUI Neustart ist die tun Verbindung allerdings auch gewechselt !?
Gibt es außer MQB noch ein Plugin oder ähnliches im dem man einen Script auf Knopfdruck am Receiver ausführen kann ?Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von mrcknbbn ()
-
Hm... dazu fällt mir jetzt kein sinnvoller Grund ein ?-(
-
Gibt es eine gute Alternative zu MQB bezüglich der Scriptausführung über ein Plugin ?
-
Wie hast du das Skript denn im MQB eingefügt? Habe gesehen, dass es da mehrere Möglichkeiten gibt.
-
Ich habe es als ausführbares Script über die Text lang definiert !
-
Schon klar, aber wie hast du die das Skript zugewiesen? Irgendwo habe ich gelesen, dass man ein Skript nur zuweisen kann, indem man die MQB Konfiguration per Hand editiert...
-
Scripte lassen sich direkt über das GUI vom MQB einbinden. Ist kein Problem..
Denke das Script hängt sich auf beim Ausführen von der Box direkt, weil es ein Loginproblem mit dem Webinterface gibt.
So hängt sich "wget" auf..
Ändere mal die beiden
http://127.0.0.1/web/message?.......
auf
http://WEBIFUSER:WEBIFPASSWORT@127.0.0.1/web/message?......
Statt "2>/dev/null 1>/dev/null" am Ende kann übrigens auch einfach ">/dev/null 2>&1" verwendet werden.Regel Nr. 1: Du sollst vor jedem Update ein Backup machen...
Regel Nr. 2: Wenn du denkst, du hast alles bezgl. V14/OScam gelesen, dann liegst du falsch..
Dieser Beitrag wurde bereits 1337 mal editiert, zuletzt von »Spider-Man« (31.02.2113, 24:62)Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von BuZZy2312 ()
-
mrcknbbn hat kein Login, sonst würde der manuelle Aufruf schon nicht funktionieren.
Ich vermute eher, dass es ein Problem mit den Sonderzeichen und/oder den (in Verbindung mit MQB enstehenden) verschachtelten Gänsefüßchen:
Ändere mal die wget Zeilen:
und