It means different sets or sources of information too. For example, things not covered under your definition:
- different DNS server infrastructure derives the same answer altogether (e.g. enterprise DNS inside an Autonomous System, separate from their global records)
- hense, could have a different keyset (that part would be different "response" I suppose)
- privately replicating to a global zone server - which will give answers to global queriers, I thought this is what the OP was somehow doing, without BIND and over DDNS (could be done inclusive of point a) - the global NSes are just slaves of a real private, unlisted master (this could be inclusive of different sets of information, since I suppose the NS and SOA could differ)
- a public user who zone transfers to servers with open access - the records of their private resolver for use with all lookups
- e.g. a university campus transfers the zone in-whole to hardened responders; or
- vice versa - a private user who transfers to private servers with closed access and usage, from a zone on a public nameserver
- a zone scenario that has more than 1 horizon (CNAMES are good here too)
- forcing redirection of lookups to the geographically closest server possessing the record
- different hosts are assigned different DNS servers (e.g. monitored/logged lookups, unmonitored lookups)
This is invalid BTW, a CNAME cannot sit in the root of a zone, it must be an A record so you must CNAME www.example.com
to lookup example.com
...and I never understood you doing a CNAME to a wildcard anyway...and any rate, that's when I thought the Local IP would differ locally and be identical with a single WAN IP globally...so no global CNAMEs needed. (edit, and no local either, if you truly used the real hostnames and setup DDNS properly).
And for entirely separate reasons, the folks at dropwww.com and no-www.org would get you!!!
Have a good weekend all...let's help solve this one...
EDIT...
Whoa I think understand your problem now...
My log:
074552 : Waiting 600 seconds (Check Interval)
075552 : Detect registered/public IP
075552 : #> /usr/bin/nslookup example.com >/var/run/ddns/xxxxxx.dat 2>/var/run/ddns/xxxxxx.err
075553 : Registered IP 'xxx.xxx.xxx.xxx' detected
075553 info : Rerun IP check at 2020-03-06 07:55
075553 : Detect local IP on 'network'
075553 : Local IP 'xxx.xxx.xxx.xxx' detected on network 'wan'
Please tell me you're updating a 2nd domain that isn't the zone in question...then I could understand the idea of doing a CNAME to that.
I would assume your OpenWrt would get the IP you assigned...or was received by DHCP to the host...hence no update...or a private IP...?
I would think it would always change to the WAN IP...and this leaves your local lookup unaffected.
Please don't say this has been your issue all along...cause I don't see the problem:
or you're using, script or URL???
or giving an [incorrect] DDNS update somewhere else?
OMG...PLEASE DON'T say you're using
www.example.com
; or
example.com
as the router's (or any device's) local hostname?
I really still don't get how a simple setup, even with a public domain won't produce:
- local lookup local (your devices receive an IP and announce their hostname, and you statically added the records); and
- global lookup global (all DDNS names go to the proper IP; cause you set them up that way - you only have 1 WAN IP and if you get another, that config would be pointed to it instead - this cannot be difficult with 1 WAN IP)
...even if DDNS sees a Local IP via nslookup
and then checks WAN before updating.