How to Make mDNS Discoverable on Tailscale
One thing I’ve learned the hard way while I was tinkering with VPN long ago — don’t use bonjour or .local addresses over VPN. Most of the times .local addresses do not resolve over VPN, and trying to make it happen is often not worth the effort. In my case, with some Pis and NAS, I had made sure they would manually pick an IP addresses that would be out of DHCP range. It’s a story for another time, but there are home routers with broken DHCP.
If you happen to have existing mDNS or Bonjour setup, it’s hard to simply migrate them all over to IP or MagicDNS. For example, if an app was using MyNAS.local as the destination, it might be prudent to use an IP address (e.g. 192.168.0.0) or MagicDNS (e.g. MyNAS). But if there are too many of them, use this method for the time being. From Tailscale Admin Console > DNS > under Search Domains, add the .local address in question as search domain (e.g. MyNas.local).
In a long run, it’s best to figure out more robust solution than to use mDNS. In my particular case, I had to figure out how my routers handle DHCP, specifically how and why I cannot reserve an address per devices. In my current setup, I specifically left some range of addresses for static IPs. It’s a small management — no doubt higher tier routers have better softwares.

Comments will be automatically closed after 30 days.