General
What is Google Public DNS?
Google Public DNS is a free, global Domain Name System (DNS) resolution service, that you can use as an alternative to your current DNS provider.
Why is Google working on a DNS service?
We believe that a faster and safer DNS infrastructure could significantly improve the web browsing experience. Google Public DNS has made many improvements in the areas of speed, security, and validity of results. We've shared these improvements in our documentation, to contribute to an ongoing conversation within the web community.
Can I use Google Public DNS to host my domain name?
Google Public DNS is not an authoritative DNS hosting service and cannot be used as one. If you are looking for a high-volume, programmable, authoritative name server using Google's infrastructure, try Google's Cloud DNS.
Does Google Public DNS offer the ability to block or filter out unwanted sites?
Google Public DNS is a DNS resolution and caching server; it does not perform blocking or filtering of any kind, except for certain domains in rare cases, where:
- we believe this is necessary to protect Google's users from security threats
- we are legally required to block a specific domain or domains. (Learn more at the Blocking page).
But we believe that blocking functionality is usually best performed by the client. If you are interested in enabling such functionality, you should consider installing a client-side application or browser add-on for this purpose.
Are there any cross-product dependencies with Google Public DNS?
Google Public DNS is an independent service.
Do I need a Google Account to use Google Public DNS?
Use of Google Public DNS does not require any account.
How is Google Public DNS different from my ISP's DNS service or other open DNS resolvers? How can I tell if it is better?
Open resolvers and your ISP all offer DNS resolution services. We invite you to try Google Public DNS as your primary or secondary DNS resolver along with any other alternate DNS services. There are many things to consider when identifying a DNS resolver that works for you, such as speed, reliability, security, and validity of responses. Unlike Google Public DNS, some ISPs and open resolvers block, filter, or redirect DNS responses for commercial purposes. Also see the answer to the Does Google Public DNS offer the ability to block or filter out unwanted sites? question.
How does Google Public DNS handle non-existent domains?
If you issue a query for a domain name that does not exist, Google Public DNS always returns an NXDOMAIN record, as per the DNS protocol standards. The browser should show this response as a DNS error. If, instead, you receive any response other than an error message (for example, you are redirected to another page), this could be the result of the following:
- A client-side application such as a browser plug-in is displaying an alternate page for a non-existent domain.
- Some ISPs may intercept and replace all NXDOMAIN responses with responses that lead to their own servers. If you are concerned that your ISP is intercepting Google Public DNS requests or responses, you should contact your ISP.
Will Google Public DNS be used to serve ads in the future?
We are committed to preserving the integrity of the DNS protocol. Google Public DNS will never return the address of an ad server for a non-existent domain.
What is DNS over HTTPS (DoH)?
DNS resolution over an encrypted HTTPS connection. DNS over HTTPS greatly enhances privacy and security between a stub resolver and a recursive resolver, and complements DNSSEC to provide end-to-end authenticated DNS lookups.
Use and support
I am using another DNS service now. Can I also use Google Public DNS?
You can set Google Public DNS to be your primary or secondary DNS resolver, along with your current DNS resolver. Please remember that operating systems treat DNS resolvers differently: some prefer your primary DNS resolver and only use the secondary if the primary fails to respond, while others round-robin among each of the resolvers.
If there are differences in security or filtering between configured resolvers, you get the weakest level of security or filtering of all the resolvers. NXDOMAIN filtering or redirection to block pages may work sometimes, but SERVFAIL does not block domains unless all resolvers return SERVFAIL.
Is Google Public DNS suitable for all types of Internet-enabled devices?
Google Public DNS can be used on any standards-compliant network device. If you find any situation where Google Public DNS does not work well, please let us know.
Can I run Google Public DNS on my office computer?
Some offices have private networks that allow you to access domains that you can't access outside of work. Using Google Public DNS might limit your access to these private domains. Please check your IT department's policy before using Google Public DNS on your office computer.
In which countries is Google Public DNS available?
It is available to Internet users around the world, though your experience may vary greatly based on your specific location.
Does Google Public DNS work with all ISPs?
Google Public DNS should work with most ISPs, assuming you have access to change your network DNS settings.
Do I need to use both Google Public DNS IP addresses?
You can use Google as your primary service by just using one of the IP addresses. However, be sure not to specify the same address as both primary and secondary servers.
Does it matter in what order I specify the IP addresses?
The order does not matter. Either IP can be your primary or secondary name server.
What is the SLA for the service?
There is no Service Level Agreement (SLA) for the free Google Public DNS service.
I'm running an ISP. Can I redirect my users to Google Public DNS?
ISPs that want to use Google Public DNS should follow the ISP instructions to see if they need to do anything before sending queries to Google Public DNS.
How can I get support from the Google Public DNS team?
We recommend that you join our Google Groups to get useful updates from the team and ask any questions you have. If you are encountering a problem and would like to report it, please see Reporting issues for procedures.
Technical
How does Google Public DNS know where to send my queries?
Anycast routing directs your queries to the closest Google Public DNS server. For more information on anycast routing, see the Wikipedia entry.
Google Public DNS uses Name Server (NS) records published in the DNS root zone and zones of top-level domains to find the names and addresses of the DNS servers that are authoritative for any domain. Some of those name servers also use anycast routing.
Where are your servers currently located?
Google Public DNS servers are available worldwide. There are two answers to this question, one for clients and another for the DNS servers from which Google Public DNS gets the answers it returns to clients.
When clients send queries to Google Public DNS, they are routed to the nearest
location advertising the anycast address used (8.8.8.8
, 8.8.4.4
, or one of
the IPv6 addresses in 2001:4860:4860::
). The specific locations advertising
these anycast addresses change due to network conditions and traffic load, and
include nearly all of the Core data centers and Edge Points of Presence (PoPs)
in the Google Edge Network.
Google Public DNS sends queries to authoritative servers from Core data centers and Google Cloud region locations. Google publishes a list of the IP address ranges Google Public DNS may use to query authoritative DNS servers (not all the ranges in the list are used). You can use it for geo-location of DNS queries lacking EDNS Client Subnet (ECS) data, and to configure ACLs to allow higher query rates from Google Public DNS.
In addition to this FAQ, Google also publishes the list as a DNS "TXT" record. Google updates both sources weekly with additions, modifications, and removals. Each IP address range entry includes the IATA code for the nearest airport. Automation for GeoIP data or ACLs should get this data via DNS, not by scraping this web page (see below for an example).
Locations of IP address ranges Google Public DNS uses to send queries
34.64.0.0/24 icn 34.64.1.0/24 icn 34.64.2.0/24 icn 34.101.0.0/24 cgk 34.101.1.0/24 cgk 34.101.2.0/24 cgk 34.153.64.0/25 dia 34.153.64.128/26 dia 34.153.64.192/26 dia 34.153.65.0/25 dia 34.153.65.128/26 dia 34.153.65.192/26 dmm 34.153.66.0/24 dmm 74.114.30.0/25 hdf 74.114.30.128/25 hdf 74.125.16.128/26 bom 74.125.16.192/26 yyz 74.125.17.128/26 cbf 74.125.17.192/26 dfw 74.125.18.0/25 iad 74.125.18.128/26 syd 74.125.18.192/26 lhr 74.125.19.0/25 mrn 74.125.19.128/25 yyz 74.125.40.0/25 mrn 74.125.40.128/26 lhr 74.125.40.192/26 rno 74.125.41.0/24 tpe 74.125.42.0/24 atl 74.125.43.0/25 tul 74.125.43.128/25 lhr 74.125.44.0/24 mrn 74.125.45.0/24 tul 74.125.46.0/24 lpp 74.125.47.0/24 bru 74.125.72.0/24 cbf 74.125.73.0/24 bru 74.125.74.0/24 lpp 74.125.75.0/24 chs 74.125.76.0/24 cbf 74.125.77.0/24 chs 74.125.78.0/24 chs 74.125.79.0/24 lpp 74.125.80.0/24 dls 74.125.81.0/24 dub 74.125.92.0/24 mrn 74.125.112.0/24 lpp 74.125.113.0/24 cbf 74.125.114.128/26 lpp 74.125.114.192/26 grq 74.125.115.0/24 tul 74.125.177.0/24 atl 74.125.178.0/24 bom 74.125.179.0/25 cbf 74.125.179.128/26 hkg 74.125.179.192/26 cbf 74.125.180.0/24 chs 74.125.181.0/25 bru 74.125.181.128/26 lax 74.125.181.192/26 grq 74.125.182.0/24 cbf 74.125.183.0/24 cbf 74.125.184.0/24 chs 74.125.185.0/25 chs 74.125.185.128/26 tul 74.125.185.192/26 bll 74.125.186.0/25 dls 74.125.186.128/26 cbf 74.125.186.192/26 tpe 74.125.187.0/25 dls 74.125.187.128/26 fra 74.125.187.192/26 las 74.125.189.0/24 cbf 74.125.190.0/24 sin 74.125.191.0/24 tul 172.217.32.0/25 lhr 172.217.32.128/26 sin 172.217.32.192/26 mel 172.217.33.0/25 syd 172.217.33.128/25 fra 172.217.34.0/26 fra 172.217.34.64/26 bom 172.217.34.128/26 del 172.217.34.192/26 bom 172.217.35.0/26 gru 172.217.35.64/26 lhr 172.217.35.128/26 gru 172.217.35.192/26 cbf 172.217.36.0/24 atl 172.217.37.0/25 gru 172.217.37.128/26 lpp 172.217.37.192/26 cbf 172.217.38.0/25 bom 172.217.38.128/26 tul 172.217.38.192/26 cgk 172.217.39.128/26 scl 172.217.39.192/26 tul 172.217.40.0/25 grq 172.217.40.128/25 las 172.217.41.0/25 grq 172.217.41.128/26 cbf 172.217.41.192/26 bru 172.217.42.0/25 tpe 172.217.42.128/26 cmh 172.217.42.192/26 atl 172.217.43.0/25 yul 172.217.43.128/26 sin 172.217.43.192/26 tpe 172.217.44.0/25 yul 172.217.44.128/26 fra 172.217.44.192/26 sin 172.217.45.0/25 yul 172.217.45.128/25 fra 172.217.46.0/24 dls 172.217.47.0/25 sin 172.217.47.128/25 lhr 172.253.0.0/25 lax 172.253.0.128/25 mel 172.253.1.0/25 lax 172.253.1.128/26 waw 172.253.1.192/26 fra 172.253.2.0/25 lax 172.253.2.128/26 fra 172.253.2.192/26 mad 172.253.3.0/25 nrt 172.253.3.128/25 lbg 172.253.4.0/25 hkg 172.253.4.128/25 lbg 172.253.5.0/25 hkg 172.253.5.128/25 mad 172.253.6.0/25 hkg 172.253.6.128/25 nrt 172.253.7.0/25 chs 172.253.7.128/26 nrt 172.253.7.192/26 grq 172.253.8.0/25 iad 172.253.8.128/26 iad 172.253.8.192/26 icn 172.253.9.0/25 iad 172.253.9.128/26 atl 172.253.9.192/26 lax 172.253.10.0/25 iad 172.253.10.128/25 fra 172.253.11.0/25 zrh 172.253.11.128/26 cmh 172.253.11.192/26 grq 172.253.12.0/25 zrh 172.253.12.128/25 mil 172.253.13.0/25 kix 172.253.13.128/26 mil 172.253.13.192/26 waw 172.253.14.0/25 zrh 172.253.14.128/26 cmh 172.253.14.192/26 cgk 172.253.15.0/25 kix 172.253.15.128/26 bom 172.253.15.192/26 chs 172.253.192.0/24 cbf 172.253.193.0/25 kix 172.253.193.128/26 slc 172.253.193.192/26 fra 172.253.194.0/25 hhn 172.253.194.128/26 cbf 172.253.194.192/26 lhr 172.253.195.0/25 hhn 172.253.195.128/26 fra 172.253.195.192/26 iad 172.253.196.0/25 cbf 172.253.196.128/26 tul 172.253.196.192/26 slc 172.253.197.0/25 fra 172.253.197.128/26 lbg 172.253.197.192/26 bom 172.253.198.0/25 hhn 172.253.198.128/26 dfw 172.253.198.192/26 kix 172.253.199.0/25 fra 172.253.199.128/26 kix 172.253.199.192/26 cbf 172.253.200.128/26 slc 172.253.200.192/26 cgk 172.253.201.0/25 syd 172.253.201.128/25 tlv 172.253.202.0/24 bll 172.253.204.0/25 syd 172.253.204.128/26 tlv 172.253.204.192/26 bom 172.253.205.0/24 lhr 172.253.206.0/24 waw 172.253.209.0/25 ckv 172.253.209.128/25 chs 172.253.210.0/24 iad 172.253.211.0/25 sin 172.253.211.128/26 icn 172.253.211.192/26 bom 172.253.212.0/25 tul 172.253.212.128/26 scl 172.253.212.192/26 chs 172.253.213.0/25 iad 172.253.213.128/26 del 172.253.213.192/26 dmm 172.253.214.0/25 iad 172.253.214.128/26 cbf 172.253.214.192/26 fra 172.253.215.0/25 bru 172.253.215.128/25 sin 172.253.216.0/25 chs 172.253.216.128/26 sin 172.253.216.192/26 trn 172.253.217.0/25 tul 172.253.217.128/25 trn 172.253.218.0/25 uos 172.253.218.128/26 syd 172.253.218.192/26 cbf 172.253.219.0/25 scl 172.253.219.128/26 chs 172.253.219.192/26 gru 172.253.220.0/25 bom 172.253.220.128/26 scl 172.253.220.192/26 tul 172.253.221.0/25 cbf 172.253.221.128/26 iad 172.253.221.192/26 bom 172.253.222.0/25 slc 172.253.222.128/26 cmh 172.253.222.192/26 bom 172.253.223.0/25 slc 172.253.223.128/26 cmh 172.253.223.192/26 iad 172.253.224.0/24 cgk 172.253.225.0/24 fra 172.253.226.0/24 del 172.253.227.0/25 ckv 172.253.227.128/26 mad 172.253.227.192/26 ber 172.253.228.0/25 uos 172.253.228.128/26 mil 172.253.228.192/26 ber 172.253.229.0/25 las 172.253.229.128/26 mel 172.253.229.192/26 del 172.253.230.0/25 gru 172.253.230.128/26 bom 172.253.230.192/26 mel 172.253.231.0/25 las 172.253.231.128/26 lax 172.253.231.192/26 bru 172.253.232.0/25 las 172.253.232.128/25 fra 172.253.233.0/25 gru 172.253.233.128/25 ber 172.253.234.0/24 gru 172.253.235.0/25 nrt 172.253.235.128/25 bom 172.253.236.0/25 nrt 172.253.236.128/26 nrt 172.253.236.192/26 sin 172.253.237.0/25 hkg 172.253.237.128/25 zrh 172.253.238.0/25 nrt 172.253.238.128/25 yul 172.253.239.0/25 slc 172.253.239.128/26 tpe 172.253.239.192/26 tlv 172.253.240.0/24 tul 172.253.241.0/24 dhr 172.253.242.0/24 chs 172.253.243.0/24 ckv 172.253.244.0/25 bom 172.253.244.128/26 lax 172.253.244.192/26 jnb 172.253.245.0/24 las 172.253.246.0/24 hhn 172.253.247.0/24 syd 172.253.248.0/24 bru 172.253.249.0/25 atl 172.253.249.128/25 jnb 172.253.250.0/24 cmh 172.253.251.0/24 dfw 172.253.252.0/24 icn 172.253.253.0/24 icn 172.253.254.0/24 dls 172.253.255.0/24 waw 173.194.90.0/24 cbf 173.194.91.0/24 scl 173.194.93.0/24 tpe 173.194.94.0/24 cbf 173.194.95.0/24 tul 173.194.96.0/25 dub 173.194.96.128/25 fra 173.194.97.0/24 chs 173.194.98.0/24 lpp 173.194.99.0/25 tul 173.194.99.128/25 dmm 173.194.100.0/24 mrn 173.194.101.0/24 tul 173.194.102.0/24 atl 173.194.103.0/24 cbf 173.194.168.0/25 nrt 173.194.168.128/26 nrt 173.194.168.192/26 iad 173.194.169.0/24 grq 173.194.170.0/24 grq 173.194.171.0/25 tpe 173.194.171.128/26 del 173.194.171.192/26 jnb 192.178.36.0/25 cbf 192.178.36.128/26 tpe 192.178.36.192/26 phx 192.178.37.0/26 cbf 192.178.37.64/26 phx 192.178.37.128/25 bru 192.178.38.0/26 phx 192.178.38.64/26 mrn 192.178.38.128/26 sin 192.178.38.192/26 cmh 192.178.39.0/26 cmh 192.178.39.64/26 bom 192.178.39.128/25 tlv 192.178.64.0/24 yyz 192.178.65.0/26 iad 192.178.65.64/26 del 192.178.65.128/25 cmh 192.178.66.0/25 cbf 192.178.66.128/25 del 192.178.67.0/26 cmh 192.178.67.64/26 scl 192.178.67.128/25 rno 192.178.92.0/26 arn 192.178.92.64/26 iad 192.178.92.128/26 yyz 192.178.92.192/26 cbf 192.178.93.0/26 phx 192.178.93.64/26 cmh 192.178.93.128/26 arn 192.178.93.192/26 cbf 192.178.94.0/26 arn 192.178.94.64/26 cmh 192.178.94.128/26 slc 192.178.94.192/26 dfw 192.178.95.0/26 gru 192.178.95.64/26 qro 192.178.95.128/25 qro 192.178.112.0/26 cbf 192.178.112.64/26 tul 192.178.112.128/26 cbf 192.178.112.192/26 dls 192.178.113.0/25 cbf 192.178.113.128/26 aus 192.178.113.192/26 cbf 192.178.114.0/24 cmh 192.178.115.0/24 iad 192.178.117.0/24 osl 2404:6800:4000::/48 bom 2404:6800:4003::/48 sin 2404:6800:4005::/48 hkg 2404:6800:4006::/48 syd 2404:6800:4008::/48 tpe 2404:6800:400a:1000::/62 kix 2404:6800:400a:1004::/62 kix 2404:6800:400a:1008::/61 kix 2404:6800:400b:c000::/62 nrt 2404:6800:400b:c004::/62 nrt 2404:6800:400b:c008::/61 nrt 2404:6800:400b:c010::/60 nrt 2404:6800:4013::/53 mel 2404:6800:4013:800::/53 del 2404:f340:10:1400::/61 icn 2404:f340:10:1408::/61 icn 2404:f340:4010::/48 cgk 2600:1900:4260::/54 dmm 2600:1900:4260:400::/62 dia 2600:1900:4260:404::/63 dia 2600:1900:4260:406::/63 dia 2600:1900:4260:408::/62 dia 2600:1900:4260:40c::/62 dia 2607:f8b0:4001:c00::/59 cbf 2607:f8b0:4001:c20::/61 cbf 2607:f8b0:4001:c28::/62 cbf 2607:f8b0:4001:c2e::/64 cbf 2607:f8b0:4001:c2f::/64 cbf 2607:f8b0:4001:c30::/62 cbf 2607:f8b0:4001:c34::/62 cbf 2607:f8b0:4001:c40::/60 cbf 2607:f8b0:4001:c50::/61 cbf 2607:f8b0:4001:c58::/63 cbf 2607:f8b0:4001:c5a::/63 cbf 2607:f8b0:4001:c5c::/62 cbf 2607:f8b0:4001:c60::/63 cbf 2607:f8b0:4001:c62::/63 cbf 2607:f8b0:4001:c64::/62 cbf 2607:f8b0:4001:c68::/63 cbf 2607:f8b0:4001:c6a::/63 cbf 2607:f8b0:4001:c6c::/63 cbf 2607:f8b0:4001:c6e::/63 cbf 2607:f8b0:4002::/48 atl 2607:f8b0:4003::/48 tul 2607:f8b0:4004::/52 iad 2607:f8b0:4004:1000::/52 lax 2607:f8b0:400c::/48 chs 2607:f8b0:400d::/48 mrn 2607:f8b0:400e::/48 dls 2607:f8b0:4020::/48 yul 2607:f8b0:4023::/54 ckv 2607:f8b0:4023:400::/54 uos 2607:f8b0:4023:800::/54 slc 2607:f8b0:4023:c00::/54 las 2607:f8b0:4023:1000::/54 dfw 2607:f8b0:4023:1400::/54 cmh 2607:f8b0:4023:1800::/54 yyz 2607:f8b0:4023:1c00::/54 rno 2607:f8b0:4023:2000::/54 phx 2607:f8b0:4023:2400::/54 qro 2607:f8b0:4023:2800::/53 aus 2607:f8b0:4024::/48 ckv 2800:3f0:4001::/48 gru 2800:3f0:4003::/48 scl 2a00:1450:4001::/48 fra 2a00:1450:4008:c00::/62 ber 2a00:1450:4008:c04::/62 ber 2a00:1450:4009::/48 lhr 2a00:1450:400a:1000::/62 zrh 2a00:1450:400a:1004::/62 zrh 2a00:1450:400a:1008::/61 zrh 2a00:1450:400b::/48 dub 2a00:1450:400c::/48 bru 2a00:1450:4010::/48 lpp 2a00:1450:4013::/48 grq 2a00:1450:4025::/54 hhn 2a00:1450:4025:400::/54 dhr 2a00:1450:4025:800::/54 waw 2a00:1450:4025:c00::/54 bll 2a00:1450:4025:1000::/54 mad 2a00:1450:4025:1400::/54 lbg 2a00:1450:4025:1800::/54 mil 2a00:1450:4025:1c00::/54 tlv 2a00:1450:4025:2000::/52 trn 2a00:1450:4025:3000::/52 arn 2a00:1450:4025:4000::/62 hdf 2a00:1450:4025:4004::/62 hdf 2a00:1450:4030::/48 osl 2c0f:fb50:4001::/48 jnb
Getting location data programmatically
The address ranges can be fetched as:
A JSON file:
curl https://www.gstatic.com/ipranges/publicdns.json
-
curl https://www.gstatic.com/ipranges/publicdns_geofeed.txt
You can use the following Python script to create a list of IP address ranges that Google Public DNS will use to make queries to authoritative DNS servers.
This data is also available at locations.publicdns.goog.
as a TXT record.
However the data size means that DNS TXT records is no longer an appropriate
format. We are replacing the TXT record with the JSON formatted file described
above. If you are using the TXT record, please switch to using the JSON file
instead since we plan to remove the TXT record at some point in the future.
Command Line
You can use curl
and the jq
tool to extract the Google Public DNS IP
ranges from the command line.
curl https://www.gstatic.com/ipranges/publicdns.json | jq '.prefixes[] | .ipv4Prefix // .ipv6Prefix '
This requires the following :
- Install the curl command-line HTTP client
- Install the jq command-line JSON processor
Python
You can use the following Python script to create a list of IP address ranges that are used by Google Public DNS.
#!/usr/bin/env python3 """An example to fetch and print the Google Public DNS IP ranges.""" import ipaddress import json import urllib.request publicdns_url = 'https://www.gstatic.com/ipranges/publicdns.json' def read_url(url): try: s = urllib.request.urlopen(url).read() return json.loads(s) except urllib.error.HTTPError: print('Invalid HTTP response from %s' % url) return {} except json.decoder.JSONDecodeError: print('Could not parse HTTP response from %s' % url) return {} def main(): publicdns_json = read_url(publicdns_url) print('{} published: {}'.format(publicdns_url, publicdns_json.get('creationTime'))) locations = dict() ipv4, ipv6 = set(), set() for e in publicdns_json['prefixes']: if e.get('ipv4Prefix'): ip = ipaddress.IPv4Network(e.get('ipv4Prefix'), strict=False) ipv4.add(ip) if e.get('ipv6Prefix'): ip = ipaddress.IPv6Network(e.get('ipv6Prefix'), strict=False) ipv6.add(ip) locations[ip] = e.get('scope') print('IP ranges used by Google Public DNS for contacting ' 'authoritative DNS servers:') for i in list(ipv4) + list(ipv6): print(i, locations[i]) if __name__ == '__main__': main()
For macOS, this script requires a Python 3 runtime configured as follows:
- Install the current version of Python 3 runtime for macOS.
- Run the included
Install Certificates.command
from the Python folder in your Applications folder to install a list of trusted root certificates (cert.pem
) for the Python runtime to use. ReplaceVERSION
with the Python version you installed (like3.8
):sudo "/Applications/Python
VERSION
/Install Certificates.command"
Is Google Public DNS based on open source software, such as BIND?
Google Public DNS is Google's own implementation of the DNS standards.
Are there plans to release Google Public DNS code as open source software?
At this time, there are no plans to open source Google Public DNS. But we have detailed all the steps we have taken to increase speed, security, and standards compliance.
Does Google Public DNS support IPv6?
Google Public DNS has IPv6 addresses for incoming requests from clients with IPv6 connectivity and responds to all requests for IPv6 addresses, returning AAAA records if they exist. We fully support IPv6-only authoritative name servers. The IPv6 resolver addresses are provided in the instructions for getting started with Google Public DNS.
Note that you may not see IPv6 results for Google web sites. To optimize the user experience, Google only serves AAAA records to clients with good IPv6 connectivity. This policy is completely independent of Google Public DNS, and is enforced by Google's authoritative name servers. For more information, please see the Google over IPv6 page.
For IPv6-only networks and systems, you can use Google Public DNS64 to get synthesized AAAA records for domain names with A records but no AAAA records. These synthesized AAAA records direct IPv6-only clients to a NAT64 gateway using a well-known IPv6 prefix reserved for NAT64 service. Just configure your systems following the getting started instructions, replacing the resolver addresses with the DNS64 IPv6 configuration.
Does Google Public DNS support the DNSSEC protocol?
Google Public DNS is a validating, security-aware resolver. All responses from DNSSEC signed zones are validated unless clients explicitly set the CD flag in DNS requests to disable the validation.
How can I find out if I am using DNSSEC?
You can do a simple test by visiting http://www.dnssec-failed.org/. This site has been specifically configured to return a DNS error due to a broken authentication chain. If you don't receive an error, you are not using DNSSEC.
How does Google Public DNS handle lookups which fail DNSSEC validation?
If Google Public DNS cannot validate a response (due to misconfiguration, missing or incorrect RRSIG records, etc.), it will return an error response (SERVFAIL) instead. However, if the impact is significant (e.g. a very popular domain is failing validation), we may temporarily disable validation on the zone until the problem is fixed.
How can I find out why a given domain fails DNSSEC validation?
Verisign Labs' DNS Analyzer and Sandia National Laboratories' DNSViz are two DNSSEC visualization tools that show the DNSSEC authentication chain for any domain. They show where breakages occur and are useful for looking up the source of DNSSEC failures.
Google Public DNS is serving old data. Can I force it to refresh its data?
You can use the Flush Cache tool to refresh the Google Public DNS cache for common record types and most domain names. You do not need to prove ownership of the domain to flush it, but you must solve a reCAPTCHA that restricts automated abuse of the service.
Flushing any record type for a domain that you have registered or sub-delegated
with NS records not only flushes cached responses for the type,
it also flushes delegation information about the name servers for that domain.
When you have recently changed name servers
(by changing registrars or DNS hosting providers)
it is critical to do this before flushing subdomains like www
,
so they are not refreshed from stale data on your old DNS servers.
If Google Public DNS is returning answers with stale CNAME records, you need to flush the CNAME record type for each CNAME domain, starting from the last CNAME in the chain, and working back to the queried name. After you flush all the CNAMEs, flush queried names with any record types that are responding with the stale CNAME.
There are some limitations on what can be flushed:
Domains using EDNS Client Subnet (ECS) for geolocation cannot be flushed – for any domains using ECS, set TTLs for ECS-enabled records short enough (15 minutes or less) that you never need to flush them.
The only way to flush all subdomains, or all record types for a domain name, is to flush each record type for each domain name you want to flush. If this is not practical, you can always wait for the record TTLs to expire (these are generally limited to six hours even if the actual TTL is longer).
To flush internationalized domain names such as
пример.example
, use the punycoded form (xn‑‑e1afmkfd.example
for the above example). Domains with characters other than ASCII letters, digits, hyphen, or underscore cannot be flushed.
Does Google Public DNS secure the so-called "last-hop" by encrypting communication with clients?
Traditional DNS traffic is transported over UDP or TCP without encryption. We also provide DNS over TLS and DNS over HTTPS which encrypts the traffic between clients and Google Public DNS. You may try it at: https://dns.google.
Why do we need DNS over HTTPS when we already have DNSSEC?
DNS over HTTPS and DNSSEC are complementary. Google Public DNS uses DNSSEC to authenticate responses from name servers whenever possible. However, in order to securely authenticate a traditional UDP or TCP response from Google Public DNS, a client would need to repeat the DNSSEC validation itself, which very few client resolvers currently do. DNS over HTTPS encrypts the traffic between stub resolvers and Google Public DNS, and complements DNSSEC to provide end-to-end authenticated DNS lookups.
Are there tools that I can use to test the performance of Google Public DNS against that of other DNS services?
There are many freely available tools that you can use to measure Google Public DNS's response time. We recommend Namebench. Regardless of the tool you use, you should run the tool against a large number of domains—more than 5000—to ensure statistically significant results. Although the tests take longer to run, using a minimum of 5000 domains ensures that variability due to network latency (packet loss and retransmits) is minimized, and that Google Public DNS's large name cache is thoroughly exercised.
To set the number of domains in Namebench, use the Number of tests GUI
option or the -t
command line flag;
see the Namebench documentation for more information.
When I run ping
or traceroute
against the Google Public DNS resolvers, the response latency is higher than that of other services. Does this mean Google Public DNS is always slower?
In addition to the ping time, you also need to consider the average time to resolve a name. For example, if your ISP has a ping time of 20 ms, but a mean name resolution time of 500 ms, the overall average response time is 520 ms. If Google Public DNS has a ping time of 300 ms, but resolves many names in 1 ms, the overall average response time is 301 ms. To get a better comparison, we recommend that you test the name resolutions of a large set of domains.
How does Google Public DNS work with CDN geo-location?
Many sites that provide downloadable or streaming multimedia host their content with DNS-based third-party content distribution networks (CDNs), such as Akamai. When a DNS resolver queries an authoritative name server for a CDN's IP address, the name server returns the closest (in network distance) address to the resolver, not the user. In some cases, for ISP-based resolvers as well as public resolvers such as Google Public DNS, the resolver may not be in close proximity to the users. In such cases, the browsing experience could be slowed down somewhat. Google Public DNS is no different from other DNS providers in this respect.
To help reduce the distance between DNS servers and users, Google Public DNS has deployed its servers all over the world. In particular, users in Europe should be directed to CDN content servers in Europe, users in Asia should be directed to CDN servers in Asia, and users in the eastern, central and western U.S. should be directed to CDN servers in those respective regions. We have also published this information to help CDNs provide good DNS results for multimedia users.
In addition, Google Public DNS uses a technical solution called EDNS Client Subnet as described in the RFC. This allows resolvers to pass in part of the client's IP address (the first 24/56 bits or less for IPv4/IPv6 respectively) as the source IP in the DNS message, so that name servers can return optimized results based on the user's location rather than that of the resolver.
Privacy
What information does Google log when I use the Google Public DNS service?
The Google Public DNS privacy page has a complete list of information that we collect. Google Public DNS complies with Google's main privacy policy, available at our Privacy Center.
Your client IP address is only logged temporarily (erased within a day or two), but information about ISPs and city/metro-level locations are kept longer for the purpose of making our service faster, better, and more secure.
Is any of the information collected stored with my Google account?
No stored data is associated with any Google account.
Does Google share the information it collects from the Google Public DNS service with anyone outside Google?
No, except in the limited circumstances described in Google's privacy policy, such as legal processes and enforceable governmental requests. (See also Google's Transparency Report on user data requests.)
Does Google correlate or combine information from temporary or permanent logs with any personal information that I have provided Google for other services?
As the privacy page states, we do not combine or correlate log data in this way.