This is going to be a short one because it is more of a rant than anything else.
On the 3rd of December, my sister called me, telling me that her internet wasn't working. This is two days after I set up a PiHole on her network to block ads and trackers.
She told me the problem started to happen after she force-shutdown her computer.
My first thought was that the PiHole was glitching out. So, I asked her to reboot the PiHole and her router. No luck. Next, I asked her to reset the DHCP settings on the router to make sure the PiHole was being used as the DNS server. Still no luck. Then I asked her to connect to the router directly via Ethernet, bypassing any Wi-Fi issues. Still no luck. At this point, I was stumped. So, I asked her to use her phone's hotspot to see if the issue was with her ISP. Even hotspot didn't work. I asked if other devices on her network were having the same issue. They were fine.
This was the point where I realized that the issue was probably with her computer. I asked her to refresh the dns settings, cache etc. No luck. From here on out I tried these:
- Disable firewall
- Disable antivirus
- Reset network settings
- Reinstall network drivers
- Check for malware
- Check Hosts file
- Windows repair through sfc and dism
- Check for rogue drivers
- Check for network filters
- Reset the entire network stack
None of these worked.
Defeated and frustrated, I started looking for answers on Reddit, the site where all tech problems go to die.
I found this random post in some unrelated topic upvoted only twice, where someone mentioned (in very poor English) that their VPN's kill switch was causing connectivity issues.
I asked my sister if she was using a VPN. She said yes, she was using Proton. I asked her to start the VPN application, and the problem was solved immediately.
Turns out she wasn't even using the kill switch feature, but somehow the VPN driver state got corrupted after the forced shutdown, and it was blocking all DNS requests.
I am genuinely baffled how a VPN driver can mess up the entire network stack when the VPN is off and the kill switch is disabled. What's worse is that there are no error messages, no logs, nothing. Just silent failure. And the entire problem just looks like a DNS resolution issue. Pings (ICMP) to IP addresses work, tcp handshakes work (somehow), but DNS resolution fails.
This was probably the most frustrating tech support experience I've had in a while. I hope this post helps someone else who might be facing similar issues.