I researched a way to filter sites using DNS Server on android phone, and that is to changed the phone's DNS Server, it worked for WiFi connection, but not for Data Connection, how would I Block/Filter Sites on Mobile Data Connection (Preferably using DNS Server).
For this the phone has to be rooted and the mobile version of a ads-blocking HOSTS file can be used. Here is an example: http://free-software-for-android.github.io/AdAway/
For mobile data, the DNS server would be provided by the telco. You can remove the proxy provided in the APN used by the telco. See FAQ at above link.