There are many places where DNS parameters are involved, such as in Luci: dnsmasq, br-lan interface and WAN interface, plus in the GL GUI: AGH, which can be confusing for newbie users.
So the GL GUI simply has to set up DNS (Network-> DNS) in one place, which corresponds to Luci br-lan interface, and this is best able to work on all clients of the router.
If DNS custom set up in Network-> DNS, the router will prefer Network-> DNS for DNS, even if the WAN port is default.
With all due respect, in the mainline openwrt the router itself (e.g. package manager and other proceses running on it) uses WWAN/WAN. DNS sertings from LAN are only used ny the router if it's configured as a dumb AP.
Are you staying that in the GL firmware that is different?
I have submitted the requirements to PM for evaluation.
Since the GL firmware has many DNS related functions, such as VPN, ADG, Parental Control, etc., the DNS processing method is relatively complex, compared to Vanilla OpenWRT.
Thus, the DNS setting is unified which on GL GUI > NETWORK > DNS, so that newbie users are not easily confused, and they are configured more quickly, without causing problems.
There will be a difference with Vanilla OpenWRT, because Vanilla OpenWRT has many places to set DNS, WAN, LAN, DNSMASQ (DHCP), etc., which may cause some newbie users to not understand which one can take effect.
Anyway, if the PM considers adoption, it will be developed.
With all due respect, I do not see how what you're saying above is relevant to my original request.
As I do not ask for anything to be changed in the GL UI (and so newbie users have nothig to worry about).
What I'm asking is for the GL software to keep the DNS changes (for wan/wwan) I'm making in the LuCi UI across reboots.
And since I can still make those (the problem is that those are not saved across reboots) and every other dns-related functionality you mentioned is still working fine, your explanation above unfortunately doesn't answer the question why those can't be saved.
The router itself (i.e. the its software) uses the dns set in wwan/wan. In my scenario I need the router to use a specific dns. And I can specify it in LuCi by unchecking the "use advertised dns from upstream" and specifying the one I need in the wwan/wan settings.
If I do not do that, the routet uses dns advertised by an upstream router (e.g. my ISP's) which is what I'm trying to avoid for securoty reasons.
But the custom dns I set in wan/wwan gets reset every time I reboot the device. And I'd very much like and won't do that but rather persist it - just as vanilla openwrt does.
PM team has evaluated this request.
As the DNS set in GL GUI -> Network -> DNS is preferred for the DNS set by WAN/WWAN (if can be setted).
Thus, if you require to manually setup the customize DNS, please configure it in GL GUI -> Network -> DNS, and all DNS requests from the router will go to this DNS server, not go to the ISP DNS.
Omg.. I don't know how many times I have explained (above) that it's now what I ask! The DNS settings I'm asking is the DNS that is used by the router itself (and yes, I want the router DNS and the client DNS to be different). It can only be set via native OpenWrt UI (LuCi) by changing WAN DNS setting.
But if I do so, that setting gets lost upon reboot. Andn I'm asking to change that - i.e. that the wan dns setting is retained across reboots.
But may I know what features (or plug-in?) of the router itself needs to use different DNS with clients?
Update:
Please upgrade to v4.7.4 firmware, I tested this version, customize configure the DNS of the WAN on Luci, and the custom DNS of WAN still saved and works after rebooting the router.