Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

ddclient no update

Alles rund um das Internet, Internet-Anwendungen (E-Mail, Surfen, Cloud usw.) und das Einrichten von Netzwerken einschl. VPN unter Linux

Moderator: Moderatoren

Antworten
Benutzeravatar
linuxbaby
Newbie
Newbie
Beiträge: 47
Registriert: 13. Feb 2004, 13:03
Wohnort: /bin/bash

ddclient no update

Beitrag von linuxbaby »

Hallo
ich habe mir den ddclient von der suse -cd installiert
und soweit zum laufen gebracht das er 1 update ausgeführt hat und
das war's :(
kurz zur info ich sitze hinter einem smc7004br
hier mal meine
ddclient.conf

Code: Alles auswählen

daemon=300                              # check every 300 seconds
syslog=yes                              # log update msgs to syslog
mail=root                               # mail all msgs to root
mail-failure=root                       # mail failed update msgs to root
pid=/var/run/ddclient.pid               # record PID in file.
use=smc-barricade,           fw=192.168.1.100:80        # via SMC's Barricade FW
use=web                                 # via web
login=mein username                                # default login
password=XXXXX                                 # default password
#mx=mx.for.your.host                            # default MX
#backupmx=yes|no                                # host is primary MX?
#wildcard=yes|no                                # add wildcard CNAME?

server=members.dyndns.org,              \
protocol=dyndns2                        \
tibet.servftp.net
die müßte ja korrekt sein sonst hätte er ja nicht einmal das update durchgeführt. weiterhin sollte der ddclient im runlevel editor stehen
tut er aber nicht bei mir....ich möchte halt das er nach der 24h trennung
die ip automatisch updatet.
please help
mfg
linuxbaby


[/code]
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Start-Script ddclient

Beitrag von basman »

Hi

das Paket wurde von SuSE nicht allzu sorgfältig zubereitet (SuSE 9.0). Mit

Code: Alles auswählen

rpm -ql ddclient
sieht man, dass es noch kein SuSE-Startskript gibt. Also auch keinen Eintrag im Runlevel-Editor. /usr/share/doc/packages/ddclient/sample-etc_rc.d_init.d_ddclient
ist zwar eine Vorlage für ein Startskript, aber für SuSE muss man sie gemäss /etc/rc.d/skeleton anpassen. Es scheint jedoch auch vorgesehen zu sein, den ddclient bei der Vergabe einer neuen IP gezielt aufzurufen, z.B. mit Hilfe von /etc/ppp/ip-up.local.

Soweit erst mal die Hinweise als Einstiegshilfe. Ich selber verwende das Paket noch nicht, wurde aber neugierig.

Gruss basman
Benutzeravatar
linuxbaby
Newbie
Newbie
Beiträge: 47
Registriert: 13. Feb 2004, 13:03
Wohnort: /bin/bash

Beitrag von linuxbaby »

hat sich erledigt ich hatte mich verschrieben :oops:
aber auch wenn der service nicht im runlevel-editor steht
funktioniert er tadellos, er bringt bei jedem reconnect sofort die
neue ip....
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

Hallo,


ich hab auch den ddclient drauf,
wie mach ich das er auch läuft ? ich hab grade mal geteste auch nach 10 minuten ist die IP net Aktualisiert worden,
Du hast was von nem script geschrieben, ich bin was Suse angeht absolut neuling und hab kein Plan was ich damit soll....

Ich will über web checken ob neue IP wenn ja dann update und gut is das ist alles.

Wie start ich den client jetzt mit dem system ?

Kann mir das jemand bitte verständlich erklären was ich eintippen muss und wo ?

Grüße Thomas
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Lesen lesen...

Beitrag von basman »

Versuche es mal wie hier beschrieben.
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Re: Lesen lesen...

Beitrag von 12earn »

basman hat geschrieben:Versuche es mal wie hier beschrieben.
Schön hab ich auch gelesen,

