DDNS issues (Not running / Needs restart after boot and after interface restart)

Hi all, I am posting this since did not find something similar (if any, please point me to the post thanks),
Currently using 24.10.5 with ASUS RT-AX53U as main router, connected to FWA modem of ISP via DHCP IPv4 through WAN interface.
WAN is configured with two interfaces:

  • one is named GESTIONE and does not have vlan, (used to reach and manage FWA modem)
  • the other is named INTERNET and is tagged with VLAN 10 (used to access Internet).
    This is the mandatory configuration from ISP, and works ok (router is using DSA).
    I am using DDNS (main package + Luci interface), and things seem to be working ok, except when the FWA modem is forced to renew the IP address leased to INTERNET interface (I do this by closing and re-opening the 5G connection on the modem).
    Two weird things happen:
  1. DDNS process is killed as soon as I shut the 5G stream, and does not restart unless I force it by clicking on “Restart DDns” in the “Services”→”Dynamic DNS” web page of Luci – tried all combinations of checks for Network/Interface/URL/script… no joy

  2. once DDNS has been manually restarted, the DNSMASQ process keeps the old address of the INTERNET interface to resolve the DDNS name, until manually restarted.

DDNS provider is DYNU, but I don’t think this is causing the issue.

Here is an extract of the DDNS log up until the FWA modem drops 5G connection: at that point, the DDNS process is killed by SIGTERM..


225540       : Detect current IP on 'interface'
225540       : #> ip -o addr show dev wan.10 scope global >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
225540       : Current IP 'xx.yy.zz.ww' detected on interface 'wan.10'
225540       : Waiting 300 seconds (Check Interval)
230040       : Detect registered/public IP
230040       : #> /usr/bin/drill -V0 -u xxxxx.gleeze.com A >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
230040       : Registered IP 'xx.yy.zz.ww' detected
230040  info : Rerun IP check at 2026-02-18 23:00
230040       : Detect current IP on 'interface'
230040       : #> ip -o addr show dev wan.10 scope global >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
230041       : Current IP 'xx.yy.zz.ww' detected on interface 'wan.10'
230041       : Waiting 300 seconds (Check Interval)
230315  note : PID '31885' terminated by 'SIGTERM' at 2026-02-18 23:03



After re-enabling 5G connection on FWA, the INTERNET interface renews IP via DHCP, but the DDNS process is dead. I need to restart it in order to have the DYNU DNS updated.
Here is the log.


230634       : ************ ************** ************** **************
230634  note : PID '2511' started at 2026-02-18 23:06
230634       : ddns version  : 2.8.2-64
230634       : uci configuration:
ddns.dynu.check_interval='2'
ddns.dynu.check_unit='hours'
ddns.dynu.domain='xxxxx.gleeze.com'
ddns.dynu.enabled='1'
ddns.dynu.force_interval='24'
ddns.dynu.force_unit='hours'
ddns.dynu.interface='INTERNET'
ddns.dynu.ip_interface='wan.10'
ddns.dynu.ip_source='interface'
ddns.dynu.lookup_host='xxxxx.gleeze.com'
ddns.dynu.password='PW'
ddns.dynu.retry_interval='1'
ddns.dynu.retry_unit='minutes'
ddns.dynu.service_name='dynu.com'
ddns.dynu.use_https='1'
ddns.dynu.use_ipv6='0'
ddns.dynu.use_syslog='1'
ddns.dynu.username='myuserid'
ddns.dynu=service
230634       : verbose mode  : 0 - run normal, NO console output
230634       : check interval: 7200 seconds
230634       : force interval: 86400 seconds
230634       : retry interval: 60 seconds
230634       : retry max count : 0 times
230634       : No old process
230634       : last update: 2026-02-18 21:55
230634       : Detect registered/public IP
230634       : #> /usr/bin/drill -V0 -u xxxxx.gleeze.com A >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
230635       : Registered IP 'xx.yy.zz.ww' detected
230635  info : Starting main loop at 2026-02-18 23:06
230635       : Detect current IP on 'interface'
230635       : #> ip -o addr show dev wan.10 scope global >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
230635       : Current IP 'xx.yy.zz.qq' detected on interface 'wan.10'
230635       : Update needed - L: 'xx.yy.zz.qq' <> R: 'xx.yy.zz.ww'
230635       : #> /usr/bin/wget --hsts-file=/tmp/.wget-hsts -nv -t 1 -O /var/run/ddns/dynu.dat -o /var/run/ddns/dynu.err --no-proxy 'https://api.dynu.com/nic/update?hostname=xxxxx.gleeze.com&myip=xx.yy.zz.qq&username=myuserid&password=***PW***'
230637       : DDNS Provider answered:
good xx.yy.zz.qq
230637  info : Update successful - IP 'xx.yy.zz.qq' send
230637       : Waiting 7200 seconds (Check Interval)

At this point, despite I have set the “cachesize” to 0 in the DNSMASQ config file, I keep getting the old IP address of the INTERNET interface when entering “nslookup” on any PC of the LAN for the DDNS name (IP address is correct if I check from outside the lan).
To solve this problem I need to restart DNSMASQ.

Any suggestion is greatly appreciated.

Tried forcing dnsmasq to always resolve your DDNS FQDN externally (upstream) ?

