By default you are using the DNS servers of your Internet service provider, but you don’t have to stick with them. There are a number of reasons to use third-party DNS servers. They can be faster than your provider’s DNS servers, offer advanced security features, and can help bypass internet censorship filters. There are several free domain name resolution services that you can switch to.
Change the DNS settings if you do NOT have root permissions
UPDATE: Finally there is an application called DNSet that allows you to change the DNS servers used by your device and doesn’t require root privileges to run. With free version of DNSet you can setup only Google Public DNS on your device, and Pro version allows you to use any DNS servers of your choice. DNSet works both for Wi-Fi and 3G/4G data connections.

DNSet Screenshot
If you don’t root permission on your device, you have to face some limitations of the Android system. First, changing the DNS settings will only affect your current Wi-Fi network connection. There is no option available to change the DNS settings for your 3G/4G data networks connection. Second, you must change the DNS server settings for each Wi-Fi network you want to connect to.
To change the DNS settings:
- Open the Settings on the device.
- Select “Wi-Fi”.
- Long press your current network, then select “Modify network”.
- Mark “Show advanced options” check box.
- Change “IP settings” to “Static”
- Add the DNS servers IPs to the “DNS 1”, and “DNS 2” fields.
- Press “Save” button, disconnect from the network, and reconnect for changes to take effect.
UPDATE: Note that setting IP Settings to “Static” will affect the way that DHCP does address allocation and can be used only as a short-term solution. In order to work correctly, you have to configure your router and assign static IP to the device’s MAC address.

How to Change DNS Settings on Android
Change the DNS settings if you have root permissions
If you have rooted your Android device, you can use free and simple DNS Changer application. With DNS Changer you can quickly set DNS servers IP manually or select them from a list of DNS providers. You can set program to automatically apply these settings both to Wi-Fi and 3G/4G data connection.

DNS Changer Screenshot
Most popular free DNS services
-
DNS 1: 8.8.8.8, DNS 2: 8.8.4.4
-
DNS 1: 208.67.222.222, DNS 2: 208.67.220.220
-
DNS 1: 8.26.56.26, DNS 2: 8.20.247.20
-
DNS 1: 198.153.192.40, DNS 2: 198.153.194.40
And, by setting your WiFi connection to “static”, you are destroying the way that DHCP does address allocation and while it may work a bit, it’s not going to keep working long-term.
Please don’t set your WiFi to “static”.
You’re absolutely right! I have to clarify this part of the article.
You can limit the dhcp scope and have a static address outside of it …
Check out DNSet. It lets you set DNS servers *without ROOT*.
Pro version:
https://play.google.com/store/apps/details?id=com.dnsetpro
Free version (Google’s public DNS):
https://play.google.com/store/apps/details?id=com.dnset
an app that change dns without root in 3g mode and wi-fi
https://play.google.com/store/apps/details?id=com.dnset
Masqed Crusader Mobile app isn’t working for me any more. *sad face* The market app called Masqed Crusader screwed it up. Supposedly it only changed my dns from stock to goggle’s dns. The whole point is to speed up the network.
Unfortunately I think it may have changed other settings too because mobile app will appear to connect but won’t transmit any data. Even after uninstall the settings won’t revert back to normal. Need to know how to find my original settings so I can try to set it back. Many users of this app are suffering with this kind of problem…i hope you can help… after using the app
nobody can connect thru my wireless tether
any help?
thank you so much, DNSet works great
If you have root access and Android 4.4 (KitKat), in order to change DNS in that version of Android you can use an app called “Override DNS for KitKat“. It’s available on the Play Store (I wrote it).
an app that change dns without root in 3g mode and wi-fi
please try https://play.google.com/store/apps/details?id=org.arcsoft.engelsiz
change DNS doesnt work on Kitkat and above.
As I said before I created an app to address exactly this issue.
To change DNS for a mobile connection in Android 4.3+ there’s only one option: Overrdie DNS.
Your app says it needs root.
I am new to smart phones, so can you guide me
how to “root” the phone safely ?
It’s an old Samsung N7000 given to me by my friend,
with Android 4.0.4, I think they call “ice cream sandwich”.
I dare not upgrade to a higher version, for fear it will hang on
cause more bugs.
Thanks.
Thank you i used DNS Changer and it worked.
A very good dns is -> 208.67.222.123 – alternate- 208.67.220.123
You can also use Prodns secure which does not start a vpn connection
Is there a way to Disable DHCP-specified DNS servers on a Non-Rooted Android 4.4+ device Without converting to a static IP?
Can i change the dns ip address and let the device have whatever ip address is assigned to it from the router?
That is my requirement:
I want to be able to edit the dns addresses.
I don’t mind what the ip address is of the device.
But I am not sure my android device will allow this, because when I am editing the settings I have to give it an ip address
you should change ip settings from ‘static’ to ‘dhcp’, this way your device will automatically obtain ip address from the router.
Thaaaaaaaaaaaaank you!
This post has been so much useful! configured my network and all the problems are dealt with! Thanks a lot!!!!!!!! Peace
Just for spite I changed the dns on my bf’s phone to block him from porn. Now his games and phone in general aren’t working right. How do I set them back to default?! We use Norton on the router, ( which I never touched). Just need the standard dns numbers to reset the dns back to original so he’ll stop being mad
Oh, and I need step by step instructions. Do I restart the phone when I’m done?
Dns changer now no longer requires root. Instead. It appears to run a local VPN and route you through it, and the VPN handles a sort of nat translation for dns requests.
Android 9 users can change the DNS server used by their mobile by going to Settings/Network & Internet/Advanced/Private DNS and entering dns.google or any other dns server name
Your article displays secondary “8.8.4.4” and primary “8.8.8.8” in reverse order for the Google DNS, top of the page.
I use DNSSet and it used to work reliably on Android 4.4.4, but I am finding it does not start reliably and needs to be manually started occasionally on Android 7+. It uses a VPN to accomplish its change to Google DNS.