Adblock support thread

Thanks for this detailed explanation!

One more note: On Android devices configured with a private DNS server, this prevents those devices from connecting to the internet via that network (in which adblock is active) at all.

That's the idea. Because you can't downgrade DoT to regular DNS over port 53.

Just pushed an update that makes adblock scale its own footprint during feed processing: the CPU core count and the sort buffer size are now derived from the actually available memory, capped down automatically on low-memory devices and only opened up where there's headroom. No new config options — it just behaves.

On a 128 MB box the parallel feed jobs throttle themselves and the sort buffer stays small; on a 2 GB box it happily uses more to go faster. The whole thing is ~15 lines plus a tiny f_mem helper.

For the folks running into the processing peak: pair it with the zram-swap package and let the kernel page out cold pages compressed — no scripting, no working-directory juggling, no changes to adblock. The README now has a short section on it incl. a sizing rule of thumb.

9 Likes

Hi Dirk,

one list entry moved, games_tracking from

https://raw.githubusercontent.com/KodoPengin/GameIndustry-hosts-Template/master/Main-Template/hosts

to

https://repository.gameindustry.eu/raw/gaminghosts

Can you incorperate this list again and can I simply exchange URL in /etc/adblock/adblock.feeds to make it work meanwhile?

Thank you!

Yes, as long it's using the same data format as the previous url

You can also use the custom feed editor instead of directly editing the adblock feed file

1 Like

thanks for the info & yep, it will be included in the next regular update.

Nope, please use the Custom Feed Editor for that - only two mouseclicks away ... :wink:

1 Like

Didn't find the custom thing very intuitive to understand....please don't explain it to me, I will ignore ;- )

? hopefully you're kidding ...

  1. Switch to the Custom Feed Editor, hit fill ...

  2. Jump to the "games_tracking" entry and replace the URL via c&p ...

  3. Hit save and finally reload adblock ...
    Screenshot From 2026-06-25 17-00-10

4 Likes

Thanks anyway but still didn't find it intuitive to understand...I warned you...although at least I didn't ignored it.... ; -)

Good finding, many thanks. "google" safesearch was broken for all dns backends. Fixed with a one liner (which was accidently removed in adblock 4.5.5-1). For reference:

1 Like

Continuing the discussion from Adblock support thread:

Hello! First poster here :slight_smile: I'm trying to set custom DNS and still use Adblock. So far, I've been able to:

  1. Set custom DNS in the LAN interface. The connected peers use those DNS servers, but requests are not routed through Adblock anymore, so that functionality is lost.
  2. Have peers use the router's local DNS service, which routes through, Adblock, but then domains blocked by my provider are not available because the actual DNS resolution happens with the ISP DNS servers.

What is the right way of combining custom DNS server records and Adblock?

Thank you!

Try this
Edit the WAN interface and on the Advanced tab disable Peer DNS and enter your DNS servers of choice

1 Like

Thank you, it was that simple!

1 Like

For more advanced DNS control, take a look at the Adblock readme file under the heading ‘Firewall-based DNS control’ … but only if @egc’s approach does not meet your requirements.

The latest update of "cgi-io" seems to have broken DNS report. I reverted back to an image from July 21. DNS report working again.

Thanks for the report. Root cause is a breaking rpcd change (which has been backported to 25.12 as well. For details see:

A fix/workaround for adblock has been pushed a few minutes ago (and backported to 25.12 as well):

Fixes for banIP and travelmate will follow later ...
Fixes for banIP and travelmate has been published as well.

5 Likes

Ok great. Thanks much!!

Looks like my... unorthodox network setup has given me the joys of being the edge case outlier again :sweat_smile:

In some very quirky network setups (like mine!) the adblock/tcpdump report functionality, if set to any interface will report responses/requests for the outbound interfaces (either WAN or VPN). I found out that recently after changing my Unbound zone from Cloudflare (DoT) to a VPN resolver (plain DNS over port 53)

the recipe for disaster The setup for this to happen is as follows:

  • Get a client VPN interface, in my case its wg0
  • Enable enforce local DNS resolution in either adblock or via manual port forward
  • Setup Policy-Based Routing setup to redirect clients to the VPN interface
    • Setup PBR rule for destination port 53 (and 853 if you wish) to route packets on the OUTPUT chain through wg0 (this is the important part, this makes DNS requests originating from the router to go through the VPN client)[1]
  • Turn on adblock DNS reports, and set interface to be any

The generated report will show requests like they are coming from the wg0 interface with a local VPN ip as a client (as can be seen in the picture). That's actually correct behavior since the DNS resolution and response is fetched from the wg0 interface and tcpdump is meant to capture that. Though that's redundant to know that it's going through wg0 interface (unless you are serving requests), I just need clients (i.e everyone on LAN) DNS queries and not what the response from the server is.

For better or for worse I have >1 LAN interface with different firewall zones and I cannot just pick one for captures (if I had just one I would've!), tcpdump simply does not allow that, so I have to rely on any interface of tcpdump. So this is not adblock's fault and is not even an issue per se, everything works as designed and so is tcpdump. It does however make DNS reports a bit harder to read... :sweat_smile:

I initially assumed it was a misconfiguration on my end (it usually is) but after changing a few settings and experimenting with tcpdump via ssh nothing really budged, oh well.

What I think would work, but sadly is non-trivial to implement is to have an option to filter out (or auto-detect) a specific net ip/block in tcpdump for the output interfaces. For wg0 that'd be just adding and not net 10.0.0.1 as a tcpdump filter. Or just an option to add your own tcpdump filters for the tcpdump command that the adblock spawns, that's more than good enough for me!


[1] - This setup was specifically done so the clients that are supposed to be on a VPN do not leak DNS queries and go through a locally enforced DNS. That does mean clients that are not on VPN will have their DNS go through a VPN too, that's just a concession I made since it works for my needs.

P.S Thank you for your efforts on this solid piece of software! :slightly_smiling_face: I cannot imagine using OpenWrt without adblock and banip...

1 Like

Good idea,
I've added support for the new 'adb_repfilter' option to pass an additional, user defined tcpdump filter expression, see readme for details.

4 Likes