Comparable performance over time, slightly greater reliability, no reliance on a third party or exposure to whatever they do to monetize their service, and slightly less courtesy to the root server maintainers who would otherwise be shielded from your traffic.
Generally, I just use my own (co-located) DNS server from my laptop. However, I sometimes run into problems with wireless providers away from home, especially at airports: sometimes they have it set up such that you have to log in or pay at a URL that they expect the local DNS resolver (which their DHCP will have handed you) to resolve to the local server.
So, for example, foo.someprovider.net when resolved at City Airport using the local DNS server will point to an IP handling payment/login for City Airport, but the very same hostname foo.someprovider.net at OtherCity Airport will resolve to a different IP that happens to be the payment/login server on the local net at OtherCity Airport.
I've run into other instances of this. Basically, not taking the DNS server that DHCP hands you, sometimes causes problems. Usually you can figure out what's happening and change your settings, so it's an annoyance rather than a real failure.
- Centralize DNS settings to one place for my mini-itx (that I take to coffeeshops with me and pipe through my laptop) and any VMs running on that machine or my laptop.
- Centralize ad-hoc and "rigged" hostname settings for all these things, my local /etc/hosts names are all propagated to anything using the server.
- Non multi-machine consideration: caching. There's almost zero overhead to setting up dnsmasq, may as well take advantage of a local dns cache (browser cache is only good for web browsing). I can tell the difference, especially on some networks.
I just realized people are hung up on the resolving part of that link and not the "on laptop cache" part.
I don't think there's any compelling reason to run an actual resolver (as opposed to a local cache that recurses to a reliable, non-monetizing public cache).
Well if you are an Internet user out side US and you are visiting CDN powered sites via OpenDNS, you will be redirected to US servers, which is much more slower if you use your ISP's DNS