DNS question with Adguard on a Pi (Home Assistant)

Maybe a simple question but haven’t been able to get this sorted out. Been with Tailscale for a few days and love it so far. I have it installed on:

  1. Raspberry Pi 4b with Home Assistant OS and the TailScale Add-On which also has Adguard Home
  2. MacBook Pro
  3. iPhone

I would like to use Adguard Home as my DNS but have a bunch of different IP options and have tried some combinations with inconsistent results.

Started off using the TailScale IP address for the Pi but then did not see any of the computers as clients in the Adguard Home Screen. Changed to include the two IP addresses given in the Adguard Home Setup Guide and saw the different clients but now have slow response time and sometimes unable to load websites from work.

Adguard Home shows:
Configure your devices

To start using AdGuard Home, you need to configure your devices to use it.

AdGuard Home DNS server is listening on the following addresses:

  • 192.168.1.XX
  • fd74:XXX:XXX:XXX:XXX
  • 172.XX.XX.XX

TailScale has my Pi/Home Assistant IP as:

I have tried just the 100.XXX.XXX.XX

Also both the HomeGuard IPs

And then all three

Have not tried what looks like MAC addresses.

If a site doesn’t load and I disconnect from TailScale, it load instantly (my DNS for network is Oh and I have the TailScale settings to override local DNS.

Any suggestions for getting this working correctly?


After reading one other post here, I retried setting DNS in TailScale settings to the 100.XXX.XXX.XX. But still find that sites are not loading on the MacBook working remotely from home network with TailScale connected. All sites load quickly when disconnect.

If I allow local DNS and am connected to TailScale, all sites load fine.

Do you have nameserver added in your DNS admin console?

in TailScale - DNS, I have the TailScale IP entered under Global Nameservers. But if I set that and click the Override local DNS, I essentially have no DNS and websites don’t load

The MagicDNS nameserver should be set to, then the global nameservers should be a public DNS server, or that of your ISP. I use or generally.

Won’t that mean that I am using Cloudflare and not Adguard for all DNS then?

I would set the Adguard as the first global nameserver, then a public DNS server after that to catch anything when Adguard isn’t available.

Also, in your adguard configuration, what is the value for bind_host ? It should be to bind to all interfaces. On my machine that is in /opt/AdGuard/AdGuardHome.yaml

If it’s not listening on your tailscale 100.x.x.x ip address, it won’t help over your tailnet