Yast kennt den ddclient nicht... wie bekomm ich jast dazu das er ihr kennt ?

Ich bin leider wie gesagt kein linux profi....
Wenn ich nach jedem start mich einlogge und ddclient eintipp geht´s.

dann läuft er bis zum nächsten reboot :roll:

Hoffe du hast noch ne anleitung ..

GRüße Thomas
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Beitrag von basman »

Es ist wohl so gedacht beim ddclient (ich selber habe ihn nicht laufen :( ), dass er bei jeder "Einwahl" aufgerufen wird. Das passiert üblicherweise mit Hilfe eines Skripts unter /etc/ppp/ip-up.d. Nach der SuSE-Installation (9.0) des ddclient ist dieser Start-Mechanismus jedoch nicht vorbereitet.

Versuche, ob ein Aufruf von

Code: Alles auswählen

sh /usr/share/doc/packages/ddclient/sample-etc_ppp_ip-up.local
den ddclient erfolgreich aufruft. Wenn ja, kopierst Du das Script nach /etc/ppp/ip-up.d/ddclient

Code: Alles auswählen

cp /usr/share/doc/packages/ddclient/sample-etc_ppp_ip-up.local /etc/ppp/ip-up.d/ddclient
und verpasst ihm Ausführungsrechte per

Code: Alles auswählen

chmod a+x /etc/ppp/ip-up.d/ddclient
Jetzt wird das Ding bei jeder Internet-Einwahl aufgerufen.

Wenn Du jedoch weder Analog-Modem, ISDN noch DSL über ISDN oder über Analog-Leitung hast, wird der pppd nicht für Deinen Internetzugang verwendet und dann musst Du eines der anderen Skripte unter /usr/share/doc/packages/ddclient/ verwenden. Diese kopiert man aber nicht nach /etc/ppp/ip-up.d, sondern stellt andere lustige Dinge damit an...

P.S.: die obigen Befehle muss man als root ausführen. Wie man das wird? Entweder als root einloggen oder als normaler User eine Shell öffnen (im KDE Alt+F2 "konsole" Enter) und eingeben.
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

Hm ok ich geb zu ist mein Fehler,

ich hab weder modem noch sonstwas zur einwahl, der Linux rechner hängt wie alle anderen am Router und der Wählt alleine.

Das mit der IP geht auch und zwar über den ddclient, der prüft (wenn er auch dann läuft) alle 5 minuten die IP ( einstellbar ) ich habs per web, das heisst er fragt nach welche IP er hat und schaut ob die anderst ist.

Wenn ja macht er das update.

Nur wird er eben nicht beim booten gestartet.

Das Problem ist nur das ich ihn net beim Booten laden kann mit yast.
Also hinzufügen lässt er sich auch net so einfach, hab schon versucht aber ich will net in den dateien rumfroschen die ich net kenne.

Wenn du mal nen blick da hinwerfen könntest? hat auch mit booten zu tun...
http://www.linux-club.de/viewtopic.php?t=7654

Grüße thomas
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
marcor
Member
Member
Beiträge: 198
Registriert: 21. Feb 2004, 11:05
Wohnort: Duisburg
Kontaktdaten:

Beitrag von marcor »

linuxbaby hat geschrieben:hat sich erledigt ich hatte mich verschrieben :oops:
aber auch wenn der service nicht im runlevel-editor steht
funktioniert er tadellos, er bringt bei jedem reconnect sofort die
neue ip....
Dann bau den doch in den Runlevel ein. Als /etc/init.d/ddclient

Code: Alles auswählen

#!/bin/sh
# Copyright (c) 1996, 2000 S.u.S.E. GmbH Fuerth, Germany.  All rights reserved.
#
#         Mike Fabian <mfabian@suse.de>, 2001
#
# /etc/init.d/ddclient
#
### BEGIN INIT INFO
# Provides:       ddclient
# Required-Start: $network $named $remote_fs
# Required-Stop:
# Default-Start:  3 5
# Default-Stop:
# Description:    DDClient
### END INIT INFO

. /etc/rc.status

DDCLIENT_BIN=/usr/sbin/ddclient
test -x $DDCLIENT_BIN || exit 5

# First reset status of this service
rc_reset

if [ ! -f /etc/ddclient.conf ] ; then
    echo "can't find /etc/ddclient.conf"
    # program is not configured
    exit 6
fi

case "$1" in
    start)
        echo -n "Starting ddclient daemon"
        startproc $DDCLIENT_BIN -daemon 300
        rc_status -v
        echo
        ;;
    stop)
        echo -n "Shutting down ddclient daemon"
        killproc ddclient
        rc_status -v
        echo
        ;;
    try-restart)
        $0 status >/dev/null && $0 restart
        rc_status
        ;;
    restart)
        $0 stop
        $0 start
        rc_status
        ;;
    status)
        echo -n "Checking for ddclient daemon: "
        checkproc $DDCLIENT_BIN
        rc_status -v
        ;;
    *)
        echo "Usage: $0 {start|stop|try-restart|restart|status}"
        exit 1
        ;;
