DNS servers are used to translate the human readable domain names (such as yahoo.com) into IP addresses (such as 22.214.171.124). So when you enter a domain name in the address bar of your web browser, it contacts a system configured DNS server and gets the IP address for the domain. Only after retrieving the IP address, it can continue to connect to that remote web server.
On desktop operating systems such as macOS, Windows or Linux, it is very easy to set DNS servers for any type of the internet connection. But on Android mobile phones, it is not really allowed to change the DNS servers for mobile internet such as 3G, 4G LTE, or 5G data connections.
But with the help of an app called DNSChanger, we can set our own custom DNS servers to be used even for the mobile internet on Android. It uses a trick to accomplish this task – it actually starts a VPN service through which the internet traffic is tunneled and thus custom DNS is made possible.
As we launch, it shows primary and secondary DNS server to be applied. We can just tap on the Start button to activate the DNS servers. It will keep running in the background and can be seen in the notification bar. For the DNS servers to remain active, it has to be kept running in the background. You can pull down the quick menu and stop it from there.
In the settings for the DNSChanger for Android, we can choose from a number of public DNS servers such as Google Public DNS, Cloudflare DNS, OpenDNS, OpenDNS Family, Yandex, Level3, Comodo Secure, CleanBrowsing and more. We can make it work with IPv4, IPv6 or both. We can make it automatically start working as soon as we enable data connection for the mobile networks.
You can get DNSChanger for Android from https://play.google.com/store/apps/details?id=com.frostnerd.dnschanger.