Forums

Makc
Makc
Offline
Resolved
0 votes
Hello,

My IP address changed and my dns name did not get updated.

Im running ddclient 3.8.1

What can i do to fix this?

When I run:


[root@system ~]# ddclient -force
WARNING: unable to determine IP address
WARNING: unable to determine IP address
[root@system ~]#


My config:

# Example ${program}.conf file entries:
## single host update
protocol=freedns, \
login=myusername, \
password=mypassword \
myhost.name.com



Debug enabled:
[root@system ~]# ddclient -daemon=0 -debug -verbose -noquiet
=== 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{foreground} : <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} : 2160000
opt{min-error-interval} : 300
opt{min-interval} : 30
opt{options} : <undefined>
opt{password} : <undefined>
opt{pid} : <undefined>
opt{postscript} : <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{quiet} : 0
globals{verbose} : 1
=== config ====
config{maksimred.sewa.com}{atime} : 0
config{maksimred.sewa.com}{cacheable} : ARRAY(0x9d3ac38)
config{maksimred.sewa.com}{cmd} : <undefined>
config{maksimred.sewa.com}{cmd-skip} :
config{maksimred.sewa.com}{fw} :
config{maksimred.sewa.com}{fw-login} : <undefined>
config{maksimred.sewa.com}{fw-password} :
config{maksimred.sewa.com}{fw-skip} :
config{maksimred.sewa.com}{host} : MYHOSTNAME
config{maksimred.sewa.com}{if} : ppp0
config{maksimred.sewa.com}{if-skip} :
config{maksimred.sewa.com}{ip} : <undefined>
config{maksimred.sewa.com}{login} : MYUSERNAME
config{maksimred.sewa.com}{max-interval} : 2160000
config{maksimred.sewa.com}{min-error-interval} : 300
config{maksimred.sewa.com}{min-interval} : 300
config{maksimred.sewa.com}{mtime} : 0
config{maksimred.sewa.com}{password} : MYPASSWORD
config{maksimred.sewa.com}{protocol} : freedns
config{maksimred.sewa.com}{server} : freedns.afraid.org
config{maksimred.sewa.com}{status} :
config{maksimred.sewa.com}{use} : ip
config{maksimred.sewa.com}{warned-min-error-interval} : 0
config{maksimred.sewa.com}{warned-min-interval} : 0
config{maksimred.sewa.com}{web} : dyndns
config{maksimred.sewa.com}{web-skip} :
config{maksimred.sewa.com}{wtime} : 30
config{with}{atime} : 0
config{with}{backupmx} : 0
config{with}{cacheable} : ARRAY(0x9d3ab78)
config{with}{cmd} : <undefined>
config{with}{cmd-skip} :
config{with}{custom} : 0
config{with}{fw} :
config{with}{fw-login} : <undefined>
config{with}{fw-password} :
config{with}{fw-skip} :
config{with}{host} : with
config{with}{if} : ppp0
config{with}{if-skip} :
config{with}{ip} : <undefined>
config{with}{login} : the
config{with}{max-interval} : 2160000
config{with}{min-error-interval} : 300
config{with}{min-interval} : 30
config{with}{mtime} : 0
config{with}{mx} :
config{with}{password} : service
config{with}{protocol} : dyndns2
config{with}{script} : /nic/update
config{with}{server} : members.dyndns.org
config{with}{static} : 0
config{with}{status} :
config{with}{use} : ip
config{with}{warned-min-error-interval} : 0
config{with}{warned-min-interval} : 0
config{with}{web} : dyndns
config{with}{web-skip} :
config{with}{wildcard} : 0
config{with}{wtime} : 30
=== cache ====
cache{MYHOSTNAME}{atime} : 0
cache{MYHOSTNAME}{host} : MYHOSTNAME
cache{MYHOSTNAME}{mtime} : 0
cache{MYHOSTNAME}{status} :
cache{MYHOSTNAME}{warned-min-error-interval} : 0
cache{MYHOSTNAME}{warned-min-interval} : 0
cache{MYHOSTNAME}{wtime} : 30
cache{with}{atime} : 0
cache{with}{backupmx} : 0
cache{with}{custom} : 0
cache{with}{host} : with
cache{with}{mtime} : 0
cache{with}{mx} :
cache{with}{script} : /nic/update
cache{with}{static} : 0
cache{with}{status} :
cache{with}{warned-min-error-interval} : 0
cache{with}{warned-min-interval} : 0
cache{with}{wildcard} : 0
cache{with}{wtime} : 30
DEBUG: get_ip: using ip, ip reports <undefined>
WARNING: unable to determine IP address
DEBUG: get_ip: using ip, ip reports <undefined>
WARNING: unable to determine IP address
[root@system ~]#
Saturday, April 07 2012, 02:11 AM
Share this post:
Responses (9)
  • Accepted Answer

    yaye
    yaye
    Offline
    Saturday, April 07 2012, 03:56 PM - #Permalink
    Resolved
    0 votes
    Makc wrote:
    Thanks all for help,



    You're welcome. I used ddclient on one of my desktops a few years ago. It worked well. I'm now using a Linksys router with TomatoVPN and it has an option to update my IP with the DNS servers.
    The reply is currently minimized Show
  • Accepted Answer

    Saturday, April 07 2012, 07:49 AM - #Permalink
    Resolved
    0 votes
    A few weeks ago the "use=web, web=whatever" started failing for me as the web address became invalid and I had to change it to get it working again. It may have been one of the two URL's the Tony and makc have been using. Anyway, after a bit of reading, as I have a public IP address on my WAN I realised I could change the line to "use=if if=eth0" and this works fine.
    @makc, iirc you have a ppp connection so I think you can use "use=if if=ppp0" or whichever interface it is. Also if you have a ppp connection you do not have to run ddclient as a daemon. There is a script which triggers when the ppp connection come up and you can run ddclient directly from there. If I get time I'll hunt down the file.

    [edit]
    My URL which failed was myip.dnsomatic.com. Presumably following makc's post this is now working again

    The file you need to edit if you don't want to run ddclient as a daemon but just force an update when your ppp IP changes is /etc/ppp/ip-up.local.
    [/edit]
    The reply is currently minimized Show
  • Accepted Answer

    Saturday, April 07 2012, 05:33 AM - #Permalink
    Resolved
    -1 votes
    Good to see you found a solution...

    Incidentally, I upgraded to ddclient-3.8.1-9.el5 on one machine and found that it worked perfectly well with my old conf file. A few minor changes in wording for the debug output - but otherwise essentially the same.
    The reply is currently minimized Show
  • Accepted Answer

    Makc
    Makc
    Offline
    Saturday, April 07 2012, 05:21 AM - #Permalink
    Resolved
    2 votes
    Thanks all for help,

    All props go to Tony.

    Below is my config:

    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=web, web=myip.dnsomatic.com

    ## Configuration variables applicable to the 'freedns' protocol are:
    # protocol=freedns ##
    # server=fqdn.of.service ## defaults to freedns.afraid.org
    # login=service-login ## login name and password registered
    with the service
    # password=service-password ##
    # fully.qualified.host ## the host registered with the service.
    #
    # Example ${program}.conf file entries:
    ## single host update
    protocol=freedns,
    login=USERNAME,
    password=PASSWORD
    YOUR.host.name

    The reply is currently minimized Show
  • Accepted Answer

    yaye
    yaye
    Offline
    Saturday, April 07 2012, 04:16 AM - #Permalink
    Resolved
    0 votes
    Here's a link to samples of a ddclient.conf file: http://dyn.com/support/clients/linux/ddclient/
    The reply is currently minimized Show
  • Accepted Answer

    Makc
    Makc
    Offline
    Saturday, April 07 2012, 03:50 AM - #Permalink
    Resolved
    0 votes
    Tony, I apologize.

    My head is spinning towards the end of the day setting up a few of clear os boxes, I literally see lines of code running across my eye balls.

    Thanks Tony,

    I will check it out right now on my test box, and report back.
    The reply is currently minimized Show
  • Accepted Answer

    Saturday, April 07 2012, 03:41 AM - #Permalink
    Resolved
    0 votes
    My Name is Tony and I live the opposite end of the world to Tim...

    Research the web and you will find much information - a simple search provided this extract instantly - will leave you do find out more - it's there if you are willing to look... and apply to your system eg port address might differ from examples on the web...

    The config file called ddclient.conf

    If you have decided to use ddclient then take a look at the following config file.

    daemon=3600 will check to see if your ip has changed once every hour or 3600 seconds.

    syslog=yes logs all messages to syslog

    mail=root and mail-failure=root will mail all changes and errors to root.

    proxy=proxy.server.com:8080 If you use a proxy server like Squid to get out of you network then uncomment the proxy line and set it to the IP and port of the proxy server.
    The reply is currently minimized Show
  • Accepted Answer

    Makc
    Makc
    Offline
    Saturday, April 07 2012, 03:26 AM - #Permalink
    Resolved
    0 votes
    Thanks Tim,

    How can i change the check ip to for example whatismyipaddress.com, or some other website, because I have web proxxy enabled and its transparent, when I go to checkip.dyndns.com, I get my internal IP address, behind the NAT.
    The reply is currently minimized Show
  • Accepted Answer

    Saturday, April 07 2012, 03:05 AM - #Permalink
    Resolved
    0 votes
    This does not look good... suspect it cannot read your conf file or it is corrupted or ?

    config{maksimred.sewa.com}{host} : MYHOSTNAME
    config{maksimred.sewa.com}{if} : ppp0
    config{maksimred.sewa.com}{if-skip} :
    config{maksimred.sewa.com}{ip} : <undefined>
    config{maksimred.sewa.com}{login} : MYUSERNAME
    config{maksimred.sewa.com}{max-interval} : 2160000
    config{maksimred.sewa.com}{min-error-interval} : 300
    config{maksimred.sewa.com}{min-interval} : 300
    config{maksimred.sewa.com}{mtime} : 0
    config{maksimred.sewa.com}{password} : MYPASSWORD
    config{maksimred.sewa.com}{protocol} : freedns
    config{maksimred.sewa.com}{server} : freedns.afraid.org

    The options for login and password are undefined in your output - here is the relevant section from mine - as you can see the details found from my conf file - (I'm using dyndns) - password obscured :-) and a slightly older version of ddclient

    config{address}{host} : address
    config{address}{ip} : <undefined>
    config{address}{login} : sraellis
    config{address}{max-interval} : 2160000
    config{address}{min-error-interval} : 300
    config{address}{min-interval} : 30
    config{address}{mtime} : 0
    config{address}{mx} :
    config{address}{password} : XXXXXXXXX
    config{address}{protocol} : dyndns2
    config{address}{server} : members.dyndns.org


    Also of interest mine has...

    globals{web} : checkip.dyndns.org/
    globals{web-skip} : IP Address

    ddclient uses checkip.dyndns.org, or failing that the command "ip address" to get your IP
    The reply is currently minimized Show
Your Reply