Earlier in the week, I had a Pi-Hole update. I always like to keep Pi-Hole updated and it usually updates without a lot of issues. I moved to the following versions in my local Pi-Hole that sits on a Raspberry Pi:
Web Interface v5.8
Over the next day and some change, I noticed a TON of ads across every device. Frustrated that something wasn't working right, I gave myself some time to explore this afternoon and wanted to get something out there in the event it's helpful for others.
What I noticed first and foremost is that DNS resolved from my Domain Controllers vs. my Pi-Hole. Yes, you read that right - I have a few Domain Controllers at home. Prior to Pi-Hole, this is how I'd dish out DNS for my devices at home and my Domain Controllers are obviously backup in the event something fails on the Pi-Hole. I checked everything: the Pi-Hole services, Pi-Hole being online/up/functional, etc. I kept digging and digging and digging. All of my nslookups wouldn't resolve from the Pi-Hole itself, which forced me into the Pi-Hole forums. This is where I found my answer!
Ultimately I found out my gravity list was empty. I followed these steps and I'm hopeful finding this out helps you in the future (should this ever happen post an update to Pi-Hole).
Get into vim (or nano - I use vim) and edit the following file:
sudo vi nano /etc/resolv.conf
Edit nameserver 127.0.0.1 to nameserver with your preferred third party DNS service. So the resolv.conf file will look like this:
I actually have my Domain Controllers set to hit Google's DNS for queries that my home domain doesn't know about, so I edited my resolv.conf to hit a local Domain Controller vs. 22.214.171.124. After you've edited the resolv.conf file, save the file and exit.
Run pihole -g to rebuild gravity. This task takes a bit of time to complete. I even rebooted my Pi-Hole to be on the safe side and life has been enjoyable ever since!