Dann antworte ich mir mal selber, da das Orginalscript nicht mehr verfügbar ist.
Also nochmal zusammenfassend, was nachfolgende PHP-Script macht und was es nicht macht:
Das auf dem eigenen Webspace laufende Script (also nicht auf einem am Router angeschlossenen Rechner) übernimmt die als Parameter übergebene IP-Adresse und speichert sie in einer Datei ab. Wird das Script ohne parameter aufgerufen, wird die gespeicherte Information angezeigt. Damit ist auf dem öffentlich verfügbaren Webserver eine Information über die aktuelle IP des Routers zu Hause hinterlegt (für z.B. VNC-Verbindung oder ähnlichem).
Einstellungen in der Fritzbox unter "Internet->Dynamic DNS":
Dynamic DNS-Anbieter: Benutzerdefiniert
Update-URL: meinedomain.de/IPinfo.php?myip=<ipaddr>
"meinedomain.de" ist hier natürlich durch die eigene Domain zu ersetzen. Alle anderen Angaben können leer bleiben.
In der Logdatei erscheint typischerweise folgende Meldung:
"Dynamic DNS-Fehler: Die Dynamic DNS-Aktualisierung war erfolgreich, anschließend trat jedoch ein Fehler bei der DNS-Auflösung auf."
Diese Fehlermeldung kann ignoriert werden, da natürlich keinerlei DNS Zuweisung erfolgt ist.
Ein "Erfragen" der aktuellen IP-Adresse kann folgendermassen gemacht werden:
http://meinedomain.de/IPinfo.php
Eventuell ist bei der Installation noch ein Anpassen der Verzeichnisrechte notwendig, z.B. "777".
Hier also das PHP-script:
Code:
<?php
## Ermitteln der IP-Adresse und abspeichern in ipinfo.txt
## Die IP-Adresse wird als parameter übergeben:
## Beispiel: .....IPinfo.php?myip=192.168.1.1
$datei = "IPinfo.txt"; //Dateiname als Speicherort für die IP-Adresse
# Verhindern, dass Seite aus Cache geladen wird
header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Datum in der Vergangenheit
if (isset($_GET['myip'])) //wurde parameter ?myip=... übergeben?
{
$ipadress = $_GET['myip']; //IP-Adresse aus parameter übernehmen
if ($fp = fopen($datei, "w")) //Information abspeichern
{
fwrite($fp,strftime('Stand: %d.%m.%Y, %H:%M Uhr',time())."\n");
fwrite($fp,"IP-Adresse: ".$ipadress);
fclose($fp);
};
print "good ".$ipadress;
}
else
{ //kein Parameter übergeben, also umleiten und Information anzeigen, wenn Datei existiert
if (file_exists($datei))
header("Location: http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF'])."/".$datei);
}
?>
Alternativ kann es auch hier heruntergeladen werden:
http://www.loncarek.de/downloads/IPinfo.zip
Ich hoffe, das hiflt allen weiter, die auch sowas suchen...