linuxserver.io Posted June 10, 2019 Share Posted June 10, 2019 Application Name: ddclientApplication Site: https://github.com/ddclient/ddclientDocker Hub: https://hub.docker.com/r/linuxserver/ddclient/Github: https://github.com/linuxserver/docker-ddclient Please post any questions/issues relating to this docker you have in this thread. If you are not using Unraid (and you should be!) then please do not post here, rather use the linuxserver.io forum for support. 1 1 Quote Link to comment
ZooMass Posted June 11, 2019 Share Posted June 11, 2019 (edited) I keep getting this warning no matter how I set my ddclient.conf: Setting up watches. Watches established. /config/ddclient.conf MODIFY ddclient has been restarted Setting up watches. Watches established. WARNING: found neither ipv4 nor ipv6 address I'm using Namecheap. I've tried configuring the following ways by uncommenting the Namecheap section (I made no other changes to the default ddclient.conf): ## ## NameCheap (namecheap.com) ## protocol=namecheap server=dynamicdns.park-your-domain.com login=**********.*** password=********** @ ## ## NameCheap (namecheap.com) ## protocol=namecheap, \ server=dynamicdns.park-your-domain.com, \ login=**********.***, \ password=********** \ @ I made no changes to the default linuxserver/ddclient Docker template. I read this article for reference on how to configure ddclient for Namecheap: https://www.namecheap.com/support/knowledgebase/article.aspx/583/11/how-do-i-configure-ddclient Edited June 11, 2019 by ZooMass Add article reference Quote Link to comment
CHBMB Posted June 11, 2019 Share Posted June 11, 2019 @ZooMass use=web, web=dynamicdns.park-your-domain.com/getip protocol=namecheap server=dynamicdns.park-your-domain.com login=yourdomain.com password=your dynamic dns password @,www 1 2 Quote Link to comment
ZooMass Posted June 12, 2019 Share Posted June 12, 2019 (edited) 20 hours ago, CHBMB said: @ZooMass use=web, web=dynamicdns.park-your-domain.com/getip protocol=namecheap server=dynamicdns.park-your-domain.com login=yourdomain.com password=your dynamic dns password @,www Hey, that worked, thank so much! Silly of me not to try the line from the article itself. Edited June 12, 2019 by ZooMass Quote Link to comment
Caldorian Posted June 13, 2019 Share Posted June 13, 2019 (edited) Thank you for this. But do you have a configuration file that works with Cloudflare? I must have tried a couple dozen different configs, and I can't get it to work. I keep getting one of two errors: WARNING: file /var/cache/ddclient/ddclient.cache, line 3: Invalid Value for keyword 'ip' = '' WARNING: found neither ipv4 nor ipv6 address Here's the Cloudflare section of my current config: protocol=cloudflare, \ server=www.cloudflare.com, \ [email protected] \ password=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX \ zone=XXXXXX.com, \ YYYYYYYY.XXXXXX.com Edit: I'll add in that if I add a line to detect my IP from a web page (ie. use=web, web=dynamicdns.park-your-domain.com/getip), I get the following series of errors: WARNING: file /var/cache/ddclient/ddclient.cache, line 3: Invalid Value for keyword 'ip' = '' WARNING: skipping update of YYYYYYYY.XXXXXX.com from <nothing> to WWW.XXX.YYY.ZZZ. WARNING: last updated <never> but last attempt on Thu Jun 13 12:26:25 2019 failed. WARNING: Wait at least 5 minutes between update attempts. With the WWW.XXX.YYY.ZZZ being my actual IP address. That would imply that ddclient it actually getting my IP address. But for whatever reason, it's just not parsing it correctly to send it to Cloudflare. Edited June 13, 2019 by Caldorian More info Quote Link to comment
saarg Posted June 13, 2019 Share Posted June 13, 2019 You can either exec into the container amd delete the cache file or change something in the template and hit apply and it will delete the existing container and create a new without the old cache file. Quote Link to comment
Caldorian Posted June 13, 2019 Share Posted June 13, 2019 Thanks @saarg. While it didn't directly resolve my issue, it was enough to get me started. Been trying to get this to work for a while now, and been using a few different templates for it. First there was mace's, and then tried adding lsio's direct from docker hub. I'm guessing I was getting some package corruption between various elements. I had tried removing each of the dockers, including the option to remove the image, but I guess it was still leaving remnants. In particular, I noticed today after removing the image, if I used the "Add Container" option, I could still pick from all the old templates I had tried. So a quick Google search on how to get rid of those (CA --> Previous Apps --> "X"), and installed the docker fresh (yet again). Updated the config file, and success. Even have it working with 2 copies of the container going (2 domains, one still on Namecheap, the other with Cloudflare). For those curious, here's the final Cloudflare config I ended up with: use=web, web=dynamicdns.park-your-domain.com/getip protocol=cloudflare, \ zone=mydomain.com, \ ttl=1, \ [email protected], \ password=ThisIsWhereYourGlobalAPIKeyGoes \ subdomain1.mydomain.com,subdomain2.mydomain.com One question: I'm sure when I had mace's docker going against Namecheap, it would ping in the console log every 5 minutes, stating that the IP was updated. Has this version been updated such that it'll only post to the console if/when the IP changes and it sends a command out to update the DNS entry? If so, is there some change I can make so that it at least logs that the current IP was checked? Quote Link to comment
saarg Posted June 14, 2019 Share Posted June 14, 2019 3 hours ago, Caldorian said: Thanks @saarg. While it didn't directly resolve my issue, it was enough to get me started. Been trying to get this to work for a while now, and been using a few different templates for it. First there was mace's, and then tried adding lsio's direct from docker hub. I'm guessing I was getting some package corruption between various elements. I had tried removing each of the dockers, including the option to remove the image, but I guess it was still leaving remnants. In particular, I noticed today after removing the image, if I used the "Add Container" option, I could still pick from all the old templates I had tried. So a quick Google search on how to get rid of those (CA --> Previous Apps --> "X"), and installed the docker fresh (yet again). Updated the config file, and success. Even have it working with 2 copies of the container going (2 domains, one still on Namecheap, the other with Cloudflare). For those curious, here's the final Cloudflare config I ended up with: use=web, web=dynamicdns.park-your-domain.com/getip protocol=cloudflare, \ zone=mydomain.com, \ ttl=1, \ [email protected], \ password=ThisIsWhereYourGlobalAPIKeyGoes \ subdomain1.mydomain.com,subdomain2.mydomain.com One question: I'm sure when I had mace's docker going against Namecheap, it would ping in the console log every 5 minutes, stating that the IP was updated. Has this version been updated such that it'll only post to the console if/when the IP changes and it sends a command out to update the DNS entry? If so, is there some change I can make so that it at least logs that the current IP was checked? I don't remember what it logs anymore as I haven't used it for ages, but I assume it will log when checking the IP. Quote Link to comment
Caldorian Posted June 14, 2019 Share Posted June 14, 2019 14 minutes ago, saarg said: I don't remember what it logs anymore as I haven't used it for ages, but I assume it will log when checking the IP. I've had it running for the last 5 hours now, and I haven't new log entries since the last time the dockers were restarted. Quote Link to comment
saarg Posted June 14, 2019 Share Posted June 14, 2019 8 hours ago, Caldorian said: I've had it running for the last 5 hours now, and I haven't new log entries since the last time the dockers were restarted. Try changing the IP manually on namecheap to the wrong one and see if it gets updated after about 300 seconds. Quote Link to comment
Caldorian Posted June 14, 2019 Share Posted June 14, 2019 Changing the in Namecheap had no affect, no updates were issued. If I deleted the cache file in docker, and let it continue to run, then I'd see in the console (within 5 minutes) that the IP address was updated, and my DNS gets updated properly. Seems like it does check against the cache file, and if it matches, doesn't do anything. Which is kind of good, as I don't want to issue erroneous updates if there's nothing to change. But it would be nice if it would say that I did check and no changes were required. Seems like it's a known "feature" of ddclient, and various people have come up with all sorts of work arounds to deal with dynamic dns providers that require updates every X days: https://www.linuxquestions.org/questions/debian-26/ddclient-will-not-update-316726/#post1611217 Quote Link to comment
EDalcin Posted July 8, 2019 Share Posted July 8, 2019 Folks, I'm having difficulty to configure a very simple dyndns.org. There are too many options at the config. file. Could you show me where should I put my login/password and domain, please? Thanks in advance! Eduardo Quote Link to comment
rbm Posted September 9, 2019 Share Posted September 9, 2019 Can ddclient be used to update OpenDNS dynamic IPs, as a replacement for the programs recommended by OpenDNS to perform that task? See https://support.opendns.com/hc/en-us/articles/227987787 for an explanation of what I'm trying to accomplish. Quote Link to comment
saarg Posted September 9, 2019 Share Posted September 9, 2019 5 hours ago, rbm said: Can ddclient be used to update OpenDNS dynamic IPs, as a replacement for the programs recommended by OpenDNS to perform that task? See https://support.opendns.com/hc/en-us/articles/227987787 for an explanation of what I'm trying to accomplish. I don't know. Check the ddclient documentation. Quote Link to comment
itnate Posted December 3, 2019 Share Posted December 3, 2019 I am looking for support for DNSMadeEasy.com. It looks like it was added to the main github application in September (https://github.com/ddclient/ddclient/pull/60) however I am not seeing any support for it within the current package available on unraid. Is there any plan or time table to updated this package to included the new functionality? Thanks Quote Link to comment
saarg Posted December 3, 2019 Share Posted December 3, 2019 (edited) 3 hours ago, itnate said: I am looking for support for DNSMadeEasy.com. It looks like it was added to the main github application in September (https://github.com/ddclient/ddclient/pull/60) however I am not seeing any support for it within the current package available on unraid. Is there any plan or time table to updated this package to included the new functionality? Thanks When it's included in a new release it should be available. You have to ask ddclient when the will release a new version. We are releasing the original ddclient and not the fork on github. Should probably shift it to the fork as the original version is dead. Edited December 3, 2019 by saarg Quote Link to comment
itnate Posted December 11, 2019 Share Posted December 11, 2019 On 12/3/2019 at 3:14 PM, saarg said: When it's included in a new release it should be available. You have to ask ddclient when the will release a new version. We are releasing the original ddclient and not the fork on github. Should probably shift it to the fork as the original version is dead. Thanks for the reply, I will keep an eye out for an update as id love to use this with DNSMadeEasy. Quote Link to comment
Paintsu Posted January 20, 2020 Share Posted January 20, 2020 Hello! My ddclient docker is working and updates ip if it changes. My dynamic dns provider requires that i update my ip once in a week even if it has not changed to keep it active. I believe this command should update my ip. Running this results in error. I tried in unraid cli and in docker cli. Both failed. Here is the error: docker exec -t ddclient ddclient -force WARNING: file /etc/ddclient/ddclient.conf: Cannot open file '/etc/ddclient/ddclient.conf'. (No such file or directory) stat() on closed filehandle FD at /usr/bin/ddclient line 1117. Use of uninitialized value $mode in bitwise and (&) at /usr/bin/ddclient line 1118. readline() on closed filehandle FD at /usr/bin/ddclient line 1130. WARNING: file /etc/ddclient/ddclient.conf: Cannot open file '/etc/ddclient/ddclient.conf'. (No such file or directory) stat() on closed filehandle FD at /usr/bin/ddclient line 1117. Use of uninitialized value $mode in bitwise and (&) at /usr/bin/ddclient line 1118. readline() on closed filehandle FD at /usr/bin/ddclient line 1130. 1 Quote Link to comment
dapiedude Posted January 22, 2020 Share Posted January 22, 2020 (edited) For anyone on Google Domains using Google's Dynamic DNS and this DDclient, I've been able to this working using the following: daemon=600 syslog=yes pid=/var/run/ddclient/ddclient.pid ssl=yes protocol=dyndns2 use=web server=domains.google.com login=generated-login, password=generated-password my.domain.tld No need to have anything else uncommented. Should be simple enough Edited January 23, 2020 by dapiedude Quote Link to comment
saarg Posted January 22, 2020 Share Posted January 22, 2020 On 1/20/2020 at 4:43 PM, Paintsu said: Hello! My ddclient docker is working and updates ip if it changes. My dynamic dns provider requires that i update my ip once in a week even if it has not changed to keep it active. I believe this command should update my ip. Running this results in error. I tried in unraid cli and in docker cli. Both failed. Here is the error: docker exec -t ddclient ddclient -force WARNING: file /etc/ddclient/ddclient.conf: Cannot open file '/etc/ddclient/ddclient.conf'. (No such file or directory) stat() on closed filehandle FD at /usr/bin/ddclient line 1117. Use of uninitialized value $mode in bitwise and (&) at /usr/bin/ddclient line 1118. readline() on closed filehandle FD at /usr/bin/ddclient line 1130. WARNING: file /etc/ddclient/ddclient.conf: Cannot open file '/etc/ddclient/ddclient.conf'. (No such file or directory) stat() on closed filehandle FD at /usr/bin/ddclient line 1117. Use of uninitialized value $mode in bitwise and (&) at /usr/bin/ddclient line 1118. readline() on closed filehandle FD at /usr/bin/ddclient line 1130. You can't use the command manually like that. If your provider needs an update every week there should be an option in the configuration to do that. I haven't checked it, so you will need to read the documentation about it. Quote Link to comment
Paintsu Posted January 23, 2020 Share Posted January 23, 2020 (edited) 20 hours ago, saarg said: You can't use the command manually like that. If your provider needs an update every week there should be an option in the configuration to do that. I haven't checked it, so you will need to read the documentation about it. EDIT: Seems that many other people are struggling with same problem. Any workarounds would be much appreciated. It seems that ddclient does not support this functionality out of the box. I found a workaround for this issue. Ddclient stores information of last known ip in cache file, if this cache file is not present it does update. I created a script in userscripts to delete this file daily, and it updates my ip after daemon checks my ip next time. Command inside script is: docker exec -t ddclient rm /var/cache/ddclient/ddclient.cache Edited January 23, 2020 by Paintsu Found a solution Quote Link to comment
saarg Posted January 23, 2020 Share Posted January 23, 2020 6 hours ago, Paintsu said: EDIT: Seems that many other people are struggling with same problem. Any workarounds would be much appreciated. It seems that ddclient does not support this functionality out of the box. I found a workaround for this issue. Ddclient stores information of last known ip in cache file, if this cache file is not present it does update. I created a script in userscripts to delete this file daily, and it updates my ip after daemon checks my ip next time. Command inside script is: docker exec -t ddclient rm /var/cache/ddclient/ddclient.cache That is probably the best solution for it if there is no option in settings. Quote Link to comment
checkplus Posted January 24, 2020 Share Posted January 24, 2020 On 1/22/2020 at 10:20 AM, dapiedude said: For anyone on Google Domains using Google's Dynamic DNS and this DDclient, I've been able to this working using the following: daemon=600 syslog=yes pid=/var/run/ddclient/ddclient.pid ssl=yes protocol=dyndns2 use=web server=domains.google.com login=generated-login, password=generated-password my.domain.tld No need to have anything else uncommented. Should be simple enough Thanks for this! Been scouring the net for a good config file and yours is the first that's worked for me! 1 Quote Link to comment
rclifton Posted February 5, 2020 Share Posted February 5, 2020 Loving the container, I've had it up and running for awhile now, but today I noticed that something has broken. I'm not sure exactly when it happened but I do know that I updated a domain this past weekend and ddclient updated its ip so it was working as late as Sunday. However my log is now filled with: ErrorWarningSystemArrayLogin readline() on closed filehandle FD at /usr/bin/ddclient line 1130. stat() on closed filehandle FD at /usr/bin/ddclient line 1117. Use of uninitialized value $mode in bitwise and (&) at /usr/bin/ddclient line 1118. readline() on closed filehandle FD at /usr/bin/ddclient line 1130. WARNING: file /ddclient.conf: Cannot open file '/ddclient.conf'. (Permission denied) I'm not sure how the permission on the config file was changed and I'm really unsure of how to fix it, as linux command line is not something I have a lot of experience with.. Thanks! Quote Link to comment
saarg Posted February 6, 2020 Share Posted February 6, 2020 Please post your docker run command and also the output of the command docker exec -it ddclient ls -al /ddclient.conf Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.