I have an internal DNS server that provides DNS names to my internal servers. For example, my DNS server points "files.mydomain.com" to my NAS's Web interface at

I also have a public DNS server running, exposing the same domain to the Internet, but providing publicly accessible IPs rather than the internal (192.168.1.x) IPs. So for example, resolving "files.mydomain.com" from the Internet will resolve to

The problem is, the machine at is a gateway/firewall, so it will not "redirect" connections that come from within the LAN, and even if it did, it'd be hugely inefficient. Even though my system is configured to use my internal DNS server, Google Chrome still resolves "files.mydomain.com" to Resolving the domain in any other situation - other browser, command line, etc. - properly returns the correct internal IP of

From reading around the Web, this seems to be related to Google's async DNS service in Chrome, which overrides the system DNS and goes first to Google's DNS servers. It seems that only if it fails there, will it actually use the system DNS. Since "files.mydomain.com" does resolve externally (from Google's PoV) to, Chrome tries to connect there, and fails. Instead, inside the LAN, I need Chrome to connect to Various options used to exist, but have been disabled or removed from Chrome (the commit messages often read along the lines of "we don't need this feature anymore"). Frustrating.

Apologies if this sounds harsh, but please, no answers asking me to 1) setup IPv6 DNS, 2) somehow redo my network so that Google's DNS will give an internal IP to Chrome (horrible idea, plus it stops access from outside the LAN from working), or 3) use the hosts file (won't stand up to possible DNS changes on the internal server).

How do I get Google Chrome to stop using Google DNS to resolve IP addresses?

Observed on all platforms - Windows, Mac and Linux.

2 Answers 2


The setting to disable the built-in asynchronous DNS cache was removed from the chrome://flags page as of this writing, but it can be disable using the command-line switch --disable-async-dns

  • This works perfectly. Here's hoping Google doesn't eventually remove even this option. I'm guessing Google somehow monetizes on our DNS queries, which is why they really want them all going through their DNS...?
    – fdmillion
    Feb 8, 2016 at 1:31

There was a way to deactivate Chrome ipv6 DNS but was removed by google

I would consider using a local host file as a black hole. There is a pretty extensive write up on how to do that here.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .