dyndns not being updated by ddclient
Hello everyone,
I have just installed and configured ddclient on my Ubuntu server to work with my dyndns. I decided to run a few tests to see if it was installed and working properly. What I did was log into dyndns.com with my account and directly modified my IP address to a bogus (but valid) address. I saved my changes. When I pinged myhost.dyndns.com it was pinging the bogus IP as expected. GOOD I then ran ddclient -daemon=0 -noquiet -verbose thinking that it would update the entry to my real IP address. Well it doesn't. For some reason dyndns doesn't return the bogus address when ddclient is executed. ddclient.conf is as follows ---------------------------- pid=/var/run/ddclient.pid protocol=dyndns2 server=members.dyndns.org login=mylogin password='mypassword' myhost.dyndns.com use=web, web=checkip.dyndns.com, web-skip='IP Address' daemon=600 syslog=yes ssl=yes result of sudo ddclient -daemon=0 -noquiet -verbose --------------------------------------------------- === opt ==== opt{cache} : <undefined> opt{cmd} : <undefined> opt{cmd-skip} : <undefined> opt{daemon} : 0 opt{debug} : 1 opt{exec} : <undefined> opt{facility} : <undefined> opt{file} : <undefined> opt{force} : <undefined> opt{fw} : <undefined> opt{fw-login} : <undefined> opt{fw-password} : <undefined> opt{fw-skip} : <undefined> opt{geturl} : <undefined> opt{help} : <undefined> opt{host} : <undefined> opt{if} : <undefined> opt{if-skip} : <undefined> opt{ip} : <undefined> opt{login} : <undefined> opt{mail} : <undefined> opt{mail-failure} : <undefined> opt{max-interval} : 2592000 opt{min-error-interval} : 300 opt{min-interval} : 30 opt{options} : <undefined> opt{password} : <undefined> opt{pid} : <undefined> opt{priority} : <undefined> opt{protocol} : <undefined> opt{proxy} : <undefined> opt{query} : <undefined> opt{quiet} : 0 opt{retry} : <undefined> opt{server} : <undefined> opt{ssl} : <undefined> opt{syslog} : <undefined> opt{test} : <undefined> opt{timeout} : <undefined> opt{use} : <undefined> opt{verbose} : 1 opt{web} : <undefined> opt{web-skip} : <undefined> === globals ==== globals{daemon} : 60 globals{debug} : 1 globals{login} : mylogin globals{password} : mypassword globals{pid} : /var/run/ddclient.pid globals{protocol} : dyndns2 globals{quiet} : 0 globals{server} : members.dyndns.org globals{ssl} : 1 globals{syslog} : 1 globals{use} : web globals{verbose} : 1 globals{web} : checkip.dyndns.com/ globals{web-skip} : IP Address === config ==== config{myhost.dyndns.com}{atime} : 1253932332 config{myhost.dyndns.com}{backupmx} : 0 config{myhost.dyndns.com}{cacheable} : ARRAY(0x2078ba8) config{myhost.dyndns.com}{custom} : 0 config{myhost.dyndns.com}{host} : myhost.dyndns.com config{myhost.dyndns.com}{ip} : a.b.c.d config{myhost.dyndns.com}{login} : mylogin config{myhost.dyndns.com}{max-interval} : 2592000 config{myhost.dyndns.com}{min-error-interval} : 300 config{myhost.dyndns.com}{min-interval} : 30 config{myhost.dyndns.com}{mtime} : 1253932332 config{myhost.dyndns.com}{mx} : config{myhost.dyndns.com}{password} : mypassword config{myhost.dyndns.com}{protocol} : dyndns2 config{myhost.dyndns.com}{server} : members.dyndns.org config{myhost.dyndns.com}{static} : 0 config{myhost.dyndns.com}{status} : good config{myhost.dyndns.com}{warned-min-error-interval} : 0 config{myhost.dyndns.com}{warned-min-interval} : 0 config{myhost.dyndns.com}{wildcard} : 0 config{myhost.dyndns.com}{wtime} : 30 === cache ==== cache{myhost.dyndns.com}{atime} : 1253932332 cache{myhost.dyndns.com}{backupmx} : 0 cache{myhost.dyndns.com}{custom} : 0 cache{myhost.dyndns.com}{host} : myhost.dyndns.com cache{myhost.dyndns.com}{ip} : a.b.c.d cache{myhost.dyndns.com}{mtime} : 1253932332 cache{myhost.dyndns.com}{mx} : cache{myhost.dyndns.com}{static} : 0 cache{myhost.dyndns.com}{status} : good cache{myhost.dyndns.com}{warned-min-error-interval} : 0 cache{myhost.dyndns.com}{warned-min-interval} : 0 cache{myhost.dyndns.com}{wildcard} : 0 cache{myhost.dyndns.com}{wtime} : 30 DEBUG: proxy = DEBUG: url = checkip.dyndns.com/ DEBUG: server = checkip.dyndns.com CONNECT: checkip.dyndns.com CONNECTED: using HTTP SENDING: GET / HTTP/1.0 SENDING: Host: checkip.dyndns.com SENDING: User-Agent: ddclient/3.7.3 SENDING: Connection: close SENDING: RECEIVE: HTTP/1.1 200 OK RECEIVE: Content-Type: text/html RECEIVE: Server: DynDNS-CheckIP/1.0 RECEIVE: Connection: close RECEIVE: Cache-Control: no-cache RECEIVE: Pragma: no-cache RECEIVE: Content-Length: 105 RECEIVE: RECEIVE: <html><head><title>Current IP Check</title></head><body>Current IP Address: a.b.c.d</body></html> DEBUG: get_ip: using web, checkip.dyndns.com/ reports a.b.c.d SUCCESS: myhost.dyndns.com: skipped: IP address was already set to a.b.c.d. If I run sudo ddclient -daemon=0 -noquiet -verbose -force and then I ping myhost.dyndns.com it pings my real IP address. result of sudo ddclient -daemon=0 -noquiet -verbose -force ------------------------------------------------------------------ === opt ==== opt{cache} : <undefined> opt{cmd} : <undefined> opt{cmd-skip} : <undefined> opt{daemon} : 0 opt{debug} : 1 opt{exec} : <undefined> opt{facility} : <undefined> opt{file} : <undefined> opt{force} : 1 opt{fw} : <undefined> opt{fw-login} : <undefined> opt{fw-password} : <undefined> opt{fw-skip} : <undefined> opt{geturl} : <undefined> opt{help} : <undefined> opt{host} : <undefined> opt{if} : <undefined> opt{if-skip} : <undefined> opt{ip} : <undefined> opt{login} : <undefined> opt{mail} : <undefined> opt{mail-failure} : <undefined> opt{max-interval} : 2592000 opt{min-error-interval} : 300 opt{min-interval} : 30 opt{options} : <undefined> opt{password} : <undefined> opt{pid} : <undefined> opt{priority} : <undefined> opt{protocol} : <undefined> opt{proxy} : <undefined> opt{query} : <undefined> opt{quiet} : 0 opt{retry} : <undefined> opt{server} : <undefined> opt{ssl} : <undefined> opt{syslog} : <undefined> opt{test} : <undefined> opt{timeout} : <undefined> opt{use} : <undefined> opt{verbose} : 1 opt{web} : <undefined> opt{web-skip} : <undefined> === globals ==== globals{daemon} : 60 globals{debug} : 1 globals{force} : 1 globals{login} : mylogin globals{password} : mypassword globals{pid} : /var/run/ddclient.pid globals{protocol} : dyndns2 globals{quiet} : 0 globals{server} : members.dyndns.org globals{ssl} : 1 globals{syslog} : 1 globals{use} : web globals{verbose} : 1 globals{web} : checkip.dyndns.com/ globals{web-skip} : IP Address === config ==== config{myhost.dyndns.com}{atime} : 1253932332 config{myhost.dyndns.com}{backupmx} : 0 config{myhost.dyndns.com}{cacheable} : ARRAY(0xff7cd0) config{myhost.dyndns.com}{custom} : 0 config{myhost.dyndns.com}{host} : myhost.dyndns.com config{myhost.dyndns.com}{ip} : a.b.c.d config{myhost.dyndns.com}{login} : mylogin config{myhost.dyndns.com}{max-interval} : 2592000 config{myhost.dyndns.com}{min-error-interval} : 300 config{myhost.dyndns.com}{min-interval} : 30 config{myhost.dyndns.com}{mtime} : 1253932332 config{myhost.dyndns.com}{mx} : config{myhost.dyndns.com}{password} : mypassword config{myhost.dyndns.com}{protocol} : dyndns2 config{myhost.dyndns.com}{server} : members.dyndns.org config{myhost.dyndns.com}{static} : 0 config{myhost.dyndns.com}{status} : good config{myhost.dyndns.com}{warned-min-error-interval} : 0 config{myhost.dyndns.com}{warned-min-interval} : 0 config{myhost.dyndns.com}{wildcard} : 0 config{myhost.dyndns.com}{wtime} : 30 === cache ==== cache{myhost.dyndns.com}{atime} : 1253932332 cache{myhost.dyndns.com}{backupmx} : 0 cache{myhost.dyndns.com}{custom} : 0 cache{myhost.dyndns.com}{host} : myhost.dyndns.com cache{myhost.dyndns.com}{ip} : a.b.c.d cache{myhost.dyndns.com}{mtime} : 1253932332 cache{myhost.dyndns.com}{mx} : cache{myhost.dyndns.com}{static} : 0 cache{myhost.dyndns.com}{status} : good cache{myhost.dyndns.com}{warned-min-error-interval} : 0 cache{myhost.dyndns.com}{warned-min-interval} : 0 cache{myhost.dyndns.com}{wildcard} : 0 cache{myhost.dyndns.com}{wtime} : 30 DEBUG: proxy = DEBUG: url = checkip.dyndns.com/ DEBUG: server = checkip.dyndns.com CONNECT: checkip.dyndns.com CONNECTED: using HTTP SENDING: GET / HTTP/1.0 SENDING: Host: checkip.dyndns.com SENDING: User-Agent: ddclient/3.7.3 SENDING: Connection: close SENDING: RECEIVE: HTTP/1.1 200 OK RECEIVE: Content-Type: text/html RECEIVE: Server: DynDNS-CheckIP/1.0 RECEIVE: Connection: close RECEIVE: Cache-Control: no-cache RECEIVE: Pragma: no-cache RECEIVE: Content-Length: 105 RECEIVE: RECEIVE: <html><head><title>Current IP Check</title></head><body>Current IP Address: a.b.c.d</body></html> DEBUG: get_ip: using web, checkip.dyndns.com/ reports a.b.c.d INFO: forcing update of myhost.dyndns.com. DEBUG: DEBUG: nic_dyndns2_update ------------------- INFO: setting IP address to a.b.c.d for myhost.dyndns.com UPDATE: updating myhost.dyndns.com DEBUG: proxy = DEBUG: url = http: //members.dyndns.org/nic/update?system=dyndns&hostname=myhost.dyndns.com&myip=a.b.c.d DEBUG: server = members.dyndns.org CONNECT: members.dyndns.org CONNECTED: using SSL SENDING: GET /nic/update?system=dyndns&hostname=myhost.dyndns.com&myip=a.b.c.d HTTP/1.0 SENDING: Host: members.dyndns.org SENDING: Authorization: Basic <random stuff> SENDING: User-Agent: ddclient/3.7.3 SENDING: Connection: close SENDING: RECEIVE: HTTP/1.1 200 OK RECEIVE: Date: Sat, 26 Sep 2009 03:07:33 GMT RECEIVE: Server: Apache RECEIVE: Content-Type: text/plain RECEIVE: Connection: close RECEIVE: RECEIVE: good a.b.c.d SUCCESS: updating myhost.dyndns.com: good: IP address set to a.b.c.d Anyone know what I'm doing wrong? |
I think I might have answered my own question. Because ddclient caches my real IP in a file and uses that to compare with the result of checkip.dyndns.com it doesn't see that there is a difference. I will assume that the process works when my IP acctually does change ... which it hasn't yet.
|
All times are GMT -5. The time now is 11:11 AM. |