When Cloudflare took down ~half of the Internet for a few minutes last week, I didn’t feel it at all from my office. I only found out about it when Twitter and the orange site started complaining.
@Mohammed90 taught me this trick: set up a home DNS server that load balances between multiple providers. Oh, and enable DNS-over-TLS for a little added privacy while we’re at it.
I’m posting this here because CoreDNS is essentially a Caddy-v1-plugin-turned-fork that operates as a DNS server similar to how Caddy operates as a web server: using a “Corefile” (their version of a Caddyfile) you can compose “middleware” that handle DNS requests. (I’d love to see a Caddy 2 module that serves DNS. No need to fork the whole project now.)
coredns is running in your home or office, make sure to point your network’s DNS server to it. Then everything using “default” DNS settings should resolve through CoreDNS.
The only thing I know of that this won’t work with is Chromecast, which annoyingly hard-codes
220.127.116.11, so if Google DNS is ever unreachable, you won’t be able to watch anything in your home, even if it’s locally-hosted. Le sigh.