It probably bears down to the hybrid deployments in OpenWrt and the patchset in TOS:
OpenWrt
- hybrid DHCPv4/DNS via
dnsmasq
as default - DHCPv6 via
odhcpd
as default - (L)UCI for configuration, another hybrid since part of it manipulating the UCI network section and another part the UCI dhcp section
TOS
- DHCPv4 via
dnsmasq
as default - DHCPv6 via
odhcpd
as default - DNS via
kresd
by default (dnsmasq
for DNS turned off) - Foris for configuration (which not always aligns with UCI) with underlying
resolver
for DNS configuration
By default in OpenWrt the ISP’s DNS sever is set and can be controlled (peerdns
| dns
) via (L)UCI in the network section. This glues/ties it with dnsmasq
and eventually propagates the DNS server to clients.
Since dnsmasq
's DNS functionality is turned off in TOS not every thing done in LuCI applies the same as in OpenWrt.
One can get easily tangled up in all of this hybrid jungle and start wondering what is what. For my part:
- not using LuCI or Foris for any network/dns/dhcp configuration
- removed
dnsmasq
- utilise
odhcpd
for DHCPv4|6 which propagates the local DNS resolver instance to clients - utilise
undbound
as local DNS resolver instance that does not listen globally but only on the lo and each other dhcp subnet