Wie binary erst starten wenn DSL-Verbindung vorhanden ?

NanoBot

Mitglied
Mitglied seit
27 Jun 2005
Beiträge
412
Punkte für Reaktionen
19
Punkte
18
Hi Leute,

ich möchte erreichen, daß ein bestimmtes Binary in der Fritzbox, welches per Script gestartet wird, erst gestartet wird, wenn die DSL Verbindung vorhanden ist.

Im Moment wird der Start einfach per "sleep" verzögert, was nach einem Neustart der Box ja den gewünschten Effekt ergibt. Aber hierdurch wird der Start ja immer verzögert, auch wenn die DSL Verbindung bereits besteht. Ich brauche also etwas in der Art:

Ist eine DSL-Verbindung vorhanden / gesynct ? Wenn ja, dann starte das binary, wenn nein, dann warte xx Sekunden und teste nochmal neu.

( Wie ) geht sowas ?

C.U. NanoBot
 
du könntest aller x sekunden einen Server anpingen.
Wenn der Ping erfolgreich war dann führe dein Script aus. Wenn nicht sleep x Sekunden Ping erneut.
 
Schleife, die wartet, bis Inetverbindung vorhanden ist oder 10 Fehl-Versuche voll sind:
Code:
max=10
i=0
while [ $i -lt $max ]; do
        if ping -c 1 www.heise.de >/dev/null; then
                break
        fi
        let i=$i+1
        sleep 15
done
und zusätzlich oder alternativ nur if-Abfrage (nach Schleife):
Code:
if ping -c 1 www.heise.de >/dev/null; then
       hier_das_binary_starten
fi
 
Hi,

das mit dem Ping ist ja schonmal nen guter Ansatz, erstmal danke für die Vorschläge.

Bleibt die Frage ob das nicht einfacher geht, denn z.B. auf dem Webinterface ist ja diese "grüne LED" die anzeigt, ob eine DSL-Verbindung besteht. Die muß diese Info ja auch irgendwoher haben. Ich dachte daß es vielleicht eine Variable oder eine lock-Datei gibt, an der man das Bestehen der Verbindung auch erkennen kann.

C.U. NanoBot
 
Wie wäre es denn hiermit?
Code:
/ $ cat /proc/avalanche/avsar_modem_training
SHOWTIME
0
Code:
/ $ /sbin/showdsldstat
running (voip=0)
speed 1184000/160000
PPPoE Forward: disabled
0: connected    vcc 1/32/PPPoE/32/dsl stay online 1
0: ip 89.13.50.211/62.52.52.25 mtu 1492 dns 62.53.236.5/193.189.244.205
/ $
MfG Oliver
 
Hi Olistudent,

an sowas dachte ich, danke für die Tips. Wobei die zweite Version noch nicht in Frage kommt. Das binary was ich starten will ist nämlich nicht Open Source und noch nicht für Kernel 2.6 verfügbar, so daß die Variante mit showdslstat noch nicht machbar ist.

C.U. NanoBot
 
Hi Leute,

für Firmwares mit Kernel 2.4 habe ich jetzt diese Lösung gewählt:

#!/bin/sh

while (! grep -q SHOWTIME /proc/avalanche/avsar_modem_training ) do
sleep 5
done

echo Wir sind online

Diese Lösung prüft zwar nur ob ein DSL Sync besteht, und nicht ob man auch per PPPoE eingeloggt ist, aber es erfüllt den Zweck. Vielleicht kann das ja nochmal jemand anderes brauchen.

C.U. NanoBot
 
Schaut auch mal dort rein, da beschreibe ich, wie man das bei jedem Reconnect automatisch machen kann, falls sowas gewünscht ist.
 

Neueste Beiträge

Statistik des Forums

Themen
244,872
Beiträge
2,219,894
Mitglieder
371,593
Neuestes Mitglied
Häuslebauer_BW
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.