I'm running OpenWrt 23.05.5 on a TP-Link Archer AX23 v1 in my home
I have a domain, hosted by Strato.
I want a subdomain eg home.mydomain.com to provide a route to my home router.
I have found that DynDNS is available at Strato. Their documentation (in English) seems to be on 2 separate pages:
I have installed the packages ddns-scripts and luci-app-ddns.
When I later checked the DynDNS page in LuCi I noticed a warning regarding bind-host, so I installed that too.
Downloading 'https://dyndns.strato.com/nic/update'
Connecting to 81.169.144.192:443
HTTP error 401
401 made me think about authentication issues. So I decided to start all over. Removed the ddns scripts and luci package, deleted /etc/config/ddns, reinstalled packages and created the service again.
This time around the "Read log" button did appear. It gave me this:
103701 note : PID '19907' started at 2025-01-21 10:37
103701 : ddns version : 2.8.2-43
103701 : uci configuration:
ddns.home.check_unit='minutes'
ddns.home.domain='home.mydomain.com'
ddns.home.enabled='1'
ddns.home.force_unit='minutes'
ddns.home.interface='wan'
ddns.home.ip_network='wan'
ddns.home.ip_source='network'
ddns.home.lookup_host='mydomain.com'
ddns.home.password='***PW***'
ddns.home.retry_unit='seconds'
ddns.home.service_name='strato.com'
ddns.home.use_ipv6='0'
ddns.home.use_syslog='2'
ddns.home.username='mydomain.com'
ddns.home=service
103701 : verbose mode : 0 - run normal, NO console output
103701 : check interval: 600 seconds
103701 : force interval: 4320 seconds
103701 : retry interval: 60 seconds
103701 : retry max count : 0 times
103701 : No old process
103701 : last update: never
103701 : Detect registered/public IP
103701 : #> /usr/bin/host -t A mydomain.com >/var/run/ddns/home.dat 2>/var/run/ddns/home.err
103702 : Registered IP '99.99.99.99' detected
103702 info : Starting main loop at 2025-01-21 10:37
103702 : Detect current IP on 'network'
103702 : Current IP '11.11.11.11' detected on network 'wan'
103702 : Update needed - L: '11.11.11.11' <> R: '99.99.99.99'
103702 : Force communication via device 'wan'
103702 : #> /usr/bin/curl -RsS -o /var/run/ddns/home.dat --stderr /var/run/ddns/home.err --interface wan --noproxy '*' 'http://mydomain.com:Q%24%2abh%25TsTO0vTB@dyndns.strato.com/nic/update?hostname=home.mydomain.com&myip=11.11.11.11'
103702 : DDNS Provider answered:
nochg 11.11.11.11
103702 info : Update successful - IP '11.11.11.11' send
103702 info : Forced update successful - IP: '11.11.11.11' send
103703 : Waiting 600 seconds (Check Interval)
103703 : #> /bin/uclient-fetch -q -O /var/run/ddns/home.dat -Y off 'https://dyndns.strato.com/nic/update' 2>/var/run/ddns/home.err
103704 ERROR : uclient-fetch Error: '8'
103704 :
103704 WARN : Transfer failed - retry 995/0 in 60 seconds
103804 : #> /bin/uclient-fetch -q -O /var/run/ddns/home.dat -Y off 'https://dyndns.strato.com/nic/update' 2>/var/run/ddns/home.err
103804 ERROR : uclient-fetch Error: '8'
103804 :
103804 WARN : Transfer failed - retry 996/0 in 60 seconds
I don't know, and not sure how/where to find the answer.
I do know the ddns itself is working though. My home IP is being updated to the DNS.
I have also changed some intervals (check every 6 hours if local IP has been changed), but the error keeps popping up every minute. Don't understand what function is being called every minute.
I do get the impression it's not something I have done wrong. As you mentioned, it might be the template. Not sure how github works. Is there a way to address this issue?
I could try to disable the current service and create a custom one to troubleshoot. See if I can get it working without the error. But open to alternatives!
@miels please enable https, configure CA Path as /etc/ssl/certs/ca-certificates.crt, make sure you have only one DDNS instance configured, reboot then show the recent DDNS client log.
Thanks for your assistance. I enabled https in the service settings and entered the CA path. Also increased log level. Saved & applied.
The log:
210643 : ************ ************** ************** **************
210643 note : PID '19487' started at 2025-01-22 21:06
210643 : ddns version : 2.8.2-43
210644 : uci configuration:
ddns.home.cacert='/etc/ssl/certs/ca-certificates.crt'
ddns.home.check_interval='6'
ddns.home.check_unit='hours'
ddns.home.domain='home.mydomain.nl'
ddns.home.enabled='1'
ddns.home.force_interval='30'
ddns.home.force_unit='days'
ddns.home.interface='wan'
ddns.home.ip_network='wan'
ddns.home.ip_source='network'
ddns.home.lookup_host='home.mydomain.nl'
ddns.home.password='***PW***'
ddns.home.retry_interval='5'
ddns.home.retry_unit='minutes'
ddns.home.service_name='strato.com'
ddns.home.use_https='1'
ddns.home.use_ipv6='0'
ddns.home.use_syslog='1'
ddns.home.username='mydomain.nl'
ddns.home=service
210644 : verbose mode : 0 - run normal, NO console output
210644 : check interval: 21600 seconds
210644 : force interval: 2592000 seconds
210644 : retry interval: 300 seconds
210644 : retry max count : 0 times
210644 : 'SIGTERM' was send to old process
210644 note : PID '19072' terminated by 'SIGTERM' at 2025-01-22 21:06
210644 : last update: 2025-01-21 10:57
210644 : Detect registered/public IP
210644 : #> /usr/bin/host -t A home.mydomain.nl >/var/run/ddns/home.dat 2>/var/run/ddns/home.err
210645 : Registered IP '11.11.11.11' detected
210645 info : Starting main loop at 2025-01-22 21:06
210645 : Detect current IP on 'network'
210645 : Current IP '11.11.11.11' detected on network 'wan'
210645 : Waiting 21600 seconds (Check Interval)
210735 : #> /bin/uclient-fetch -q -O /var/run/ddns/home.dat -Y off 'https://dyndns.strato.com/nic/update' 2>/var/run/ddns/home.err
210735 ERROR : uclient-fetch Error: '8'
210735 :
210735 WARN : Transfer failed - retry 3043/0 in 60 seconds
I'd like to restate: the DDNS update itself does work. I've also decreased the interval of check, retry and force to a maximum of once every 5 minutes. Nevertheless the error keeps popping up every minute.