AdGuard Home is a network-wide ad-and-tracker blocking DNS server with parental control (adult content blocking) capabilities. Its purpose is to let you control your entire network and all your devices, and it does not require a client-side program.
AdGuard Home provides a beautiful, easy and feature-rich web interface to easily manage the filtering process and its settings.
Installation
The installation of this add-on is pretty straightforward and not different in comparison to installing any other add-on.
The primary goal of our add-ons project is to provide you (as a Home Assistant user) with additional, high quality, add-ons that allow you to take your automated home to the next level.
I am Franck Nijhof, and I have 30 years of programming experience, in many languages. I am using this experience to work on the Home Assistant project by giving back my knowledge and time to the open source community.
The add-on you are currently looking at right now was developed/packaged by me. It is not the only add-on I have created; there are many many more
However, I have a problem… I am an addict. A addict that is. Lucky for you, I turn that C8H10N4O2 (caffeine molecule) into code (and add-ons)!
If you want to show your appreciation, consider supporting me for buying a cup of high octane wakey juice via one of the platforms below!
Enjoy your add-on, while I enjoy the brain juice.
Thanks for all the
…/Frenck
P.S.: In case you want to ask me a question: AMA (Ask Me Anything). Most of the time I am online at the Discord chat. (I go by @Frenck in there as well).
Pi-hole has more capabilities, but if you are looking for a simple, quick ad-blocker then this is a nice and lightweight option. I’ve also picked up some rumors about a Home Assistant integration… (with automation capabilities)
AdGuard Home is more lightweight, takes up fewer resources and additionally provides adult content filtering. It also supports DOH (DNS over HTTP) and DNS with TLS.
Upon starting the addon I get the normal start-up messages, then this:
2019/01/10 21:56:10 Creating the UDP server socket
2019/01/10 21:56:10 Couldn't start forwarding DNS server, cause: couldn't listen to UDP socket, cause: listen udp :53: bind: address already in use
Then it appears to try again, generating the same error repeatedly.
If I change the DNS port from 53 to something else, the addon starts and I can access the WebUI just fine.
Wohoo!
Since the launch of AdGuard Home I planned to try this. Also trying to find a suitable docker image etc.
And here we go, perfectly integrated into Hass.io.
Setup took no longer than 5 minutes, and the first ads are already blocked. The DNS with TLS is a great and appreciated plus.
Well done @frenck, thanks!
I am having trouble with this add-on.
I got it to load and have access to the web interface, but it isn’t blocking any ads.
I’m sorry I am not technical, and presume that is my problem.
I have set a static IP on my raspberry pi.
The static external DNS server issue is where I am uncertain.
I have Google WiFi. My DNS is set for automatic (8.8.8.8).
Should I change this setting to the ISP’s DNS? If that is my likely issue, other than making this add-on work, what potential risks come with this setting as opposed to the automatic setting?
I appreciate your patience and help!
After you have the addon running, it would be best to check the wiki for AdGuard Home itself for more information on how to use it:
In short, you change your router’s DNS to the box running this addon, then in the addon set the upstream DNS to google or cloudflare, or whatever you would like.
I’m not sure if you are having this problem for the same reason I am, but I think I found the solution for mine.
I’m running HassIO on an Ubuntu box. Ubuntu uses systemd-resolved which starts at boot and binds to port 53.
The “solution” was to disable it, by running Sudo systemctl disable system-resolved in the Ubuntu host, then editing /etc/resolv.conf so only my router was listed as a nameserver. Then reboot the host.
I’m not sure if this is the 100% correct way to fix the issue, but it seemed to work.
surely thats the DNS server(s) that you want Adguard to use for its DNS queries… ie: 8.8.8.8 or 1.1.1.1 or the default DNS server of your ISP. You would point your devices to Adguard (your RPi IP) but Adguard needs to resolve DNS queriers too so it needs an EXTERNAL IP to do so, such as those I gave above
Thanks! But where do I need to set this? Inside the AdGuard panel?
Currently I can’t access the panel. It asks me for my username and when I use my HA login, it tells me that this is wrong. Is this maybe caused by the activated 2fa?
No, inside the adguard-home addon, under settings, is where you set your Upstream DNS servers.
The setting a static external DNS server for the PI is something separate, and not 100% necessary it seems, since I never bothered doing it and everything still works fine.