esac

rc_exit
dann kann man den auch in Yast aktivieren und es wird alle 3 Minuten die IP abgefragt und wenn Sie nicht stimmt korrigiert.
Klappt hier bei mir wunderprächtig;-)
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Beitrag von basman »

12earn hat geschrieben:ich hab weder modem noch sonstwas zur einwahl, der Linux rechner hängt wie alle anderen am Router und der Wählt alleine.

Das mit der IP geht auch und zwar über den ddclient, der prüft (wenn er auch dann läuft) alle 5 minuten die IP ( einstellbar ) ich habs per web, das heisst er fragt nach welche IP er hat und schaut ob die anderst ist.
Das sind die entscheidenden Hinweise.
12earn hat geschrieben:Das Problem ist nur das ich ihn net beim Booten laden kann mit yast.
Ich sehe zwei Möglichkeiten:
  1. Einfach: Du startest den ddclient als cron-job. Rufe unter dem User, unter dem ddclient laufen soll, crontab -e auf. Da Du noch Anfänger bist, empfehle ich dringend, vorher das Paket "mc" zu installieren und anstelle des vorigen Befehls

    Code: Alles auswählen

    EDITOR=mcedit crontab -e
    einzugeben. Dann fügst Du diese Zeilen ein, speicherst und beendest.
    Wenn ddclient als normaler User laufen soll, gibst Du ein:

    Code: Alles auswählen

    MAILTO=""
    */5 * * * *    /usr/sbin/ddclient -daemon=0 -syslog -quiet retry
    Wenn als root:

    Code: Alles auswählen

    MAILTO=""
    */5 * * * *   root  /usr/sbin/ddclient -daemon=0 -syslog -quiet retry
    So wird der ddclient alle 5 Minuten aufgerufen.
    In der /var/log/messages kannst Du nach Meldungen des ddclient Ausschau halten.
    Stelle im Runlevel-Editor von Yast sicher, dass der crond aktiviert ist.

    Mehr Infos: in der Shell "man 5 crontab" eingeben.
  2. Kompliziert: /usr/share/doc/packages/ddclient/sample-etc_rc.d_init.d_ddclient gemäss /etc/init.d/skeleton an SuSE-Bedürfnisse anpassen und unter /etc/init.d/ddclient ablegen. Dann im Yast-Runlevel Editor aktivieren. Ist eher was für Profis (Shell Kenntnisse erforderlich) und kostet mehr Zeit. Uups... marcor war schneller. Jetzt ist das Geheimnis gelüftet, wie so ein Start-Skript aussehen sollte.
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

Ok ich hab mich an die version mit yast gewagt,

1. hat der ddclient keinen Namen in Yast
2. wenn ich versuch ihn zu starten will er noch was starten, und er bringt dann:
/etc/init.d/ddclient start gab 126 (Fehler nicht Spezifiert) zurück

