Seite 5 von 5

Verfasst: 02.01.2005, 12:15
von CCS
Aber so wie du es schon recherchiert hast sollte es kein Problem sein dieses Router zu erfassen. Das kannst nur du selbst machen und sofort testen.
OK - ich habe mich mal drangewagt.

\"Anmeldung am Router\" habe ich mir so zusammengebastelt und scheint zu funktionieren:
<POST>html/login_gm.html?getpage=../html/home_gm.htm&errorpage=../html/index.html&login:command/username=%USERNAME%&login:command/password=%PASSWORD%&var:errormsg=Error&var:language=gm
Aber schon bei der \"Statusabfrage 1\" (Online / Offline) spielt der Router nicht mit - er zeigt an, daß er immer online ist.

Aufruf der Statusseite: \"cgi-bin/webcm?getpage=../html/status_gm/connstatus.htm&var:language=gm\"

Erkennung, ob offline: \"Verbindung 1</td><td>pppoe</td><td>N/A\"

HTML-Code vor IP-Adresse: \"Verbindung 1</td><td>pppoe</td><td>\"

HTML-Code nach IP-Adresse: \"</td>\"

Wie gesagt: RouterControl zeigt IMMER online an und findet im online Zustand keine IP-Adresse.

Debug Meldungen sind:
HTML-Form Auth ResultCode: 200 Port: 80
Status1: http://192.168.1.1/cgi-bin/webcm?getpag ... anguage=gm Port: 80
Status1 ResultCode: 200 Stream-Size: 5211 Contents:
GetStatus1
GetStatus1 Offline? Verbindung1</td><tdheight>pppoe</td><tdheight>N/A
GetStatus1 Online
Status1-Message 0
----------------------------------------------------------------------
GetStatus2
Status2-Message:
----------------------------------------------------------------------
GetStatus3
Status3-Message:
----------------------------------------------------------------------
GetStatus4
Status4-Message:
----------------------------------------------------------------------
Dabei fiel mir auf: Es wurden alle Leezeichen entfernt; z.B.: \"tdheight=32class=\" anstelle von \"td height=32 class=\"
Und das passiert schon nach der Eingabe in \"RCEdit.exe\".

Ich fand dann in \"RCEdit.exe\" noch die Registerkarte \"Testen mit statischen Seiten\". Ich habe dann das bisherige mit 2 gespeicherten HTML-Seiten (online/offline) getestet. Gleiches Ergebnis: Immer online und keine IP-Adresse.

Dann habe ich von den gespeicherten HTML-Seiten Kopien gemacht und in den Kopien die Leezeichen entfernt (nur an der relevanten Stelle \"Verbindung1</td><tdheight=32....\"). Und siehe da: Dann funktioniert die Anzeige - zumindest mit den gespeicherten, statischen Seiten.

Nun dachte ich, daß Problem liegt an \"RCEdit.exe\":
Wie bekomme ich nun die Leerzeichen in den Code von \"RCEdit.exe\" ?

Zufällig öffnete ich die vier gespeicherten HTML-Seiten noch mals mit einem anderen Text-Edittor (\"NoteTab Light\" anstelle des windowseigenen \"NotePad\") und siehe da: Bei den beiden original Dateien erhielt ich die Fehlermeldung: \"Datei konnte nicht geöffnet werden, da sie ein oder mehrere Nullbytes enthält - bitte binary Mode zum Öffnen verwenden\". Bei den mit \"NotePad\" geänderten Kopien trat diese Fehlermeldung nicht auf. Scheinbar wurden durch das speichern mit NotePad diese Nullbytes entfernt und dann scheint alles zu funktionieren.

Ich habe dann noch mals die original Dateien mit NotePad geöffnet und sie als Kopie (ohne weitere Änderungen) gespeichert. Und siehe da: Auch mit diesen Dateien funktionierte bei \"Testen mit statischen Seiten\" die Anzeige von online/offline einwandfrei und im online Zustand wurde die IP-Adresse angezeigt.

Ich las hier nun, daß du hier einem Anwender bei dem Problem mit \"FritzBox! Fon WLAN\" eine modifizierte Version von \"RouterControl\" zugesandt hast, die das Problem mit den Nullbytes umgeht. Kannst du mir bitte auch mal diese Version zumailen ?

Verfasst: 01.01.2005, 18:51
von mirko
Ich habe keine erfassten Daten da. Aber so wie du es schon recherchiert hast sollte es kein Problem sein dieses Router zu erfassen. Das kannst nur du selbst machen und sofort testen.

Verfasst: 01.01.2005, 15:27
von CCS
Gibt\'s schon eine Config-Datei für den D-Link DSL-G664T Router ?

Ich habe mich schon am Router Control Editor versucht - komme da aber nicht so recht weiter.

Router Login geschieht über ein Web-Interface. In der neuesten Firmware V1.00B02T02.DE.20040804 erhält man zuerst eine Frame-Seite, wo man \"Englisch\" / \"Deutsch\" auswählen kann. Per Javascript wird man dann bei \"Deutsch\" auf die Seite http://<IP>/html/login_gm.html weitergeleitet. Dort sieht der Code so aus:
<form>
<input>
<input>
<input>
<input>
<input>
<input>
</form>

<td>Einloggen Name</td>
<td><input>

<td>Passwort</td>
<td><input></td>
Die \"Verbindungsstatus\"-Daten erhält man über die Seite: http://<IP>/cgi-bin/webcm?getpage=../html/status_gm/connstatus.htm&var:language=gm

Dort sieht der Code in etwa so aus:
<td>Verbindung 1</td><td>pppoe</td><td>85.74.142.125&nbsp;&nbsp;&nbsp;</td><td>verbunden</td>
Was dann zu einer Ausgabe von \"Verbindung 1 pppoe 85.74.142.125 verbunden\" führt.

Im Router lassen sich mehrere \"Verbindung\" mit eigenen Zugangsdaten einrichten - deshalb sind mehrere Zeilen möglich (Verbindung 1, Verbindung 2, etc.)

Der manuelle Abbruch der \"Verbindung 1\" wird dann über Javascript abgewickelt:
onClick=onClickRunDisconnect(\"connection1\")

function onClickRunDisconnect(arg)
{
document.getElementById(\"uiPostPPPCon\").name = arg+\":settings/manual_conn\";
document.getElementById(\"uiPostPPPCon\").value = 0;
document.getElementById(\"uiPostPPPConForm\").submit();
}
Für den manuellen Verbindungsaufbau dann entsprechend:
onClick=onClickRunConnect(\"connection1\")

function onClickRunConnect(arg)
{
document.getElementById(\"uiPostPPPCon\").name = arg+\":settings/manual_conn\";
document.getElementById(\"uiPostPPPCon\").value = 1;
document.getElementById(\"uiPostPPPConForm\").submit();
}
Kann mir jemand mit diesen Daten schon weiterhelfen ?