Tried external DNS using nslookup too, it might not be a local issue ?

Dns records do not propagate caches in an instant.

1 Like

Meanwhile let me share parts of the network config file, in case you spot something wrong.
Also tried to bridge WAN and WAN.10 (to use VLAN filtering w/DSA) but no joy – all I need is VLAN 10 for INTERNET + no VLAN for GESTIONE on same wire to modem and this config seems to achieve it.

config device
option name 'br-lan'
option type 'bridge'  <== LAN bridge (did not use WAN bridge)
option igmp_snooping '1'
option ipv6 '0'
option bridge_empty '1'
option priority '1000'
option stp '1'
list ports 'lan1'
list ports 'lan2'
list ports 'lan3'

config interface 'lan'
option device 'br-lan'
option proto 'static'
option ipaddr 'x.y.z.w'
option netmask '255.255.255.0'
option ip6assign '60'
option defaultroute '0'
option delegate '0'
list dns '94.140.14.14'
list dns '94.140.15.15'
option force_link '0'

config device
option name 'eth0'
option ipv6 '0'

config device
option name 'lan1'

config device
option name 'lan2'

config device
option name 'lan3'

config device
option name 'phy0-ap0'

config device
option name 'phy1-ap0'

config device
option name 'wan'
option ipv6 '0'
option macaddr 'xxxxxxxxxxxxxx:A5'  <== MAC address changed for DHCP

config device
option type '8021q' <== this is VLAN 10 for INternet
option ifname 'wan'
option vid '10'
option name 'wan.10'
option ipv6 '0'
option macaddr 'xxxxxxxxxxxxxx:A6'  <== MAC address changed for DHCP

config interface 'INTERNET'  <= this is for Internet access (VLAN = 10)
option proto 'dhcp'
option device 'wan.10'
option delegate '0'
option hostname 'INTERNET'
option peerdns '0'
list dns '151.5.216.15'  <== ISP's public DNS
list dns '151.5.216.150'

config interface 'GESTIONE'  <== this is for modem management (no VLAN)
option proto 'dhcp'
option device 'wan'
option hostname 'GESTIONE'
option defaultroute '0'
option peerdns '0'
list dns '151.5.216.15'
list dns '151.5.216.150'
option delegate '0'

This is ddns config.

config ddns 'global'
option ddns_dateformat '%F %R'
option ddns_loglines '250'
option ddns_rundir '/var/run/ddns'
option ddns_logdir '/var/log/ddns'

config service 'dynu'
option service_name 'dynu.com'
option use_ipv6 '0'
option enabled '1'
option lookup_host 'xxxxxxxxx.gleeze.com'
option domain 'xxxxxxxxx.gleeze.com'
option username 'myuserid'
option password 'mypwd'
option use_https '1'
option ip_source 'interface'
option interface 'INTERNET'
option use_syslog '1'
option check_interval '2'
option check_unit 'hours'
option force_interval '24'
option force_unit 'hours'
option retry_interval '1'
option retry_unit 'minutes'
option ip_interface 'wan.10'

This is part of DHCP/DNS config

config dnsmasq
option domainneeded '1'
option localise_queries '1'
option rebind_protection '1'
option rebind_localhost '1'
option cachesize '0'  <==== set to 0 to avoid caching old public IP on wan.10
option authoritative '1'
option readethers '1'
option leasefile '/tmp/dhcp.leases'
option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
option localservice '1'
option ednspacket_max '1232'
option filter_aaaa '1'
option domain 'xxxxxxxxx'
option nonwildcard '0'
option quietdhcp '1'
option expandhosts '1'

In order to have ddns process up and running all time, I followed the suggestion of @5p0ng3b0b in this thread and setup a symlink to S95ddns, so this is what I have in /etc/rc.d:

lrwxrwxrwx 1 root root 21 Dec 17 22:08 S94gpio_switch -> ../init.d/gpio_switch
lrwxrwxrwx 1 root root 14 Feb 18 20:45 S95ddns -> ../init.d/ddns
lrwxrwxrwx 1 root root 14 Dec 17 22:08 S95done -> ../init.d/done
lrwxrwxrwx 1 root root 13 Dec 17 22:08 S96led -> ../init.d/led

And what Luci is telling me:

ddns shows ok:

nslookup on router is ok

root@ASUS-STUDIO:/etc/rc.d# nslookup xxxx.gleeze.com
Server:         127.0.0.1
Address:        127.0.0.1:53

Non-authoritative answer:
Name:   xxxx.gleeze.com
Address: ccccccc.127

..as well as from PC connected to router (local and remote DNS):

C:\Users\giuse>nslookup xxxx.gleeze.com
Server:  ASUS-STUDIO.cccccc
Address:  192.168.10.1

Risposta da un server non autorevole:
Nome:    xxxx.gleeze.com
Address:  ccccccc.127

C:\Users\giuse>nslookup xxxx.gleeze.com 8.8.8.8
Server:  dns.google
Address:  8.8.8.8

Risposta da un server non autorevole:
Nome:    xxxx.gleeze.com
Address:  ccccccc.127

Then when 5G connection on modem is turned off, this is what I see in the log:



