Unterabschnitte

2.1 Hinzufügen von neuen Providern

Das Hinzufügen von neuen Providern ist eigentlich sehr leicht, da die Update-Scripts komplett von den Provider-Daten getrennt sind. Für einen neuen Provider müssen folgende Dateien angepasst werden:

2.1.1 Datei opt/etc/dyndns/provider.NAME

Dies ist die Datei, in der definiert wird, wie ein Update bei diesem speziellen Provider funktioniert. Meistens besteht sie nur aus einer Liste von Variablen, da es aber ein ganz normales Shell-Script ist, können hier auch komplexere Operationen durchgeführt werden, das sollte aber selten nötig sein. In dieser Datei können folgende Variablen benutzt werden:

$ip
Die IP des Interfaces, das den dynamischen Hostnamen erhalten soll.
$host
Der komplette Hostname, wie ihn der Benutzer in seiner Konfiguration angegeben hat.
$subdom
Alle Komponenten des Hostnamen bis zum vorletzten Punkt (name.provider.dom)
$domain
Die letzten beiden Komponenten des Hostnamen (name.provider.dom)
$provider
Der symbolische Name des Providers, wie ihn der Benutzer in seiner Konfgurationsdatei angegeben hat.
$user
Der Benutzername für diesen Dienst.
$pass
Das dazugehörige Passwort.

Diese Variablen können zur klareren Abgrenzung gegenüber anderem Text mit geschweiften Klammern geschrieben werden, aus $ip wird z.B. ${ip}. Bei Verwendung von Anführungszeichen ist zu beachten, das innerhalb von einfachen Anführungszeichen die oben genannten Variablen nicht expandiert werden, bei doppelten Anführungszeichen schon. Als Faustregel kann man also sagen: Immer einfache Anführungszeichen benutzen, aber sobald man Variablen benutzt, doppelte Anführungszeichen benutzen.

Die folgenden Variablen müssen in dieser Datei definiert werden, damit das Paket weiß, wie ein Update bei dem entsprechenden Provider funktioniert:

provider_update_type
Dies bestimmt die Art der Anfrage, die an den Server des Providers geschickt wird. Momentan werden unterstützt:
http
Es wird automatisiert eine bestimmte Webseite des Providers abgerufen und so der DynDNS-Eintrag aktualisiert.
netcat
Es wird einfach ein bestimmter Text an den Server des Providers geschickt, der das Update auslöst.
gnudip
Ein relativ einfaches aber sicheres Updateverfahren, welches über zwei HTTP-Anfragen ausgeführt wird.
provider_host
Der Hostname des Providers, der bei einem Update kontaktiert wird.
provider_port
Der Port auf dem Host des Providers, der angesprochen werden soll. Der Standard-Port für HTTP ist 80.

Je nach Update-Typ müssen weitere Variablen angegeben werden:

2.1.1.1 HTTP

provider_url
Hier wird die relative URL (ohne Hostname, aber mit / am Anfang zum Script des Providers abgelegt. Für Beispiele bitte die Dateien der anderen Provider ansehen.
provider_auth
(optional) Benötigt der Provider eine Anmeldung per Basic Authentication, so sind hier die entsprechenden Daten anzugeben. Das Format ist "USER:PASSWORD".

2.1.1.2 Netcat

provider_data
Dies ist der Text, der an den Server des Providers geschickt wird. Siehe z.B. provider.DYNEISFAIR.

2.1.1.3 GNUDip

provider_script
Der Pfad zum GNUDip-Script auf dem Server, dies ist meist etwas wie z.B. '/cgi-bin/gdipupdt.cgi'.

2.1.2 Datei opt/dyndns.txt

Hier müssen eine oder mehr Zeilen für den neuen Provider eingefügt werden. Meistens reicht eine Zeile in der Art:

	dyndns_%_provider   NAME   etc/dyndns/provider.NAME

Wird für den Provider HTTP und Basic Authentication benutzt, so braucht man noch das base64-Tool:

	dyndns_%_provider   NAME   files/usr/local/bin/base64

Bei GNUDip wird dagegen MD5 benutzt, also brauchen wir das MD5-Tool:

	dyndns_%_provider   NAME   files/usr/bin/md5

Sollten noch andere Tools benötigt werden, bitte mir vorher eine Mail schicken, damit ich prüfen kann, ob das für das OPT_DYNDNS geeignet ist.

2.1.3 Datei check/dyndns.exp

In dieser Datei muss an der langen Zeile, die mit DYNPROVIDER = beginnt, der Providername mit einem senkrechten Strich von den anderen abgetrennt, hinten angefügt werden.

2.1.4 Datei config/dyndns.txt

In der Config-Datei bitte den vollen Namen des Providers einfügen. Die Liste ist für erfahrene Benutzer, die nicht dauernd in der Dokumentation nachsehen wollen, wie ihr Provider heißt. Bitte Sortierreihenfolge beachten!

2.1.5 Datei doc/deutsch/tex/dyndns/dyndns_main.tex

In der Dokumentation einen neuen Abschnitt eintragen. Auch hier sind die Provider alphabetisch nach dem Kurznamen, den der Benutzer in der Config-Datei eingibt, sortiert. Das
prov-Makro ist am Anfang der Datei dokumentiert, genug Beispiele sollten vorhanden sein.

2.1.6 Datei files.txt

Als letztes noch neu hinzugefügte Dateien in die files.txt eintragen. Alle Textdateien bekommen ein ,,d'' in der ersten Spalte, alle Binär-Dateien ein ,,b''.

2.1.7 An den Autor senden

Hat man einen neuen Provider hinzugefügt und möchte in nun auch im nächsten Release von OPT_DYNDNS sehen, so bitte ich, folgendermaßen vorzugehen:

So habe ich am wenigsten Arbeit und der Provider ist schneller im nächsten Release dabei.


Das Fli4l-Team
10. August 2004