DDNS Bug in GL-XE3000

Even when DDNS is disabled (because it didn’t work), the router still attempts a DDNS connection every minute or so. Had to kill the process in LUCI.

Sun Sep  7 11:01:54 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:03:02 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:04:10 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:05:18 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:06:27 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:07:35 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:08:43 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:09:51 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:10:59 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:12:07 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:13:15 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:14:24 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:15:32 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:16:40 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:17:48 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:18:56 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:20:04 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:21:12 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:22:20 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:23:29 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:24:37 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:25:45 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:26:53 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:28:01 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:29:09 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:30:17 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:31:25 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:32:34 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:33:42 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:34:50 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:35:58 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:37:06 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:38:14 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:39:22 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'
Sun Sep  7 11:40:31 2025 user.err ddns-scripts[23833]: glddns: cURL Error: '6'

Hi,

  1. May I know what's the XE3000 firmware version?
  2. When these logs appear, SSH to the router and execute ps | grep ddns—are there any related processes?
  3. If you enable DDNS and then disable it again, is the process still running? Are there ddns logs?
  1. Version 4.0, 0704release5
  2. /bin/sh /usr/lib/gl_ddns/dynamic_dns_updater.sh -v 0
  3. We’ve kept DDNS disabled, and these processes continue to restart and curl errors persist
  4. crontab is non-existent

FYI: We reboot the router each night because of degradation late in the day, and this seems to restart the dynamic_dns_updater.sh script.

cat glddns.log":

 075855 ERROR : cURL Error: '28'
curl: (28) Failed to connect to ifconfig.me port 80 after 2041 ms: Operation timed out
Transfer failed - retry 161/0 in 60 seconds
#> /usr/bin/curl -RsS --connect-timeout 4 -m 4 -o /var/run/ddns/glddns.dat --stderr /var/run/ddns/glddns.err --noproxy '*' 'http://checkip.dyndns.com'
#> curl -4 -RsS --connect-timeout 4 -m 4 ifconfig.me/ip -o /var/run/ddns/glddns.dat --stderr /var/run/ddns/glddns.err
 080001 ERROR : cURL Error: '28'
curl: (28) Failed to connect to ifconfig.me port 80 after 2038 ms: Operation timed out
Transfer failed - retry 162/0 in 60 seconds
#> /usr/bin/curl -RsS --connect-timeout 4 -m 4 -o /var/run/ddns/glddns.dat --stderr /var/run/ddns/glddns.err --noproxy '*' 'http://checkip.dyndns.com'
#> curl -4 -RsS --connect-timeout 4 -m 4 ifconfig.me/ip -o /var/run/ddns/glddns.dat --stderr /var/run/ddns/glddns.err
 080107 ERROR : cURL Error: '28'
curl: (28) Failed to connect to ifconfig.me port 80 after 2032 ms: Operation timed out
Transfer failed - retry 163/0 in 60 seconds
#> /usr/bin/curl -RsS --connect-timeout 4 -m 4 -o /var/run/ddns/glddns.dat --stderr /var/run/ddns/glddns.err --noproxy '*' 'http://checkip.dyndns.com'
#> curl -4 -RsS --connect-timeout 4 -m 4 ifconfig.me/ip -o /var/run/ddns/glddns.dat --stderr /var/run/ddns/glddns.err
 080213 ERROR : cURL Error: '28'
curl: (28) Failed to connect to ifconfig.me port 80 after 2027 ms: Operation timed out
Transfer failed - retry 164/0 in 60 seconds
PID '29424' terminated by 'SIGTERM' at 2025-09-08 08:02

cat ddns.log below. Note that attempts to kill DDNS process fail except the one that continues to run and cause the curl errors:

************ ************** ************** **************
PID '28597' started at 2025-09-08 05:02
ddns version  : unknown
uci configuration:
gl_ddns.ddns.enabled_ssh='0'
gl_ddns.ddns.http_port='80'
gl_ddns.ddns.https_port='443'
gl_ddns.ddns=service
verbose mode  : 0 - run normal, NO console output
Service section disabled! - TERMINATE
PID '28597' exit WITH ERROR '1' at 2025-09-08 05:02

************ ************** ************** **************
PID '29421' started at 2025-09-08 05:02
ddns version  : unknown
uci configuration:
gl_ddns.ddns.enabled_ssh='0'
gl_ddns.ddns.http_port='80'
gl_ddns.ddns.https_port='443'
gl_ddns.ddns=service
verbose mode  : 0 - run normal, NO console output
Service section disabled! - TERMINATE
PID '29421' exit WITH ERROR '1' at 2025-09-08 05:02

Just updated to 4.8 beta, and it looks like the curl errors are gone even though dynamic_dns_updater.sh script is still running. DDNS was automatically enabled during the reboot. Even though enabled, DDNS access using assigned FQDN still doesn’t work even though the FQDN is resolving to the correct IP address according to ping request.

FYI: Tailscale and OpenVPN both allow SSH and web access. Assigned FQDN and my own FQDN through DynDNS both fail even with web and SSH remote access enabled.

1 Like

Hi,

Thanks for the update.

Please check by command nslookup [your GL DDNS domain], is the IP returned a public IP of XE3000?

Please check is this public IP on XE3000? Is it a Cellular IP or a wired ISP WAN?
On the DDNS page, there is a "DDNS Test", please check the test results.