Thu Feb 19 09:24:15 2026 kern.info kernel: [53039.165745] mtk_soc_eth 1e100000.ethernet wan: Link is Down
Thu Feb 19 09:24:15 2026 daemon.notice netifd: Network device 'wan' link is down
Thu Feb 19 09:24:15 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity loss
Thu Feb 19 09:24:15 2026 daemon.notice netifd: 8021q 'wan.10' link is down
Thu Feb 19 09:24:15 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity loss
Thu Feb 19 09:24:15 2026 daemon.notice netifd: INTERNET (2113): udhcpc: received SIGTERM
Thu Feb 19 09:24:15 2026 daemon.notice netifd: INTERNET (2113): udhcpc: unicasting a release of xxxxxx.127 to 192.168.192.1
Thu Feb 19 09:24:15 2026 daemon.notice netifd: INTERNET (2113): udhcpc: sending release
Thu Feb 19 09:24:15 2026 daemon.notice netifd: GESTIONE (2116): udhcpc: received SIGTERM
Thu Feb 19 09:24:15 2026 daemon.notice netifd: GESTIONE (2116): udhcpc: unicasting a release of 192.168.192.3 to 192.168.192.1
Thu Feb 19 09:24:15 2026 daemon.notice netifd: GESTIONE (2116): udhcpc: sending release
Thu Feb 19 09:24:15 2026 daemon.notice netifd: GESTIONE (2116): udhcpc: entering released state
Thu Feb 19 09:24:15 2026 daemon.notice netifd: INTERNET (2113): udhcpc: entering released state
Thu Feb 19 09:24:15 2026 daemon.notice netifd: GESTIONE (2116): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "GESTIONE" } (Permission denied)
Thu Feb 19 09:24:15 2026 daemon.notice netifd: INTERNET (2113): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "INTERNET" } (Permission denied)
Thu Feb 19 09:24:15 2026 daemon.notice netifd: Interface 'INTERNET' is now down
Thu Feb 19 09:24:15 2026 daemon.notice netifd: Interface 'GESTIONE' is now down
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 09:24:15 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 09:24:15 2026 user.notice ddns-scripts[2511]: dynu: PID '2511' terminated by 'SIGTERM' at 2026-02-19 09:24  <======================= SIGTERM ddns
Thu Feb 19 09:24:17 2026 kern.info kernel: [53041.245788] mtk_soc_eth 1e100000.ethernet wan: Link is Up - 1Gbps/Full - flow control rx/tx
Thu Feb 19 09:24:17 2026 daemon.notice netifd: Network device 'wan' link is up
Thu Feb 19 09:24:17 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity
Thu Feb 19 09:24:17 2026 daemon.notice netifd: Interface 'GESTIONE' is setting up now
Thu Feb 19 09:24:17 2026 daemon.notice netifd: 8021q 'wan.10' link is up
Thu Feb 19 09:24:17 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity
Thu Feb 19 09:24:17 2026 daemon.notice netifd: Interface 'INTERNET' is setting up now
Thu Feb 19 09:24:17 2026 daemon.notice netifd: INTERNET (7968): udhcpc: started, v1.36.1
Thu Feb 19 09:24:17 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: started, v1.36.1
Thu Feb 19 09:24:17 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: broadcasting discover
Thu Feb 19 09:24:17 2026 daemon.notice netifd: INTERNET (7968): udhcpc: broadcasting discover
Thu Feb 19 09:24:18 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: broadcasting select for 192.168.192.3, server 192.168.192.1
Thu Feb 19 09:24:18 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: lease of 192.168.192.3 obtained from 192.168.192.1, lease time 1200
Thu Feb 19 09:24:18 2026 daemon.notice netifd: Interface 'GESTIONE' is now up
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.15#53
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.150#53
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 09:24:18 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 09:24:19 2026 user.notice firewall: Reloading firewall due to ifup of GESTIONE (wan)
Thu Feb 19 09:24:20 2026 daemon.notice netifd: INTERNET (7968): udhcpc: broadcasting discover
Thu Feb 19 09:24:24 2026 daemon.notice netifd: INTERNET (7968): udhcpc: broadcasting discover

..and when 5G is re-established



