DDNS - Namecheap

Good morning

I am having issues with DDNS pointing towards Namecheap. Looking in the DDNS logs I can see an error that then Terminates the process

120235 note : PID ‘23488’ started at 2025-04-15 12:02
120235 : ddns version : 2.8.2-64
120235 : uci configuration:
ddns.cfg025996.domain='YYYYYYYY"
ddns.cfg025996.enabled=‘1’
ddns.cfg025996.interface=‘wan6’
ddns.cfg025996.ip_network=‘wan6’
ddns.cfg025996.ip_source=‘network’
ddns.cfg025996.password=‘PW
ddns.cfg025996.service_name=‘namecheap.com
ddns.cfg025996.use_ipv6=‘1’
ddns.cfg025996.username=‘xxxxxxxxxx.org
ddns.cfg025996=service
120235 : verbose mode : 0 - run normal, NO console output
120235 WARN : Custom update_script not found! - TERMINATE
120235 WARN : PID ‘23488’ exit WITH ERROR ‘1’ at 2025-04-15 12:02
120250 : ************ ************** ************** **************

Anyone see this before ?

Thanks

Here are the additional notes from our testing.

DDNS password is separate from account password, found in DNS management. Hostname must be specified as the domain only. Username is the host portion of the FQDN

Can you confirm the configuration is correct with another client, for example?

Morning Alta-Josh

I have checked with Namecheap what I have should be using and they have confirmed its correct. Would my credentials have any bearing on not being able to find a local script ?

Regards

Don

I have tried DNS-O-Matic which I used years ago with a service direction to NameCheap

I still have the issue with “155959 WARN : Custom update_script not found! - TERMINATE”

DNS o Matic status is “awaiting its first update”

Don

The reason Namecheap isn’t working is that’s an IPv6 config, and Namecheap’s DDNS is IPv4-only. As noted here on their site.

Same for DNS-o-matic, it also does not support AAAA records.

There are a lot more DDNS providers that support IPv6 than there used to be, but it’s still far from universal. We’re going to change the DDNS UI so it only shows the IPv6 toggle for services which support IPv6.

Of the free DDNS options, here are a few (in English, excluding several primarily in other languages) which support IPv6:

dns.he.net (though requires pointing NS records for an entire domain or subdomain there)

A number of the paid options, or free with domain registration, also support IPv6. Like I have AAAA DDNS with Gandi on a domain registered there.

2 Likes

Thanks for the update.

I did think if it didn’t support IPV6 then it would just silently fail
and complete the IPv4

However many thanks

The configs are kept separately, so when the IPv6 toggle is selected, it’s only registering an AAAA record. And only an A record when it’s not selected.

I have considered instead having an IP version drop down with IPv4, IPv6, and Both there, we may change to that in the future. But for the time being each config entry is either IPv4 or IPv6.

1 Like

Interestingly I have it working ok with Namecheap.
However in the Route10 in the DDNS section when selecting Namecheap as the Provider Hostname requires the actual Username from Namecheap
Username is the actual Hostname .

A bit confusing until I worked out they were reversed

Thanks for all your input

I believe that matches the notes provided above.

Indeed they do . If only I had known there were detailed notes to read… A link in the DDNS Route10 section to these “Notes” would have saved a lot of time. After watching yesterdays Live stream I see that ALta are going to improve documentation, which definitely has my vote.

Thanks for all the assistance it is much appreciated

1 Like

Thought i would check Domain Name via NSLOOKUP it failed. Checked the ddns.log and can see that the Router could not establish the external IP address. So disabled the service, Counted to ten, and re-enabled the DDNS service and it can now obtain the external IP address again. I have no idea when or how it failed in the last week.

Do you have a syslog server set up? This could potentially capture errors in case the issue happens again.

I’ve successfully tested Graylog in a container environment. I use podman with quadlets (example here), but docker instructions are available here.

Hi Josh, I have no requirement for Syslog, NMS, NTP servers anymore. This is just my home network that supports the family. I try not to touch it from week to week and only implement new features when I have use for those features. My days of providing network support services are long gone and I class myself as a “tinkerer” these days. For me I keep things simple so they are easy to maintain. Jusat checked again and here is the log after a Forced update successful with the correct IP detains

64650       : Waiting 600 seconds (Check Interval)
 165650       : Detect registered/public IP
 165650       : #> /usr/bin/drill -V0 -u gelarnet.org A >/var/run/ddns/cfg025996.dat 2>/var/run/ddns/cfg025996.err
 165650  WARN : NO valid IP found
 165650  WARN : Get registered/public IP for 'gelarnet.org' failed - retry 1/0 in 60 seconds
 165750       : #> /usr/bin/drill -V0 -u gelarnet.org A >/var/run/ddns/cfg025996.dat 2>/var/run/ddns/cfg025996.err
 165750  WARN : NO valid IP found
 165750  WARN : Get registered/public IP for 'gelarnet.org' failed - retry 2/0 in 60 seconds
 165850       : #> /usr/bin/drill -V0 -u gelarnet.org A >/var/run/ddns/cfg025996.dat 2>/var/run/ddns/cfg025996.err
 165851  WARN : NO valid IP found
 165851  WARN : Get registered/public IP for 'gelarnet.org' failed - retry 3/0 in 60 seconds
 165951       : #> /usr/bin/drill -V0 -u gelarnet.org A >/var/run/ddns/cfg025996.dat 2>/var/run/ddns/cfg025996.err
 165951  WARN : NO valid IP found
 165951  WARN : Get registered/public IP for 'gelarnet.org' failed - retry 4/0 in 60 seconds
 170051       : #> /usr/bin/drill -V0 -u gelarnet.org A >/var/run/ddns/cfg025996.dat 2>/var/run/ddns/cfg025996.err
 170051  WARN : NO valid IP found
 170051  WARN : Get registered/public IP for 'gelarnet.org' failed - retry 5/0 in 60 seconds
/tmp/log/ddns #

Sure, I understand. However, a syslog server actually makes things easier to maintain if you have the hardware to support it in your homelab. It’s not a requirement, just a major benefit to prevent losing important logs from devices that have limited memory. Our products rotate 3 log files to retain data as long as we can safely do so before being forced to delete old logs.

Are you suggesting that these logs are from a successful DDNS update or from a failure? Don’t forget to check the /var/run/ddns/cfg025996.err file as well. Additionally, it may help to toggle on the Public WAN IP setting as shown below. Hover over the question bubble for more information.

The cfg025996.err is of Zero bytes in size. The logfile above is where it transitioned from working to failing. The waiting for 600 is from the end of the successful attainment of the IPv4 address. It then transitioned to failure.

when I toggle Public WAN to ON The log file shows an IPV6 address which is correct., but noted as the BR Lan address when I hover over the Route10 IP address in NETWORK

When I toggle it back to Off I now see the correct IPv4 address.

These are seen in the Log file. I did NOT toggle DDNS enable /disable.

I have no need to a home lab these days my Use Case is the simplest you can ever get.

1 Like