Can't change DNS on S3 mini I am trying to use OpenDNS on my phone. I have tried using SetDNS, DNS Changer, and DNSet. At least two of those claim to allow changing the wifi DNS without root access (I am only using wifi on an unrooted S3 mini with 4.1.2). No matter what I do the OpenDNS test pages say it is not working, and I also installed an app called Ping &amp; DNS which can display my network information and it indicates that my DNS is always obtained from whatever router I am connected to, regardless of any DNS apps I have running. 

Actually if I have SetDNS and DNSet running at the same time then SetDNS claims to be using Google's DNS (8.8.8.8, DNSet only supports Google's DNS). But Ping &amp; DNS still says that I am just getting DNS settings from the router. I am not sure which one it really is at that point. Regardless, I want to use OpenDNS.

UPDATE:
To be clear, I am using these DNS changing apps because I want all connections to automatically and only use OpenDNS. So either I want to know why none of these apps work as advertised (when reviewers don't say they don't work), or how can I make it work for all connections without an app in such a way that it can't be altered without a password or something. And I really don't want to bother with rooting if I don't have to.
First enable USB debugging.
You could use adb and use the command root or su shell and copy the build.prop file to /storage/sdcard/0/ or /storage/exsdcard with the copy /system/build.prop /storage/sdcard/0/ command (path of your (ex)SD Card storage vary from device to device). In this file the DNS server IP is saved. Find it and change it to the OpenDNS IP. Now copy it back to your /system/ folder with copy /storage/sdcard/0/build.prop /system/. Restart your phone and it should work.