sh: line 3: /etc/init.d/ddclient: Keine berechtigung
Ich hab das als Root ausgeführt, die datei hab ich mit winSCP3 erstellt, mittels kopieren einer anderen datei und da den inhalt rein und Umbenennen.

Hoffe das ist so auch OK gewesen.

Muss ich die Pfade anpassen ? oder sind die Standard ??

Grüße Thomas
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Beitrag von basman »

Das Teil /etc/init.d/ddclient braucht Ausfuehrungsrechte!

Code: Alles auswählen

chmod a+x /etc/init.d/ddclient
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

Also ich weiss net, das hab ich 2 mal eingegeben und hatt nix getan,

über Winscp ahb ich dem mal 0777 verpasst und dann gings nen stück weiter...
/etc/init.d/ddclient start gab 127 (Fehler nicht Spezifiert) zurück

: Datei oder Verzeichnis icht gefunden
Und den namen hat er in yast auch noch nicht ..

Grüße Thomas
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Beitrag von basman »

Die Meldung scheint aus dem Startscript heraus zu kommen. Rufe doch bitte als root auf:

Code: Alles auswählen

bash -x /etc/init.d/ddclient start 2>&1 | tee /tmp/run.log
und poste die Datei /tmp/run.log (bzw. eine URL davon, falls sie so gross ist, dass das Forum nachher hässlich aussieht).

Kurze Erläuterung, was das bringt:
  • -x schaltet die Shell in eine Art Debug-Modus. Jeder im Skript ausgeführte Befehl wird ausgegeben.
  • 2>&1 leitet die Fehlerausgabe in die Standardausgabe um (stderr nach stdout). Das ist notwendig, damit die folgende Umleitung sowohl normale Meldungen als auch Fehlermeldungen zu fassen kriegt.
  • | tee /tmp/run.log leitet die Ausgabe durch tee, welches die Ausgabe dupliziert. Einerseits wird sie auf den Schirm geschrieben und zusätzlich in eine Datei.
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

ok hab es so abgetippt und jetzt geht garnix grad, ich hab nen leeren bildschirm auf dem kann ich tippen was ich will.

Auch auf Strg + Alt + Entf reagiert er nicht.

Ich hab das bash auch mit geschrieben hoffe das war ok, ne datei run.log hat er auch nicht erstellt.

Scheint als würd er am anfang hängen und hat nichts auszugeben.
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
basman
Member
Member
Beiträge: 217
Registriert: 4. Jan 2004, 01:08

Beitrag von basman »

Es war schon richtig, "bash" miteinzugeben.

Log Dich grafisch ein, starte dort eine Shell, werde per "su -" root und versuche es dann erneut mit obigem Befehl.

Man kann uebrigens Systemscripts auch per Hand aktivieren:

Code: Alles auswählen

chkconfig --list ddclient
chkconfig ddclient
chkconfig --add ddclient
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

basman hat geschrieben: Log Dich grafisch ein, starte dort eine Shell, werde per "su -" root und versuche es dann erneut mit obigem Befehl.
Hm und wie mach ich das wenn er mir die Grafik verweigert da anscheinend zuwenig Arbeitsspeicher oder was zur verfügung steht ?

Ich versteh das teil net er hat 128 MB arbeitsspeicher und 233 Mhz Cpu,
das sollte doch reichen, darauf läuft sogar windof2000...

Ich brauch alles für die komandozeile weil eben Grafik = 0 Ist


Grüße Thomas
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Benutzeravatar
12earn
Newbie
Newbie
Beiträge: 20
Registriert: 23. Mai 2004, 20:56

Beitrag von 12earn »

Ok ich habs jetzt echt bald satt, ich komm grad net mal mehr in webmin rein...

Weis zwar net warum aber mal die letzten schritte rückgängig machen...

Ich starte den beim booten lieber selber dann weiss ich dass er läuft.
Apache/2.0.48 (Linux/SuSE 9.0) PHP 4.3.3
Antworten