I already posted this on reddit but will do so here again, since it completely resolved my DNS resolution issues with Pi-Hole in Windows (7, 8.1 and 10).
tl;dr: disable IPv6 in Network Adaper settings AND disabled IP-Helper service!
If you have any issues with local DNS resolution on Windows, although every is set up correctly as explained in the article below then try the following: 1. Disable IPv6 in your network adapter settings 2. (Important!) Stop and disable “IP Helper” service. 3. run “ipconfig -flushdns” from elevated command prompt.
I had been struggeling with local DNS resolution issues for a long time and discovered this by accident. Since I had disabled IPv6 in my network adapter settings, I was foolishly under the assumption that IPv6 was disabled on my Windows 10 but apparently Microsoft thought otherwise.
After trying to optimize my setup a bit, I stumpled upon an article that suggested to disable “IP Helper” service since its not needed in most scenarios anyway and also mentioned IPv6. The moment I stopped the service and flushed the DNS cache, all issues with local DNS resolution were gone.
Not sure why Windows still tries to do DNS resolution via IPv6 although it is disabled in the network adapter settings (I only have one), but I m glad I finally finally figured that out (after almost a year of frustration and editing “hosts” files).
Please spread the word to all that have the same issue so they wont have to struggle as long as I did
Pi-Hole for local DNS resolution setup: HOWTO: Using pi-hole as LAN DNS server