I have been using the hosts file based ad blocker AdAway for at least two years. It runs on my smartphones and tablet, all rooted, thus I can run a VPN simultaneously. Since it has always worked flawlessly, I never really took the time to compare it to other similar apps.

But as of today, there hasn't been an update since 2024.

I am asking for alternatives and the reason you think they're better.

all 21 comments

sorted by: hot top controversial new old
[–] 10 points 5 months ago

Use Mullvad's dns servers https://mullvad.net/en/help/dns-over-https-and-dns-over-tls#android. Their vpn also has dns blocking capabilities.

  • source
  • [+] 8 points 5 months ago (3 children)
  • [–] [S] 2 points 5 months ago (2 children)

    That's a great idea for the ad blocking, which is what I am writing about in the OP, but I also would like to be able to block specific hosts and IP addresses on a hosts file level, in order to stop system apps from connecting.

  • source
  • parent
  • hideshow 2 child comments
  • [–] 4 points 5 months ago (2 children)

    On fdroid Dnsnet and Blockads are nice, i also used and help translate Athena.

  • source
  • hideshow 2 child comments
  • [–] 3 points 5 months ago*

    Used adaway, too but long before 2021. Good alternative is to host a small vps server, install adguard home, use hosts confs as common and then use DoT on a unrooted phone to this vps. GrapheneOS for example.

    Or easier, just use a DoT provider with adblock which you trust. Quad9, adguard-dns and so on.

  • source
  • [–] 3 points 5 months ago (3 children)

    There's a magisk module for this.

  • source
  • hideshow 3 child comments
  • [–] [S] 1 point 5 months ago (2 children)

    You mean systemless hosts works without being called/used by an app? Do you know the systemless hosts file path?

  • source
  • parent
  • hideshow 2 child comments
  • [–] 1 point 5 months ago* (last edited 5 months ago) (1 child)

    I think it had a configurable path? Or at least it told you. But sure, automatic updates is another matter. I don't think it can do that.

    Can't you just point AdAway to Stevenblack's hosts or something?

  • source
  • parent
  • hideshow 1 child comment
  • [–] [S] 2 points 5 months ago

    I think we've got off track. Stevenblack's is already shipped with AdAway. AdAway works perfectly fine with Magisk's systemless hosts. I have no other reason for wanting to change to another app than the fact that it hasn't been updated since 2024.

  • source
  • parent
  • [–] 3 points 5 months ago (2 children)

    An Android settings screen showing the "Select Private DNS Mode" dialog menu. The "Private DNS provider hostname" option is selected, with the hostname field filled out as "dns.adguard.com".

    This is all I do. It works pretty well. I sometimes have to turn it off briefly to log in to airplane wifi or such.

  • source
  • hideshow 2 child comments
  • [–] [S] 2 points 5 months ago (1 child)

    Thanks! For this, I am using Mullvad's ad blocking DNS. 😊 I want to be able to block specific hosts and IP addresses on a hosts file level in order to block certain system apps from connecting.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 2 points 5 months ago

    FWIW, if you self-host Adguard, you can do those things without needing to bother with touching individual hosts files. It'll also then just work for every device on your network. Create your own domain and expose adguard via a subdomain and you can just point your phone at your DNS server while you are on external networks too.

  • source
  • parent
  • [–] 2 points 5 months ago (2 children)

    You also can put the hosts file made for a Linux system into the mounted /system/etc/hosts, the system partition /system can be mounted on /mnt or /mnt/system too.

    As you have root, or with just a custom recovery, you can change it, just going to the recovery, using adb in there and mounting the system partition as rw, then moving the hosts file to the mounted expected location.

  • source
  • hideshow 2 child comments
  • [–] [S] 1 point 5 months ago (1 child)

    Interesting! And thank you! I already see a hosts file under /system/etc/, for now only containing localhost. Could I not just edit this file and be done? I know too little about how Android works...

    If I do need to mount /system, can I not do it from the stock recovery? I think I saw a "mount system partition" in there the other day.

  • source
  • parent
  • hideshow 1 child comment
  • [–] 3 points 5 months ago*

    I know too little about how Android works...

    Yeah, this is a more advanced thing, I think the other methods described on the post are better, if you don't have a custom recovery AND custom rom. If the device is locked or have the stock rom, it might not boot, because of the signature checking on the image.

  • source
  • parent
  • [–] 2 points 5 months ago

    I use controld.com DNS over TLS. They have a free ad blocking and malware blocking DNS that works incredibly well.

  • source
  • [–] 2 points 5 months ago

    I use DNSnet on my phone, which has the benefit of not requiring root

  • source
  • 2 comments in c/privacy@programming.dev view that post
    [–] 8 points 5 months ago

    I use ublock origin for my browser and use Mullvad DNS with content blockers. I don't know what VPN you use but as long as you can set your own DNS then Mullvad servers should work.

    If your router allows you to set the DNS server you can block ads network wide.

    https://mullvad.net/en/help/dns-over-https-and-dns-over-tls

  • source
  • [–] 1 point 5 months ago

    https://nextdns.io/

    Does anyone know if this DNS adblocker is safe to use? I tested it briefly and it seems to work as well as rooted AdAway

  • source