Get Started - Public DNS - Google For Developers
Get Started - Public DNS - Google For Developers
Get Started
Configure your network settings to use Google Public DNS
When you use Google Public DNS, you are changing your DNS "switchboard" operator from
your ISP to Google Public DNS.
In most cases, the Dynamic Host Configuration Protocol (DHCP) automatically configures
your system to use the IP addresses of your ISP's domain name servers. To use Google
Public DNS, you need to explicitly change the DNS settings in your operating system or
device to use the Google Public DNS IP addresses. The procedure for changing your DNS
settings varies according to operating system and version (Windows, Mac, Linux, or
ChromeOS) or the device (computer, phone, or router). We give general procedures here that
might not apply for your OS or device; consult your vendor documentation for authoritative
information.
Depending on your system you may also have the option of enabling a new privacy-oriented
feature called DNS-over-TLS (/speed/public-dns/docs/dns-over-tls). This feature provides
privacy and security for the DNS messages sent between your device and Google's DNS
servers. Details on configuring this optional feature are in specific sections for each
system.
Caution: We recommend that only users who are proficient with configuring operating system settings
make these changes.
We also recommend that you print this page, in the event that you encounter a problem and
need to refer to these instructions.
https://developers.google.com/speed/public-dns/docs/using 1/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
8.8.8.8
8.8.4.4
2001:4860:4860::8888
2001:4860:4860::8844
Some devices require explicit values for all eight fields of IPv6 addresses and cannot
accept the abbreviated :: IPv6 address syntax. For such devices enter:
2001:4860:4860:0:0:0:0:8888
2001:4860:4860:0:0:0:0:8844
You can use either address as your primary or secondary DNS server.
Important: For the most reliable DNS service, configure at least two DNS addresses. Do not specify the
same address as both primary and secondary.
You can configure Google Public DNS addresses for either IPv4 or IPv6 connections, or
both. For IPv6-only networks with a NAT64 gateway using the 64:ff9b::/96 prefix, you can
use Google Public DNS64 (/speed/public-dns/docs/dns64) instead of Google Public DNS IPv6
addresses, providing connectivity to IPv4-only services without any other configuration.
Many systems let you to specify multiple DNS servers, to be contacted in priority order. In
the following instructions, we provide steps to specify only the Google Public DNS servers
https://developers.google.com/speed/public-dns/docs/using 2/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
as the primary and secondary servers, to ensure that your setup correctly uses Google
Public DNS in all cases.
Note: Depending on your network setup, you may need administrator/root privileges to change these
settings.
Windows
DNS settings are specified in the TCP/IP Properties window for the selected network
connection.
2. Click Network and Internet > Network and Sharing Center > Change adapter settings.
3. Select the connection for which you want to configure Google Public DNS. For
example:
To change the settings for a wireless connection, right-click the Wi-Fi interface
and select Properties.
If you are prompted for an administrator password or confirmation, type the password
or provide confirmation.
4. Select the Networking tab. Under This connection uses the following items, select
Internet Protocol Version 4 (TCP/IPv4) or Internet Protocol Version 6 (TCP/IPv6) and
then click Properties.
5. Click Advanced and select the DNS tab. If there are any DNS server IP addresses
listed there, write them down for future reference, and remove them from this window.
6. Click OK.
7. Select Use the following DNS server addresses. If there are any IP addresses listed in
the Preferred DNS server or Alternate DNS server, write them down for future
reference.
8. Replace those addresses with the IP addresses of the Google DNS servers:
https://developers.google.com/speed/public-dns/docs/using 3/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
9. Test that your setup is working correctly; see Test your new settings (#testing).
10. Repeat the procedure for additional network connections you want to change.
Note: There is no support for DNS-over-TLS in the base OS. To use DNS-over-TLS requires setting up a
proxy resolver that supports DNS-over-TLS. Due to the complexity of the setup we do not describe it here.
macOS
DNS settings are specified in the Network window.
2. If the lock icon in the lower left-hand corner of the window is locked, click the icon to
make changes, and when prompted to authenticate, enter your password.
3. Select the connection for which you want to configure Google Public DNS. For
example:
To change the settings for a Wi-Fi connection, select Wi-Fi, and click Advanced.
To change the settings for an Ethernet connection, select Built-In Ethernet, and
click Advanced.
5. Click + to replace any listed addresses with, or add, the Google IP addresses at the top
of the list:
7. Test that your setup is working correctly; see Test your new settings (#testing).
https://developers.google.com/speed/public-dns/docs/using 4/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
8. Repeat the procedure for additional network connections you want to change.
Note: There is no support for DNS-over-TLS in the base OS. To use DNS-over-TLS requires setting up a
proxy resolver that supports DNS-over-TLS. Due to the complexity of the setup, we do not describe it
here.
Linux
In most modern Linux distributions, DNS settings are configured through Network Manager.
2. Select the connection for which you want to configure Google Public DNS. For
example:
To change the settings for an Ethernet connection, select the Wired tab, then
select your network interface in the list. It is usually called eth0.
To change the settings for a wireless connection, select the Wireless tab, then
select the appropriate wireless network.
3. Click Edit, and in the window that appears, select the IPv4 Settings or IPv6 Settings
tab.
4. If the selected method is Automatic (DHCP), open the dropdown and select
Automatic (DHCP) addresses only instead. If the method is set to something else, do
not change it.
5. In the DNS servers field, enter the Google Public DNS IP addresses, separated by a
comma:
6. Click Apply to save the change. If you are prompted for a password or confirmation,
type the password or provide confirmation.
7. Test that your setup is working correctly; see Test your new settings (#testing).
8. Repeat the procedure for additional network connections you want to change.
https://developers.google.com/speed/public-dns/docs/using 5/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
If your distribution doesn't use Network Manager, your DNS settings are specified in
/etc/resolv.conf.
1. Edit /etc/resolv.conf:
sudo vi /etc/resolv.conf
2. If any nameserver lines appear, write down the IP addresses for future reference.
For IPv4:
nameserver 8.8.8.8
nameserver 8.8.4.4
For IPv6:
nameserver 2001:4860:4860::8888
nameserver 2001:4860:4860::8844
For IPv6-only, you can use Google Public DNS64 (/speed/public-dns/docs/dns64) instead
of the above IPv6 addresses.
6. Test that your setup is working correctly; see Test your new settings (#testing).
Additionally, if you are using DHCP client software that overwrites the settings in
/etc/resolv.conf, you need to configure the DHCP client by editing the client's
configuration file.
1. Back up /etc/resolv.conf:
https://developers.google.com/speed/public-dns/docs/using 6/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
sudo vi /etc/dhcp*/dhclient.conf
3. If there is a line following request with only domain-name-servers, remove that line.
For IPv4:
For IPv6:
For IPv6-only, you can use Google Public DNS64 (/speed/public-dns/docs/dns64) instead
of the above IPv6 addresses.
star Note: ISC DHCP v4.3.6 or higher is required for IPv6 domain-name-servers to be processed; earlier
versions would silently ignore such configuration.
8. Test that your setup is working correctly; see Test your new settings (#testing).
ChromeOS
DNS settings are specified in the Network section of the Settings menu for the selected
network connection.
https://developers.google.com/speed/public-dns/docs/using 7/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
2. In the Network section, select the connection for which you want to configure Google
Public DNS. For example:
To change the settings for an Ethernet connection, click on the Ethernet section.
To change the settings for a wireless connection, click on the Wi-Fi section and
select the appropriate network name.
Changing the DNS settings for a mobile data connection established with
Instant Tethering isn't possible. For mobile Wi-Fi hotspots that are manually set
up, however, you can change the DNS settings using the instructions for a
wireless connection.
For IPv4: Select the Google name servers button (or alternatively, select the
Custom name servers button and enter 8.8.8.8 and 8.8.4.4).
For IPv6: Select the Custom name servers button and enter
2001:4860:4860::8888 and/or 2001:4860:4860::8844.
6. Test that your setup is working correctly; see Test your new settings (#testing).
7. Repeat the procedure for additional network connections you want to change.
Note: Linux Apps and Android Apps running on ChromeOS will use these DNS server settings by default,
but they also have the ability to override the settings.
Note: There is no support for DNS-over-TLS in the base OS. To use DNS-over-TLS requires setting up a
proxy resolver that supports DNS-over-TLS. Due to the complexity of the setup we do not describe it here.
Routers
Every router uses a different user interface for configuring DNS server settings; we provide
only the generic procedure. For more information, please consult your router
https://developers.google.com/speed/public-dns/docs/using 8/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
documentation.
Note: Some ISPs hard-code their DNS servers into the equipment they provide; if you are using such a
device, you cannot configure it to use Google Public DNS. Instead, you can configure each of the
computers connected to the router, as described above.
1. In your browser, enter the IP address of your router to view the router's administration
console. Most routers are manufactured to use a default address such as
192.168.0.1, 192.168.1.1, 192.168.2.1, or 192.168.1.100. If none of these work,
try to find the default gateway address in the network settings panel of your system.
4. If there are IP addresses specified in the fields for the primary and seconday DNS
servers, write them down for future reference.
8. Test that your setup is working correctly; see Test your new settings (#testing).
Some routers require explicit values for all eight fields of IPv6 addresses and cannot accept
the abbreviated :: IPv6 address syntax. For such routers enter:
2001:4860:4860:0:0:0:0:8888
2001:4860:4860:0:0:0:0:8844
https://developers.google.com/speed/public-dns/docs/using 9/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
Note: There is no support for DNS-over-TLS in the base OS. To use DNS-over-TLS requires setting up a
proxy resolver that supports DNS-over-TLS. Due to the complexity of the setup we do not describe it here.
iOS
You can change DNS settings on iPhone, iPad, or iPod touch with the following steps.
2. Tap the ⓘ icon next to the Wi-Fi network that you want to change DNS servers for.
Scroll down to find the DNS section and tap Configure DNS.
3. Tap Manual and add Google IP addresses. Optionally you can also remove all default
DNS servers in the list.
Switching back to Automatic will restore the DNS server specified by the Wi-Fi network.
Note: this change only applies to a specific Wi-Fi network but not to other networks in the Wi-Fi list or
DNS settings for cellular data. If you want all your Wi-Fi networks to use the same DNS configuration, the
best option is to update the DNS configuration on your routers. To change the DNS for your iOS device on
all networks including cellular data requires a VPN app that lets you to configure the DNS server for the
VPN. Given that there are so many choices of VPN app and the setup complexity, it is only recommended
for advanced users.
Android
Android 9 (Pie) or higher
1. Go to Settings > Network & Internet > Advanced > Private DNS.
https://developers.google.com/speed/public-dns/docs/using 10/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
4. Click Save.
Caution: Android 9 only! These Private DNS settings have no effect when you use a VPN like
Nexus/Pixel Wi-Fi Assistant (https://support.google.com/nexus/answer/6327199) or Google Fi
Enhanced Network
(https://www.blog.google/products/project-fi/project-fis-enhanced-network-brings-faster-more-secure-
connections/)
VPNs, or third-party VPN or DNS changer (https://play.google.com/store/search?q=DNS&c=apps) apps.
Those features and apps override Private DNS and do not send DNS-over-TLS
(/speed/public-dns/docs/dns-over-tls) queries to Google Public DNS. Most DNS changers send
cleartext queries (a few like Intra (https://play.google.com/store/apps/details?id=app.intra) use other
secure DNS protocols) and VPN apps may not secure queries beyond the VPN server. This is fixed in
Android 10.
Devices running versions older than Android 9 do not support DNS-over-TLS and cannot
configure private DNS for all networks. You can configure DNS for each individual Wi-Fi
network you use. This requires configuring all network information manually and is only
recommended for advanced users.
https://developers.google.com/speed/public-dns/docs/using 11/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
3. If there are IP addresses specified in the fields for the primary and secondary DNS
servers, write them down for future reference.
6. Test that your setup is working correctly; see Test your new settings (#testing).
If all of these tests work, everything is working correctly. If not, go to the next step.
If you are using an IPv6-only system without Google Public DNS64, use
http://[2001:470:1:18::119]/ (http://%5B2001:470:1:18::119%5D/) as the URL
instead.
https://developers.google.com/speed/public-dns/docs/using 12/13
11/19/23, 9:38 PM Get Started | Public DNS | Google for Developers
If this works correctly, reload the page with a new opened browser to make sure the
page is loaded from scratch. If these tests work (but step 1 fails), then there is a
problem with your DNS configuration; check the steps above to make sure you have
configured everything correctly. If these tests do not work, go to the next step.
3. Roll back the DNS changes you made and run the tests again. If the tests still do not
work, then there is a problem with your network settings; contact your ISP or network
administrator for assistance.
If you encounter any problems after setting Google Public DNS as your resolver, please run
the diagnostic procedure (/speed/public-dns/docs/troubleshooting).
1 Google thanks Jason Fesler for granting permission to use test-ipv6.com (http://test-ipv6.com/) URLs for
If you need to manually specify any addresses, use the procedures above to specify the old
IP addresses.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0
License (https://creativecommons.org/licenses/by/4.0/), and code samples are licensed under the Apache
2.0 License (https://www.apache.org/licenses/LICENSE-2.0). For details, see the Google Developers Site
Policies (https://developers.google.com/site-policies). Java is a registered trademark of Oracle and/or its
affiliates.
https://developers.google.com/speed/public-dns/docs/using 13/13