Thu Feb 19 09:28:33 2026 kern.info kernel: [53297.081723] mtk_soc_eth 1e100000.ethernet wan: Link is Down
Thu Feb 19 09:28:33 2026 daemon.notice netifd: Network device 'wan' link is down
Thu Feb 19 09:28:33 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity loss
Thu Feb 19 09:28:33 2026 daemon.notice netifd: 8021q 'wan.10' link is down
Thu Feb 19 09:28:33 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity loss
Thu Feb 19 09:28:33 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: received SIGTERM
Thu Feb 19 09:28:33 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: unicasting a release of 192.168.192.3 to 192.168.192.1
Thu Feb 19 09:28:33 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: sending release
Thu Feb 19 09:28:33 2026 daemon.notice netifd: GESTIONE (7971): udhcpc: entering released state
Thu Feb 19 09:28:33 2026 daemon.notice netifd: INTERNET (7968): udhcpc: received SIGTERM
Thu Feb 19 09:28:33 2026 daemon.notice netifd: GESTIONE (7971): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "GESTIONE" } (Permission denied)  <=========== ??
Thu Feb 19 09:28:33 2026 daemon.notice netifd: Interface 'GESTIONE' is now down
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 09:28:33 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 09:28:33 2026 daemon.notice netifd: INTERNET (7968): udhcpc: entering released state
Thu Feb 19 09:28:33 2026 daemon.notice netifd: INTERNET (7968): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "INTERNET" } (Permission denied)
Thu Feb 19 09:28:33 2026 daemon.notice netifd: Interface 'INTERNET' is now down
Thu Feb 19 09:28:36 2026 daemon.notice netifd: Network device 'wan' link is up
Thu Feb 19 09:28:36 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity
Thu Feb 19 09:28:36 2026 daemon.notice netifd: Interface 'GESTIONE' is setting up now
Thu Feb 19 09:28:36 2026 daemon.notice netifd: 8021q 'wan.10' link is up
Thu Feb 19 09:28:36 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity
Thu Feb 19 09:28:36 2026 daemon.notice netifd: Interface 'INTERNET' is setting up now
Thu Feb 19 09:28:36 2026 kern.info kernel: [53300.201821] mtk_soc_eth 1e100000.ethernet wan: Link is Up - 1Gbps/Full - flow control rx/tx
Thu Feb 19 09:28:36 2026 daemon.notice netifd: INTERNET (8266): udhcpc: started, v1.36.1
Thu Feb 19 09:28:36 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: started, v1.36.1
Thu Feb 19 09:28:36 2026 daemon.notice netifd: INTERNET (8266): udhcpc: broadcasting discover
Thu Feb 19 09:28:36 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: broadcasting discover
Thu Feb 19 09:28:37 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: broadcasting select for 192.168.192.3, server 192.168.192.1
Thu Feb 19 09:28:37 2026 daemon.notice netifd: INTERNET (8266): udhcpc: broadcasting select for 94.165.155.152, server 192.168.192.1
Thu Feb 19 09:28:37 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: lease of 192.168.192.3 obtained from 192.168.192.1, lease time 1200
Thu Feb 19 09:28:37 2026 daemon.notice netifd: Interface 'GESTIONE' is now up
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.15#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.150#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 09:28:37 2026 daemon.notice netifd: INTERNET (8266): udhcpc: lease of vvvvvvvv.152 obtained from 192.168.192.1, lease time 1200
Thu Feb 19 09:28:37 2026 daemon.notice netifd: Interface 'INTERNET' is now up
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.15#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.150#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.15#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.150#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 09:28:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 09:28:38 2026 user.notice firewall: Reloading firewall due to ifup of GESTIONE (wan)
Thu Feb 19 09:28:39 2026 user.notice firewall: Reloading firewall due to ifup of INTERNET (wan.10)

ddns shows “not running”/”stopped” but is ENABLED in the tasks list

Clicking “Restart DDns” is effective

and, despite it shows the old public IP address, this time the PC’s dns (local and Google) and the router’s dns resolve correctly:

C:\Users\giuse>nslookup xxxx.gleeze.com
Server:  ASUS-STUDIO.cccccccccc
Address:  192.168.10.1

Risposta da un server non autorevole:
Nome:    xxxxx.gleeze.com
Address:  xxxxx.152  <==== new IP address

C:\Users\giuse>nslookup xxxxx.gleeze.com 8.8.8.8
Server:  dns.google
Address:  8.8.8.8

Risposta da un server non autorevole:
Nome:    xxxxxxx.gleeze.com
Address:  xxxxx.152
root@ASUS-STUDIO:/etc/rc.d# nslookup xxxxx.gleeze.com
Server:         127.0.0.1
Address:        127.0.0.1:53

Non-authoritative answer:
Name:   xxxxxx.gleeze.com
Address: xxxx.152

This is the log from ddns itself:

093714       : ************ ************** ************** **************
093714  note : PID '9224' started at 2026-02-19 09:37
093714       : ddns version  : 2.8.2-64
093714       : uci configuration:
ddns.dynu.check_interval='2'
ddns.dynu.check_unit='hours'
ddns.dynu.domain='xxxx.gleeze.com'
ddns.dynu.enabled='1'
ddns.dynu.force_interval='24'
ddns.dynu.force_unit='hours'
ddns.dynu.interface='INTERNET'
ddns.dynu.ip_interface='wan.10'
ddns.dynu.ip_source='interface'
ddns.dynu.lookup_host='xxxxx.gleeze.com'
ddns.dynu.password='PW'
ddns.dynu.retry_interval='1'
ddns.dynu.retry_unit='minutes'
ddns.dynu.service_name='dynu.com'
ddns.dynu.use_https='1'
ddns.dynu.use_ipv6='0'
ddns.dynu.use_syslog='1'
ddns.dynu.username='myuserid'
ddns.dynu=service
093714       : verbose mode  : 0 - run normal, NO console output
093714       : check interval: 7200 seconds
093715       : force interval: 86400 seconds
093715       : retry interval: 60 seconds
093715       : retry max count : 0 times
093715       : No old process
093715       : last update: 2026-02-18 23:06
093715       : Detect registered/public IP
093715       : #> /usr/bin/drill -V0 -u xxxx.gleeze.com A >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
093715       : Registered IP 'aaaaaaaaaaaa.127' detected
093715  info : Starting main l

