Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • 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.

  • >a rogue ad-blocker app is exactly as dangerous as a rogue VPN service. Fortunately, because these ad-blocking apps are usually open-source, there are limited opportunities for bad actors.

    I find it naive to state this when earlier he noted that he's suspicious of free services without a clear funding model.

    Sure, open source is certainly better than closed source, but its not like somehow magically it prevents exploitation. There's plenty of examples especially in a small project like this with few eyeballs. So why question the funding model of a free VPN but not question the funding model of an open source project? We just assume its being done out of good will? I find that perspective naive.

  • I point "private DNS" to my VPS with pihole and stunnel, works quite well. Adguard as private DNS is also effective.
  • I self-host my own DNS over TLS for domain-level adblocking. Maybe not the wisest decision, but it's working well so far and it doesn't require a lot of maintenance now that I've refined the setup.

    I use a DNS registrar and certificate that support wildcards. That way, I don't have to leak my DoT subdomain and I gain some obfuscation. Android's Private DNS option doesn't support alternate ports, so I'm forced to use the default.

    I use nginx as my reverse proxy and TLS terminator. At this stage, I apply rate limiting and subdomain filtering.

    Then nginx forwards the streams to Unbound, which filters out any local IPs from the responses to avoid leaks.

    Finally, Unbound forwards requests to my Pi-hole, where the magic happens.

  • My current approach is AdGuard Home, WireGuard VPN to my home network the majority of the time.

    This was all pretty simple to setup given hardware that supports VPN, DDNS, etc.

    Worth noting too that just blocking hostnames is not enough; Netflix, as an example, uses Google's DNS servers (plain UDP) on some/most clients.

    If the network the client operates on can't prevent DNS to other servers, that's a simple "bypass" vector.

    AFAIK, the best you can get, given sufficient time, patience, and hardware is:

    • something like the above

    • blocking outbound DOT (853), DOQ (784, IIRC) excepting, perhaps, upstreams you trust

    • blocking HTTPS to known DOH endpoints (Cloudflare, Google, etc)

    • DNAT for plain DNS cases like the Netflix example above. (to your DNS server(s))

    Even that there's plenty of hypothetical opportunities for clients to just use another DOH resolver outside of your domain/IP block lists.

  • Highly recommend https://nextdns.io, great for all kinds of blocking stuff. Plus Firefox or Edge for uBlock support.
  • 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

Explore Birbla archives