1.Frage:
Also, die Methode bei 1und1 mit dem Voranstellen des "D"'s ist wirklich lauffähig,
aber auch nur, wenn zwischen den Reconnects eine Zeitspanne von ungefähr 1:05 Minuten liegt. Mein Anliegen ist folgendes :
Ich würde das Fritz.Box Skript gerne noch um eine Funktion erweitern, die es mir erlaubt, einen Reconnect frühestens nach 1:05 Minuten seit Verbindungsherstellung greift.
Leider kenne ich mich nicht besonders mit der Funktionsweise von UPnp aus, und weiß auch nicht genau, wie ich dieses Vorhaben in die .bat eingefügt bekomme.
Meine bisherige Version sieht folgendermassen aus :
Code:
:again
sleep 50
For /F %%i in ('printip') Do @Set IP=%%i
type data.box | nc -w 1 192.168.179.1 49000 >nul
for /F %%j in ('printip') Do @set IPNEW=%%j
if %IP% == %IPNEW% GOTO AGAIN
Ich habe vor dem Reconnect eine 50 Sekunden Pause eingelegt, falls ich mal am Stück 1MB Dateien lade, ist das recht nützlich.
Aber diese Pause wird natürlich auch bei 100MB Dateien vollzogen, und da nervt sie schon
.
Über "Intel Device Spy" habe ich herausfinden können, dass man via Upnp die Verbindungszeit herausfinden kann, allerdings weiß ich nicht, wie ich diese Zeitangabe via Upnp als Variable in meiner .bat einsetzen kann. Vielleicht hat da ja jemand anderes ne Idee und kann mir da helfen :
Folgendes steht in meiner bisherigen "data.box" :
Code:
POST /upnp/control/WANIPConn1 HTTP/1.1
HOST: blah:49000
SOAPACTION: "urn:schemas-upnp-org:service:WANIPConnection:1#ForceTermination"
CONTENT-TYPE: text/xml ; charset="utf-8"
Content-Length: 293
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<u:ForceTermination xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1" />
</s:Body>
</s:Envelope>
und das passende Codestück zu der "Uptime-Abfrage" aus Device Spy sieht folgendermassen aus:
Die Argumente :
Code:
Action name GetStatusInfo
Return argument <none>
Argument 1 (string) NewConnectionStatus
Argument 1 ASV ConnectionStatus
Argument 2 (string) NewLastConnectionError
Argument 2 ASV LastConnectionError
Argument 3 (ui4) NewUptime
Argument 3 ASV Uptime
State Variables : Uptime
Code:
Data type ui4
Default value 0
Evented False
Last known value <unknown>
Variable name Uptime
Packet Capture:
Code:
POST /upnp/control/WANIPConn1 HTTP/1.1
HOST: 192.168.179.1:49000
SOAPACTION: "urn:schemas-upnp-org:service:WANIPConnection:1#GetStatusInfo"
CONTENT-TYPE: text/xml ; charset="utf-8"
Content-Length: 290
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<u:GetStatusInfo xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1" />
</s:Body>
</s:Envelope>HTTP/1.1 200 OK
DATE: Thu, 12 Apr 2007 14:05:51 GMT
SERVER: rac$F UPnP/1.0 AVM FRITZ!Box Fon WLAN 7170 29.04.29
CONNECTION: keep-alive
CONTENT-LENGTH: 408
CONTENT-TYPE: text/xml; charset="utf-8"
EXT:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><s:Body>
<u:GetStatusInfoResponse xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1">
<NewConnectionStatus>Connected</NewConnectionStatus>
<NewLastConnectionError>ERROR_NONE</NewLastConnectionError>
<NewUptime>12023</NewUptime>
</u:GetStatusInfoResponse>
</s:Body> </s:Envelope>
Es muss doch irgendwie möglich sein, via nc.exe (netcat) die Variable "Uptime" auszulesen und in einer .bat Datei dazu zu benutzen, um eine .bat der Art :
Code:
:again
Lese Variable Uptime via Upnp aus
IF (Uptime<=65(Sekunden))
THEN
sleep 1
GOTO again
ELSE
:ok
For /F %%i in ('printip') DO @Set IP=%%i
type data.box | nc -w 1 192.168.179.1 49000 >nul
for /F %%j in ('printip') DO @set IPNEW=%%j
if %IP% == %IPNEW% GOTO ok
ENDIF
Ist das irgendwie hinzubekommen ?
2.Frage:
Wenn ich im Username bereits D1und1/
[email protected] eingegeben habe, bewirkt dann ein
Code:
username_prefix_after_auth_failure = "D"
nicht, dass bei einem PPPOE-Fehler als zweiter Versuch der angegebene Username D1und1/
[email protected] um das Prefix "D" erweitert wird
und er sich dann mit
DD1und1/
[email protected] versucht einzuwählen ?
3.Frage:
Wieso existiert "username_prefix_after_auth_failure = " eigentlich 2 mal ?!
4.Frage:
Interessant wäre es ja in meinem Fall, wenn er zwischen den Prefixen "T" und "D" wechseln könnte, bei jedem reconnect, wäre das möglich ?