oop at 2026-02-19 09:37
093715       : Detect current IP on 'interface'
093715       : #> ip -o addr show dev wan.10 scope global >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
093715       : Current IP 'aaaaaaaa.152' detected on interface 'wan.10'
093715       : Update needed - L: 'aaaaaaaaaa.152' <> R: 'aaaaaaaaaaaa.127'
093715       : #> /usr/bin/wget --hsts-file=/tmp/.wget-hsts -nv -t 1 -O /var/run/ddns/dynu.dat -o /var/run/ddns/dynu.err --no-proxy 'https://api.dynu.com/nic/update?hostname=xxxx.gleeze.com&myip=aaaaaaaa.152&username=myuserid&password=***PW***'
093718       : DDNS Provider answered:
good aaaaaaaaaaaa.152
093718  info : Update successful - IP 'aaaaaaaaaaaa.152' send
093718       : Waiting 7200 seconds (Check Interval)

I may do other tests to confirm that DNS resolution is working after a while (I was writing this post while reproducing the problem, so maybe @anon63541380 is correct.. I was too anxious :slight_smile: ), but what about the death of the ddns process by SIGTERM?

Thanks a lot!

igmp snooping without specifying precise igmp protocol versions in between useless and harmful

please use the </> button when you post cli output, it won't wrap the text.

Screenshot 2025-10-20 at 8.14.14 PM

1 Like

Thanks, I got rid of it in the br-lan, don’t think I need it.
By the way, the original router of my ISP used an “IGMP proxy” for both INTERNET and GESTIONE, but I cannot find anything similar in Luci/Uci.. any suggestion?

New test… 5G shut on modem…

Thu Feb 19 12:06:37 2026 kern.info kernel: [62780.699601] mtk_soc_eth 1e100000.ethernet wan: Link is Down
Thu Feb 19 12:06:37 2026 daemon.notice netifd: Network device 'wan' link is down
Thu Feb 19 12:06:37 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity loss
Thu Feb 19 12:06:37 2026 daemon.notice netifd: 8021q 'wan.10' link is down
Thu Feb 19 12:06:37 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity loss
Thu Feb 19 12:06:37 2026 daemon.notice netifd: INTERNET (8266): udhcpc: received SIGTERM
Thu Feb 19 12:06:37 2026 daemon.notice netifd: INTERNET (8266): udhcpc: unicasting a release of xxxxxxxxxxxxxx.152 to 192.168.192.1
Thu Feb 19 12:06:37 2026 daemon.notice netifd: INTERNET (8266): udhcpc: sending release
Thu Feb 19 12:06:37 2026 daemon.notice netifd: INTERNET (8266): udhcpc: entering released state
Thu Feb 19 12:06:37 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: received SIGTERM
Thu Feb 19 12:06:37 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: unicasting a release of 192.168.192.3 to 192.168.192.1
Thu Feb 19 12:06:37 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: sending release
Thu Feb 19 12:06:37 2026 daemon.notice netifd: GESTIONE (8269): udhcpc: entering released state
Thu Feb 19 12:06:37 2026 daemon.notice netifd: INTERNET (8266): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "INTERNET" } (Permission denied)
Thu Feb 19 12:06:37 2026 daemon.notice netifd: GESTIONE (8269): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "GESTIONE" } (Permission denied)
Thu Feb 19 12:06:37 2026 daemon.notice netifd: Interface 'INTERNET' is now down
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 12:06:37 2026 daemon.notice netifd: Interface 'GESTIONE' is now down
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 12:06:37 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 12:06:37 2026 user.notice ddns-scripts[9224]: dynu: PID '9224' terminated by 'SIGTERM' at 2026-02-19 12:06
Thu Feb 19 12:06:40 2026 daemon.notice netifd: Network device 'wan' link is up
Thu Feb 19 12:06:40 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity
Thu Feb 19 12:06:40 2026 daemon.notice netifd: Interface 'GESTIONE' is setting up now
Thu Feb 19 12:06:40 2026 daemon.notice netifd: 8021q 'wan.10' link is up
Thu Feb 19 12:06:40 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity
Thu Feb 19 12:06:40 2026 daemon.notice netifd: Interface 'INTERNET' is setting up now
Thu Feb 19 12:06:40 2026 kern.info kernel: [62783.829790] mtk_soc_eth 1e100000.ethernet wan: Link is Up - 1Gbps/Full - flow control rx/tx
Thu Feb 19 12:06:40 2026 daemon.notice netifd: INTERNET (12053): udhcpc: started, v1.36.1
Thu Feb 19 12:06:40 2026 daemon.notice netifd: GESTIONE (12055): udhcpc: started, v1.36.1
Thu Feb 19 12:06:40 2026 daemon.notice netifd: INTERNET (12053): udhcpc: broadcasting discover
Thu Feb 19 12:06:40 2026 daemon.notice netifd: GESTIONE (12055): udhcpc: broadcasting discover
Thu Feb 19 12:06:40 2026 daemon.notice netifd: GESTIONE (12055): udhcpc: broadcasting select for 192.168.192.3, server 192.168.192.1
Thu Feb 19 12:06:41 2026 daemon.notice netifd: GESTIONE (12055): udhcpc: lease of 192.168.192.3 obtained from 192.168.192.1, lease time 1200
Thu Feb 19 12:06:41 2026 daemon.notice netifd: Interface 'GESTIONE' is now up
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: reading /tmp/resolv.conf.d/resolv.conf.auto
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.15#53
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using nameserver 151.5.216.150#53
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using nameserver 94.140.14.14#53
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using nameserver 94.140.15.15#53
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using only locally-known addresses for test
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using only locally-known addresses for onion
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using only locally-known addresses for localhost
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using only locally-known addresses for local
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using only locally-known addresses for invalid
Thu Feb 19 12:06:41 2026 daemon.info dnsmasq[1]: using only locally-known addresses for bind
Thu Feb 19 12:06:41 2026 user.notice firewall: Reloading firewall due to ifup of GESTIONE (wan)
Thu Feb 19 12:06:43 2026 daemon.notice netifd: INTERNET (12053): udhcpc: broadcasting discover
Thu Feb 19 12:06:46 2026 daemon.notice netifd: INTERNET (12053): udhcpc: broadcasting discover

