fritzbox verbindung beenden und wieder herstellen

Kann man das Script so erweitern, dass Terminal danach automatisch geschlossen wird?
 
keine ahnung. gibts einen shellbefehl, der das fenster schließt und verschwinden läßt?

--max
 
ok, jetzt hats mit Firefox geklappt... mit Safari will er allerdings bei mir nicht... naja, Danke :cake:
 
Hallo!

Seit ich die aktuelle Firmware auf meiner Fritz!Box Fon Wlan (ohne Nummer) habe, funktioniert das Script nicht mehr.Folgende Ausgabe kommt in der Konsole:

<s:Envelope
xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"
s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Body>
<s:Fault>
<faultcode>s:Client</faultcode>
<faultstring>UPnPError</faultstring>
<detail>
<UPnPError xmlns="urn:schemas-upnp-org:control-1-0">
<errorCode>502</errorCode>
<errorDescription>XML error</errorDescription>
</UPnPError>
</detail>
</s:Fault>
</s:Body>
</s:Envelope>
logout

Kann mir bitte jemand helfen?
 
Mit FritzReconnect.app hier gehts.
 
Zuletzt bearbeitet von einem Moderator:
Zuletzt bearbeitet von einem Moderator:
Ich habs eben nochmal getestet, bei mir geht's... Vllt. hilft ein Zurücksetzen der Einstellungen.
 
Hm... jetzt funktionierts bei mir auch nicht mehr :eek:

kommt die gleiche Meldung wie bei dwearl...
 
Wahrscheinlich wurde die Struktur in der neuen Firmware geändert...
 
hi,
ein dank an mobilephoner es ist so eine ein klick lösung bei dem anderen musste man den terminal erstmal wieder beenden etc.
ist wirklich cool
achja bei mir funktionierts dabei muss ich sagen das ich die neue fw nicht drauf habe
 
Kein Problem. Bei mir läuft's auch noch mit der alten FW.
 
Komisch. Welche Fritz!Box nutzt ihr denn? Ich habe eine Fritz!Box Fon Wlan (noch ohne eine Nummer) mit der Firmware 08.04.33. Die alte Firmware bei dem das Script noch funktionierte war die 08.04.27. Nur leider lässt sich die Box nicht mit einer älteren Firmware zurückflashen.
 
habe die frizbox 7170 v2 also die aller neuesete
 
Mit welchen Fritz!Boxen soll das Programm denn überhaupt funktionieren?
 
Ich schätze mal mit so ziemlich allen oder ?

-- habe die 7141 --
 
@ILOVEMYIBOOK,
passt zwar nicht ganz hier hin, aber was ist bei der 2. Version neu dazugekommen?
 
danke, mobilephoner!

klappt bestens mit fritzbox 7050 (fw 14.04.26)

--max
 
Mit folgender Box geht es leider nicht:

FRITZ!Box Fon WLAN Firmware-Version 08.04.34

Er sagt zwar, dass die Box reconnected wurde, aber trennt die Internetverbindung einfach nicht.
 
Hallo leute wie krigtmann das wieder in griff " Box reconnected " hat eine ahnung ?? nach soft update der FRITZ!Box Fon WLAN 7140, Firmware-Version 30.04.33 geht es nicht mehr !! Bitte ein link !!!!
 
Mit diesem hier gehts.

mit curl funktioniert das bei mir leider nicht (7170, FW 29.04.37)

aber so gehts es:

- macports installieren (direktlink für tiger: MacPorts-1.5.0-10.4.dmg)

- terminal öffnen:
Code:
$ sudo port -d selfupdate
$ sudo port install links p5-libwww-perl

- im terminal gehts weiter:
Code:
$ cd /opt/local/bin
$ sudo nano whatsmyip
und folgenden text kopieren mit cmd+c und mit cmd+v einfügen:
Code:
#!/bin/bash
links -dump ip-adress.com | grep "My IP address:" | awk '{ print $4 }'
nano mit ctrl+x beenden (mit j bzw y bestätigen)

und das nächste script:
Code:
$ sudo nano fbreset
und auch diesen text komplett kopieren mit cmd+c und mit cmd+v einfügen:
(das ist ein leicht verändertes perl script, welches ich auf http://www.wehavemorefun.de/fritzbox gefunden habe...)
Code:
#!/usr/bin/env perl

use Net::FTP;
use Net::Ping;
use LWP 5.64;

my $browser = LWP::UserAgent->new;
$p = Net::Ping->new("tcp");

use POSIX;

($action)=@ARGV;

my $locale = POSIX::setlocale(&POSIX::LC_ALL, "deu");
my @tm = localtime(time());
$i = 0;
$c = 0;

if ($#ARGV != 0) {
    print "usage: ipreset \"password\"\n";
    exit;
}

# Hier ggf ein bisschen modifizieren



# Oder anstelle von @ARGV[0] einfach "Passwort" eingeben um nicht jedesmal das
# Passwort mitliefern zu müssen
$boxpasswort = @ARGV[0];

# Zeit die die Fritzbox benötigt um sich zu trennen/den Trennen-Befehl zu
# verarbeiten, einfach höhere Werte verwenden, sollte es zu Problemen kommen
$sleeptime = 5;

# Host zum überprüfen ob die Verbindung bereits wiederhergestellt wurde, kann
# auch google.com oder sonstwas sein, Hauptsache hohe Uptime
$host = "www.jabber.org";

# Zeit zwischen Pings
$maxtimetowait = 1;

# Maximale Anzahl an Pings
$maxpings = 1000;

# Falsch-Schlüsselwort, wird verwendet um das angegebene Passwort zu überprüfen,
# z.b ungültig, vergessen, falsch usw
$keyword = "ungültig";

# die URL zur Fritzbox, sollte so stimmen
my $urlcgi = 'http://fritz.box/cgi-bin/webcm';



# Hier nichts mehr ändern

print "> current ip is: "; system("whatsmyip");
print "> starting reconnect, please wait...\n";

my $response = $browser->post($urlcgi,
    [
        "getpage"                     => "../html/de/menus/menu2.html",
        "errorpage"                  => "../html/index.html",
        "var:lang"                     => "de",
        "var:pagename"                 => "home",
        "var:menu"                     => "home",
        "login:command/password"     => "$boxpasswort"
    ],
);

if (index($response->content, $keyword) != -1) {
    print "error: wrong password\n";
    exit;
}
 
my $response = $browser->post($urlcgi,
    [
        "connection0:pppoe:settings/idle" => "5",
        "connection0:pppoe:settings/mode" => "on_demand"
    ],
);

my $response = $browser->post($urlcgi,
    [
        "connection0:pppoe:settings/idle" => "0",
        "connection0:pppoe:settings/mode" => "lcp"
    ],
);

sleep($sleeptime);

while ($i < $maxpings) {
    ($ret, $duration, $ip) = $p->ping($host);
    
    if ($ret == 1) {
        print "> new ip is: "; system("whatsmyip");
        exit;
    } else {
        $timetowait = rand($maxtimetowait) + 1;
        sleep($timetowait);
        $i++;
    }
}

$p->close();
wieder nano mit ctrl+x beenden (mit j bzw y bestätigen)
und noch folgendes im terminal ausführen:
Code:
$ sudo chmod +x whatsmyip
$ sudo chmod +x fbreset

- zum verbindung neu herstellen muss man jetzt nur noch im terminal folgendes eingeben:

Code:
$ fbreset "123456"
(123456 gegen das fritzbox passwort austauschen ;) )

wenn die beiden ip adressen unterschiedlich sind, dann hat das verbindung neu herstellen geklappt ;)
 
Zurück
Oben Unten