Are there any known risks associated with using a public DNS versus a DNS which we or our partners control? Our solution involves a few embedded devices so using Google DNS would give us a degree of portability when we deploy in a variety of locations i.e. as long as we have a valid internet connection then we will usually be able to hit Google's DNS (not always true but usually).
Given that I am not an expert on how DNS works, the scenario I can imagine is something like
a) Our router (or other device acting as a DHCP server) assigns an address on the private net via and sends a new record to the DNS.
b) Someone else 'hijacks' that record and points it to something else outside our private NW.
c) Next time something on our private network tries to resolve the name of a machine on the private network it gets redirected to a malicious server.
Is this kind of attack even possible? How does the DNS server establish that updates from our domain really are from our domain? I understand there are best practices for running a DNS server itself but are there any equivalent best practices which you should follow as a client?
Note: I am not bothered about what Google will be able to learn (they won't learn much as we will only be accessing our own services and things like Windows Update, Azure etc). I am more concerned that by using a public service we would be enabling something malicious by a 3rd party.