Again ddns is killed by SIGTERM

Thu Feb 19 12:06:37 2026 user.notice ddns-scripts[9224]: dynu: PID '9224' terminated by 'SIGTERM' at 2026-02-19 12:06

Also some weird messages (same as before)… wonder if this is related somehow to ddns not restarting

Thu Feb 19 12:06:37 2026 daemon.notice netifd: INTERNET (8266): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "INTERNET" } (Permission denied)

Thu Feb 19 12:06:37 2026 daemon.notice netifd: GESTIONE (8269): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "GESTIONE" } (Permission denied)

Then 5G turned up again (most messages not shown)

Thu Feb 19 12:12:37 2026 kern.info kernel: [63140.534575] mtk_soc_eth 1e100000.ethernet wan: Link is Down
....
Thu Feb 19 12:12:37 2026 daemon.notice netifd: GESTIONE (12055): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "GESTIONE" } (Permission denied)
Thu Feb 19 12:12:37 2026 daemon.notice netifd: Interface 'GESTIONE' is now down
...
Thu Feb 19 12:12:37 2026 daemon.notice netifd: INTERNET (12053): udhcpc: received SIGTERM
Thu Feb 19 12:12:37 2026 daemon.notice netifd: INTERNET (12053): udhcpc: entering released state
Thu Feb 19 12:12:37 2026 daemon.notice netifd: INTERNET (12053): Command failed: ubus call network.interface notify_proto { "action": 0, "link-up": false, "keep": false, "interface": "INTERNET" } (Permission denied)
Thu Feb 19 12:12:37 2026 daemon.notice netifd: Interface 'INTERNET' is now down
Thu Feb 19 12:12:39 2026 daemon.notice netifd: Network device 'wan' link is up
Thu Feb 19 12:12:39 2026 daemon.notice netifd: Interface 'GESTIONE' has link connectivity
Thu Feb 19 12:12:39 2026 daemon.notice netifd: Interface 'GESTIONE' is setting up now
Thu Feb 19 12:12:39 2026 kern.info kernel: [63142.614562] mtk_soc_eth 1e100000.ethernet wan: Link is Up - 1Gbps/Full - flow control rx/tx
Thu Feb 19 12:12:39 2026 daemon.notice netifd: 8021q 'wan.10' link is up
Thu Feb 19 12:12:39 2026 daemon.notice netifd: Interface 'INTERNET' has link connectivity
Thu Feb 19 12:12:39 2026 daemon.notice netifd: Interface 'INTERNET' is setting up now
Thu Feb 19 12:12:39 2026 daemon.notice netifd: INTERNET (12400): udhcpc: started, v1.36.1
Thu Feb 19 12:12:39 2026 daemon.notice netifd: GESTIONE (12403): udhcpc: started, v1.36.1
...
Thu Feb 19 12:12:42 2026 daemon.notice netifd: GESTIONE (12403): udhcpc: broadcasting select for 192.168.192.3, server 192.168.192.1
Thu Feb 19 12:12:42 2026 daemon.notice netifd: INTERNET (12400): udhcpc: broadcasting select for xxxxxxxxxxx.190, server 192.168.192.1
Thu Feb 19 12:12:43 2026 daemon.notice netifd: GESTIONE (12403): udhcpc: lease of 192.168.192.3 obtained from 192.168.192.1, lease time 1200
Thu Feb 19 12:12:43 2026 daemon.notice netifd: Interface 'GESTIONE' is now up
...
Thu Feb 19 12:12:43 2026 daemon.notice netifd: INTERNET (12400): udhcpc: lease of xxxxxxxxxxx.190 obtained from 192.168.192.1, lease time 1200
Thu Feb 19 12:12:43 2026 daemon.notice netifd: Interface 'INTERNET' is now up
....
Thu Feb 19 12:12:43 2026 user.notice firewall: Reloading firewall due to ifup of GESTIONE (wan)
Thu Feb 19 12:12:45 2026 user.notice firewall: Reloading firewall due to ifup of INTERNET (wan.10)

I see that “firewall” is restarted when interfaces come up (last rows), but ddns is still dead.

Despite the most verbose level of log, the only line I see in the ddns log is this (useless):

120637 note : PID '9224' terminated by 'SIGTERM' at 2026-02-19 12:06

Same as before. Restart needed for ddns and then it updates DYNU (though showing old IP address in Luci).

