Announced IPv6 DNS servers aren't advertised to the clients

Hello,

I've configured IPv6 Tunnel following Hurricane Electric 6in4 tunnel guide and also added Public NAT64 DNS addresses from https://nat64.net/ into Luci portal > Interfaces » lan > DHCP Server > IPv6 Settings.

By configuring the DNS addresses in LAN settings, I wanted to achieve advertisement of the Public NAT64 DNSes to the clients without the need to add them manually on each machine.

But what I've noticed is that my Windows machine doesn't get all of them - they are 3x and it sets 1st and 3rd, but the second DNS address is different. So I guess it gets the list of DNSes from somewhere else.

On other side my Mac machine obtains and sets the DNS addresses exactly the way I've set them in LAN interface settings..

I've resolved the issue on the Windows machine by settings those 3x Public DNSes on the WAN6 interface as well. It's under "Advanced Settings" tab > "Use custom DNS servers" field.

But how is this even possible? Mac and Windows machines to require different DNS configuration on the router in order to fetch and set them in their corresponding network settings? Do they use different mechanism which triggers that difference?

Thanks in advance!

By default, the router itself is the LAN's DNS server, and it is the only DNS server advertised to clients by DHCP. The option dns settings in network interface blocks are used internally by the router's DNS process. They are not advertised to clients. No matter where option dns is used in the /etc/config/network file, every one listed is placed into a single list of DNS servers that are consulted in a failover / round-robin fashion. There's no affiliation with which network makes the request. It only makes sense to configure DNS servers in the wan interface block.

To make DHCP advertise alternative DNS servers directly to clients, use option dns in the /etc/config/dhcp dhcp block for the network. Clients of course are free to use or ignore that information.

2 Likes

To add to @mk24 some browsers (Chrome/FireFox) use their built-in DNS (DoT or DoH) so will not use your router as DNS server.

You can disable that in the browser settings

2 Likes

Microsoft Windows by default will have problem with DHCPv6 (yes it can work with it but you need manual registry change), so most likely OP's Windows is in default config, and if Android is on network it can't even get an IP from DHCPv6.

The best way seems to setup RA on LAN side and use RDNSS to push DNS for clients.

3 Likes

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.