I'm running into a strange Split DNS bug and wanted to see if anyone's hit something similar before I keep digging.
Setup:
Failing device: Linux Mint 22.3, Tailscale 1.102.3 Working device (VPS): Ubuntu 24.04 MagicDNS enabled Global nameservers override on (two self-hosted Pi-holes) Split DNS entry: jnelson.xyz → a Tailscale IP running a small dnsmasq resolver
The bug: On the VPS, everything works exactly as expected — tailscale dns query mail.jnelson.xyz explicitly says "Forwarding to resolver: [tailscale IP]" and resolves correctly.
On the Mint desktop, the same query instead says "Multiple resolvers available" and just picks from my Global override Pi-holes, completely ignoring the Split DNS route — even though tailscale dns status on that same device correctly lists the route as configured.
I pulled tailscale debug netmap from the failing device and confirmed the coordination server IS sending the correct route down:
json "Routes": { "jnelson.xyz": [{ "Addr": "100.x.x.x" }] }
So the server-side config is correct — it's just not making it from the netmap into the device's actual local resolver config (resolvectl status shows no jnelson.xyz DNS Domain on the failing device at all).
What I've ruled out:
Local DNS cache (flushed, restarted tailscaled) Exit node routing (tested with exit node set to the same device hosting the resolver — no change) Client version — was on 1.98.10, updated to 1.102.3 (current at time of posting), same result
Currently working with Tailscale support on this (ticket in progress), but curious if anyone else has run into Split DNS silently not applying on specific devices while working fine on others, especially combined with a Global nameserver override. Any known gotchas with systemd-resolved specifically?
Source: r/Tailscale · by /u/joninjax1