Does anybody have some suggestion on how to restart ddns automatically in this scenario?
any comments on the weird log messages of “permission denied”?

Thanks a lot to all.

Sorry, my fault – using Chrome led to unexpected result.
Post removed and re-posted with Edge.

Apologies.

DNS records will take time to refresh in caches, new ip will not be known to clients for 2-3 dns record TTL-s,your ddns client updates the record, but your upstream dns server will keep the old record as long as ttl on it dictates. The rest of service restarts/reloads have no impact on the rest of internet.

unless your DDNS have a DNS server of their own, then it won't be instant.
expect 20-60 min before FQDN gets updated with new IP.

Yes they do indeed provide DNS services (ns1.dynu.com, ns2, ns3 and others), but according to their forum they only resolve names of hosts using their DDNS.

I verified this is true.
Anyway I could forward the resolution of *.gleeze.com to one of their DNS and see what happens.
In theory it should use the correct IP of my ISP as soon as it gets updated by ddns client on OpenWRT.

72.51.58.2 is ns1.dynu.com, and gleeze.com is one of their free DDNS domains.
Will try as soon as the problem of ddns going "Not Running" is sorted out… any suggestion on this topic? should I post it to developers?

Thanks!

yes, you were told to only point the gleeze.com (or only your FQDN) there, in DDNS and DNSMASQ issue? - #2 by frollic.

Create a new thread about the not running issue, not mixing it with the dnsmasq/DDNS thing.

1 Like

Does not help when you are outside and try to connect home...

it does, if you host your own public (but access restricted) DNS (like I do) :wink:

There is a workaround to the “not running” status, at least for my use-case.
I will post it in a different thread and close this thread, no problem (although this is indeed a ddns malfunction)..

I still hope the developer improves ddns scripts, given the amount of issues that have emerged, as explained here. Let’s see what future holds.

Thanks

I'm not saying it isn't....

Title of the thread has been changed – good point.

So after quite a few searches and tests, here are my findings and my sub-optimal solution for this problem.
Let me start saying there are quite a few posts about DDNS “not running”, but the one most interesting for me is on GitHub where the developer is debating some improvement (yet to do as of now) about the fact that “ddns-scripts doesn't autostart on boot, even when enabled in startup for those of us who use URL ip checker”.
Although I tried all possible ways to detect IP change (network, interface, URL, script…), my two main concerns were:

  1. DDNS was showing “not running” upon reboot, needed a manual restart to kick off
  2. once the INTERNET interface did perform dhcp or was restarted, DDNS was terminated by SIGKILL and had to be manually restarted

This is the clever idea suggested by the author of the GitHub post.

This has been the base to solve my concern #1 - this is what my /etc/init.d/ddns looks like:

#!/bin/sh /etc/rc.common
START=95
STOP=10

boot() {
sleep 5 # give time to boot
/usr/lib/ddns/dynamic_dns_updater.sh -- start
return 0
}

sleep 5 has been added to avoid errors with drill when checking the DYNU DDNS, as shown below, or even “socket errors” and the like.

202015       : Detect registered/public IP`
202016       : #> /usr/bin/drill -V0 -u ``xxxx.gleeze.com`` @ns1.dynu.com A >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err ```
202016 ERROR : drill error: '1'`
202017       : Error: could not find any address for the name:`ns1.dynu.com`

Concern #2 (SIGKILL) is somehow due to the fact that I was using Network or Interface as the ip-source in the DDNS configuration – whenever the interface went flapping, the DDNS process was killed.
So I decided to use a script (found in OpenWRT documentation here) and not to bind to an interface: this will somehow slow down the awareness of the new IP (up to 3 minutes, the minimum allowed time you can configure) but will preserve the DDNS process.

Hence this is my DDNS config file:

config ddns 'global'
option ddns_dateformat '%F %R'
option ddns_loglines '250'
option ddns_rundir '/var/run/ddns'
option ddns_logdir '/var/log/ddns'

config service 'dynu'
option service_name 'dynu.com'
option use_ipv6 '0'
option enabled '1'
option lookup_host 'xxxxx.gleeze.com'
option domain 'xxxxx.gleeze.com'
option username 'myuserid'
option password 'mypwd'
option use_https '1'
option ip_source 'script'
option use_syslog '1'
option check_interval '5'
option check_unit 'minutes'
option force_interval '24'
option force_unit 'hours'
option retry_interval '1'
option retry_unit 'minutes'
option dns_server 'ns1.dynu.com'
option ip_script '/etc/ddns/getwanip'

You may also notice I used ns1.dynu.com as a specific DNS to resolve my domain : this is the semi-public DNS of DYNU you can use to resolve hos names inside their DDNS service (so I’m sure the resolution is up to date once the IP address is updated). Thanks @frollic!

The ip_script '/etc/ddns/getwanip' is the one you can find in the OpenWRT docs.

#!/bin/sh
. /lib/functions/network.sh
network_flush_cache
for IPV in 4 6
do
eval network_find_wan${IPV%4} NET_IF
eval network_get_ipaddr${IPV%4} NET_ADDR "${NET_IF}"
echo "${NET_ADDR}"
done

Now DDNS is up-and-running after reboot, dees not get SIGKILL when INTERNET flaps / changes IP address, and will update DYNU at worst within 3 minutes once the IP changes.

See an example in the log here below.


231325       : Detect registered/public IP
231326       : #> /usr/bin/drill -V0 -u xxxxx.gleeze.com @ns1.dynu.com A >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
231326 ERROR : drill error: '1'  <<=== just after interface INTERNET flapped
231326       : Error: could not find any address for the name: `ns1.dynu.com'
231326  WARN : Get registered/public IP for 'xxxx.gleeze.com' failed - retry 1/0 in 60 seconds
231426       : #> /usr/bin/drill -V0 -u xxxx.gleeze.com @ns1.dynu.com A >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
231426       : Registered IP 'cccccccccc.190' detected
231426  info : Rerun IP check at 2026-02-19 23:14
231426       : Detect current IP on 'script'
231426       : #> /etc/ddns/getwanip >/var/run/ddns/dynu.dat 2>/var/run/ddns/dynu.err
231427       : Current IP 'ccccccc.253' detected via script '/etc/ddns/getwanip'
231427       : Update needed - L: 'ccccccc.253' <> R: 'ccccccc.190'
231427       : #> /usr/bin/wget --hsts-file=/tmp/.wget-hsts -nv -t 1 -O /var/run/ddns/dynu.dat -o /var/run/ddns/dynu.err --no-proxy 'https://api.dynu.com/nic/update?hostname=xxxx.gleeze.com&myip=cccccc.253&username=myuser&password=***PW***'
231430       : DDNS Provider answered:
good cccccccc.253
231430  info : Update successful - IP 'cccccc.253' send
231430       : Waiting 300 seconds (Check Interval)

