logoalt Hacker News

System-level ad-blocking in Android

25 points • by birdculture • today at 8:29 PM • 15 comments • view on HN

Comments

somebudyelse • today at 9:18 PM

Highly recommend https://nextdns.io, great for all kinds of blocking stuff. Plus Firefox or Edge for uBlock support.

➕ show 1 reply
BLKNSLVR • today at 9:51 PM

Whenever I'm out and about I connect to my home system via wireguard VPN, and all DNS traffic through my home system is funneled into PiHole. I also have a healthy collection of DNS block lists setup on the PiHole (which I'm currently setting up a site to explain/share).

I also have a VPS setup in a similar fashion in case my home connection fails for one of many reasons.

I try to only practice safe internet. Raw-dog the internet and you're asking for an infection.

figmert • today at 8:57 PM

I can't recommend AdGuard enough. It works across devices, and just does all the DNS level blocking everywhere. I've been able to install it on my parents' devices, my siblings' devices, and more places. They have apps for just about any device. On top of that, you can install user scripts and use them on your mobile phones even if your browser doesn't support them (does require a CA cert being trusted).

My biggest issue is I can't use it while I'm connected to Tailscale, but my plan is to install AdGuard Home on my homelab and have that take over instead. It does remove many of the functions, but it's better than the alternative

xnx • today at 9:42 PM

I want to use something like this, but I don't think I can when also using VPN by Google on an unrooted phone.

janwillemb • today at 9:14 PM

I point "private DNS" to my VPS with pihole and stunnel, works quite well. Adguard as private DNS is also effective.

teo_zero • today at 9:44 PM

Why do you need an app at all? Can't you just manually set a private VPN in the settings?

pmontra • today at 9:21 PM

I am using Blockada 5 from https://blokada.org

Onavo • today at 8:57 PM

Sigh, that's a lot of words to describe DNS based adblocking.

In Android you can either set your DNS server in the system settings or via the VPN API.

Sample code here https://github.com/t895/DNSNet/blob/a-couple-updates/service...

They both do the same thing. There are local device-only resolver apps like

https://rethinkdns.com/

https://github.com/m66b/netguard

Another famous one is DNS66 but it's sadly unmaintained. Avoid apps with the word "ad" in their name, they are usually semi commercial and can't be trusted.

Do note all of these methods can be overridden on the app level e.g. a lot of browsers come bundled with first party VPNs or use their own built-in resolvers.

If you want something more reliable, Firefox on Android with the UBlock Origin and Sponsorblock extensions is still the gold standard. Though do note the Android Firefox is extremely slow compared to the Chromium based browsers.

For app level ads, use an app patcher like https://github.com/morpheapp which can remove all in-app advertisements and inject sponsor blocking code.

➕ show 1 reply
alekescu • today at 8:58 PM

There is a special irony to an article about ad blocking containing an apparent undisclosed ad for Nord.

➕ show 5 replies