Package DynIP -
Publizieren einer HTML Seite mit der aktuellen IP

Ich habe aus Carl Kossacks "HOWTO-dyn IP" ein opt-Paket gebaut. Das Funktionsprinzip ist identisch zu der ursprünglichen HowTo geblieben. Ich habe lediglich ein wenig aufgeräumt und ein paar zusätzliche Parameter definiert. Es gibt jetzt eine Konfiguartionsdatei, in der die entsprechenden Parameter gesetzt werden und eine ip-up930.dynip Datei, die nach dem Aufbau der Verbindung aufgerufen wird.

Der Inhalt der Variablen __IP__ wird in der Vorlagendatei DYN_TEMP (/opt/etc/dynip.in) durch die jeweils aktuelle Routeradresse ersetzt. Die so entstandenen Datei wird in /tmp/dynip.tmp zwischengelagert. Anschliessend wird diese Datei per ftp an einen ftp Server hochgeladen. Der Name der Zieldatei wird aus DYNIP_HTML gelesen. Zum Schluss werden die temp. Dateien gelöscht. Thats it.

Die folgenden Variablen werden in der Vorlage ersetzt:

__DATE__ Das aktuelle Datum, bzw. die Ausgabe von: date DYNIP_DATE
__IP__ Die aktuelle IP Adress des WAN Interfaces.
__PROG__ Programmkennung und aktuelle Version: DynIP v1.0.4
__TIME__ Die aktuelle Zeit, bzw. die Ausgabe von: date DYNIP_TIME

Gültige Werte für DYNIP_DATE bzw. DYNIP_TIME bitte der man-page von date entnehmen.

Zum debuggen kann die letzte Zeile mit "rm -f" auskommentiert werden. Die tmp/dynip.$$$_n werden dann nicht gelöscht und können überprüft werden.

Vorraussetzungen

Benötigt das Paket TOOLS mit OPT_FTP='yes'.

Konfiguration

ParameterDefaultBemerkung
OPT_DYNIP='yes' muss den Wert 'yes' haben, damit das Paket überhaupt installiert wird.
DYNIP_DEBUG='no' diverse Debug Funktionen aktivieren; u.a. bleiben die temporärer Dateien erhalten.
DYNIP_DATE='%a %d %b %Y' date Formatierungsstring, der zum Füllen von __DATE__ verwendet wird
(Default: Mon 16 Sep 2002)
DYNIP_TIME='%H:%M:%S %Z' date Formatierungsstring, der zum Füllen von __TIME__ verwendet wird.
(Default: 12:48:15 CEST)
DYNIP_N='1' Anzahl der Konfigurationen.
DYNIP_SRV_n='ftp.provider.de' FQDN des ftp-Severs auf den man die aus der Vorlage erstellte Datei kopieren möchte.
DYNIP_USR_n='ftp-username' Benutzername für den oben genannten ftp-Server
DYNIP_PWD_n='ftp-password' Passwort für den ftp-Account
DYNIP_TEMP_n='/opt/etc/dynip_n.in' Vorlagendatei, in der die Variablen __name__ ersetzt werden.
DYNIP_HTML_n='dynip.html'

Name der Zieldatei auf dem ftp-Server. Möchte man die Zieldatei in einem Unterverzeichnis auf dem ftp-Server ablegen, kann man den Verzeichnisnamen im Dateinamen mit angeben; z.B.:

DYNIP_HTML = 'unterverzeichnis/dynip.html'

Das Verzeichnis muss allerdings vor der ersten Übertragung erstellt werden.

Achtung

Zusätzlich zur Anpassung der Konfigurationsdatei ./config/dynip.txt muss auch die Datei ./opt/dynip.txt überprüft werden. Hier werden die Dateien aufgelistet, die mit auf den Router kopiert werden sollen. Bitte sicherstellen, dass alle mit DYNIP_TEMP_n konfigurierten Vorlagen aufgeführt werden.

Tipp

T-Online Anwender (Copied-with-Pride: Arnim Staschke: "on-offline-Status Mini-HOWTO")

Wenn man zu T-Online FTP macht, ist man ohne Login und Passwort, gleich drin. Trotzdem gibt es ein Passwort sowie einen Login, der für alle T-Online-User gleich lautet:
Login: ftp
Passwort: . (ein Punkt)
Der Upload der Seite funktioniert nur passiv. Dies sollte aber kein Problem mehr sein, da in diesem Paket ftp nur passiv-Übertragungen vornimmt (Parameter: -p).

Files

/tmp/dynip.tmp_n

Der Inhalt von den mit DYNIP_TEMP_n benannten Dateien, nur dass die Platzhalter (__IP__, __DATE__, __TIME__, etc.) durch ihre aktuellen Werte ersetzt wurden.

Historie

v1.0.4

v1.0.3

v1.0.2

v1.0.1

Viel Spass
Michael Eichhardt