Consider DNS options for optimal performance.
Consider DNS options for optimal performance.
There are options that could assist, such as upgrading your outdated router to an open-source project like OpenWrt, then adding adblock. Alternatively, you can set up Pi-Hole on any old device and instruct the router to use its DNS to that device. Another choice is installing pfSense on a device that functions as a router, and simply add pfBlocker to cover all devices.
I would run Pi-hole locally on a compact device such as a Raspberry Pi, even though it isn't officially a Raspberry Pi.
I employ pi-hole within VirtualBox due to the virtual bridged networking setup. When installing VirtualBox, it prompts about the virtual network adapter four times; you should enable it. After setting up pi-hole and adjusting DNS settings on Debian, the GUI becomes unnecessary. I run the VM with minimal memory usage—about a quarter of it. Exiting lets me save the session, avoiding a full restart that takes more than two minutes. I simply wait around 20 seconds and resume from where I left off. For self-hosted DNS, consider Unbound. When you access a site, your IP changes every 175 seconds. My cache hasn’t been refreshed in over six months (possibly longer), and I haven’t encountered problems. Although I occasionally switch to Firefox’s dns-over-HTTPS for quick bypasses, I usually stick with that. All this frequent DNS refresh feels unnecessary. The Unbound documentation references an RFC suggesting a cache duration of 1–3 days. While it won’t drastically speed up your network, it would be interesting to stop requesting the same IP every 175 seconds and instead store it locally for a few days. Pi-hole clearly highlights this behavior each time. Unbound uses authoritative servers that go straight to root DNS, making caching beneficial to ease the load.