Final consideration just for my use-case.
This is a workaround not a solution, because the modified boot section of the startup script needs to be reworked every time the OpenWRT package is updated and it would be ideal to bind the INTERNET interface so that any IP change is detected real time.
Hopefully this will be doable in the future.

1 Like

Please use the "Preformatted text </>" button for logs, scripts, configs and general console output (red circle; this works best in the 'Markdown' composer view in the blue oval):

Screenshot 2025-10-20 at 8.14.14 PM

1 Like

This reminds me of the final point deserving a comment: dnsmasq.
I reverted the dnsmasq config to what it was before debugging the issue, so with cachesize '1500'.

config dnsmasq
        option domainneeded '1'
        option localise_queries '1'
        option rebind_protection '1'
        option rebind_localhost '1'
        option cachesize '1500'
        option authoritative '1'
        option readethers '1'
        option leasefile '/tmp/dhcp.leases'
        option resolvfile '/tmp/resolv.conf.d/resolv.conf.auto'
        option localservice '1'
        option ednspacket_max '1232'
        option filter_aaaa '1'
        option domain 'miotti.local'
        option nonwildcard '0'
        option quietdhcp '1'
        option expandhosts '1'
        list server '/*.gleeze.com/72.51.58.2'

Name resolution times were high and impacted client applications when cache was 0.
In the last line of the config file I added a specific server for resolving *.gleeze.com names, including the name of my host, hoping this would speed up local resolution of the new IP address once renewed.
The log confirms it is used.

Fri Feb 20 09:05:40 2026 daemon.info dnsmasq[1]: using nameserver 72.51.58.2#53 for domain *.gleeze.com
Fri Feb 20 09:06:04 2026 daemon.info dnsmasq[1]: 47 127.0.0.1/52770 query[A] home-nw.gleeze.com from 127.0.0.1
Fri Feb 20 09:06:04 2026 daemon.info dnsmasq[1]: 47 127.0.0.1/52770 forwarded xxx.gleeze.com to 72.51.58.2
Fri Feb 20 09:06:04 2026 daemon.info dnsmasq[1]: 48 127.0.0.1/52770 query[AAAA] xxx.gleeze.com from 127.0.0.1
Fri Feb 20 09:06:04 2026 daemon.info dnsmasq[1]: 48 127.0.0.1/52770 forwarded xxx.gleeze.com to 72.51.58.2
Fri Feb 20 09:06:04 2026 daemon.info dnsmasq[1]: 48 127.0.0.1/52770 reply xxx.gleeze.com is NODATA-IPv6
Fri Feb 20 09:06:04 2026 daemon.info dnsmasq[1]: 47 127.0.0.1/52770 reply home-nw.gleeze.com is xx.xx.xx.125

Did a test this morning. Google DNS is updated quickly after IP change, but DYNU's semi-public ns1.dynu.com is not :frowning:

C:\Users\giuse>nslookup xxx.gleeze.com 8.8.8.8
Server:  dns.google
Address:  8.8.8.8

Risposta da un server non autorevole:
Nome:    xxx.gleeze.com
Address:  xx.xx.xx.125  <=== new IP


C:\Users\giuse>nslookup xxx.gleeze.com
Server:  ASUS-STUDIO.miotti.local
Address:  192.168.10.1

Risposta da un server non autorevole:
Nome:    xxx.gleeze.com
Address:  xx.xx.xx.253  <=== old IP

So in the end setting cachesize to 0 is not a solution, since ns1.dynu.com takes a while to update :slight_smile:
I will be using a forwarder to Google 8.8.8.8 for *.gleeze.com :slight_smile: :slight_smile:

Thanks to all who helped!

1 Like