success at last with pi-hole

Pi-Hole working properly

Two weeks ago I wrote about trying to install Pi-Hole ( https://pi-hole.net ) on an old Raspberry Pi 3. It didn’t go well, as documented in the link below. I decided the next time I would tackle this I would use one of my unused Raspberry Pi 4s.

The next time came, and I slowly began to build my second Pi-Hole system. I used a Raspberry Pi 4 Model B Rev 1.1 (per cat /proc/device-tree/model) with 2GiB of DRAM. I collected four Raspberry Pi 4s with memory of 1, 2, 4, and 8 GiB on board. They don’t make the 1 GiB variant anymore, and besides, I’d already seen what a 1 GiB Raspberry Pi wouldn’t do, so I played it safe and used the 2 GiB variant. The Raspberry Pi was already mounted in a Flirc case ( https://flirc.tv/more/raspberry-pi-4-case ) so I was good to go.

The earlier attempt saw me trying to reuse an existing Raspbian/Raspberry Pi OS installation by updating it in place. That seemed to cause some additional problems with Pi-Hole. This time I did a clean install of Raspberry Pi OS (bullseye), and the 32-bit official version. Since the Raspberry Pi 4 had less than 4 GiB, it made no sense to run it in full 64-bit mode. Furthermore I didn’t know if Pi-Hole would run on a 64-bit version of the OS, so I took the safer conservative path and installed the 32-bit OS.

I pretty much installed Pi-Hole the same way I tried the first time, which was to clone their git repository and install out of the local copy. Installation worked flawlessly as before. The key difference is that Pi-Hole, when the DHCP assignment was finally transferred from my wireless access point to my newly minted Pi-Hole system, worked as advertised.

Not only is the general home network ad blocking working, but a key feature that’s been missing is DNS lookup. I used to have that feature in an older wireless access point, but it mysteriously disappeared one day after a firmware update to the WAP and I never found a way of re-enabling it. When I switched to my current WAP, a Netgear Orbi RBR50 with a pair of RBS50v2 satellites, I still couldn’t enable that feature. But when I installed the Pi-Hole and turned it all on, all of a sudden I could ping or ssh or go to a web page on my internal home systems by using the host name, not by having to look up the IP address on my WAP’s attached devices page. I guess for the majority of users that’s not an issue, as they just turn on, get connectivity, and head out into the wild wild internet. But for someone like me, who’s constantly working with many internal little systems inside my home network, accessing one system within another by its host name is an important feature for me.

The biggest fan of this so far is my wife. When I told her what I was doing she just shrugged her shoulders and said OK. Then when she went to CNN she immediately exclaimed “Where are all the ads?” It was at that point she fell in love with the little Pi-Hole. As a retired english professor she reads a lot, including on-line news. I’ve set her up with an HP Chromebook, which she uses for nearly all her web surfing. Ads for all the sites she visited were really getting to be a drag, sometimes causing a page to lock up. With the Pi-Hole all that is gone. All of it.

When I go to CNN myself I see a very clean page with nothing but news and stories. Other sites that are heavily dependent upon ads, especially those digital clickbait versions of the National Inquirer, are gone. All of them. Ars Technica, Slashdot, Yahoo, Teslarati and everywhere else are now just clean, with nothing but readable content. They even seem to load faster. Even though I’ve had this running less than 24 hours, I can’t imagine ever turning it off; I can’t believe I waited this long to install it.

Some Observations

  • The single largest client with requests that’re blocked is my iPhone 11 Pro Max. I don’t know why and I don’t know what on that device, but it does peak my interest quite a bit.
  • I have traffic all the time. Even when the household is asleep, between the hours of midnight and 06:00 in the morning. That includes both permitted and blocked DNS queries. Again, I have no idea what’s happening there, but I sure would like to know.
  • I turned off the graphical desktop using raspi-config. Memory usage sits around 7%. I also note via the webpage that the processor temperature is around 41°C. I attribute that low temperature to both the light processing load as well as the Flirc case. Pi-Hole does indeed appear to be very efficient with resources and processing.
  • CommMan, the application that was installed when I performed the OS update, and that caused Pi-Hole to fail the first time because CommMan was sitting on the DNS port, is not a part of a clean Raspberry Pi OS install. Because it didn’t show up this time I forgot about it until I was reminded in my prior post of failure.

Endnotes

well, that didn’t work very well — /2022/01/11/well-that-didnt-work-very-well/