I recently had an intermittent DNS problem. My router has a setting to put a "The internet is down" page up when the internet is down. What it supposed to do is return an ip that the router can serve the error page on.
The IP was 10.0.0.1 or something close.
The problem is that the error page is not there and the all DNS entries gets cached and stuck on the non-existent server address. Ping to an IP address works just fine since the outages were seconds in duration. I found the answer on a 5 year old forum post. Just disable the completely broken "feature".
BoB