personalDNSfilter is a DNS filter proxy written in Java.
It hooks into the domain name (DNS) resolution and returns the loopback address for filtered hosts.

It supports secure DNS via DOH (DNS over HTTPS) and DOT (DNS over TLS)! Available for Java enabled devices including Android (with and without VPN)!
See OpenVPN for personalDNSfilter in case you want to run personalDNSfilter on Android in combination with a real remote VPN!The main memory usage is very low, you can filter with millions of hosts, but memory usage will only be few MB!

For support feel free to join our Telegram group!

personalDNSfilter is hosted on Github, Google Play and F-Droid
personalDNSfilter is released under the GNU GENERAL PUBLIC LICENSE. Current Version is, November 9, 2020

• It can be used for filtering ads and other unwished hosts based on a host list – Thus it is a good AdBlock alternative

• On Android devices (Android 4.2 an newer) it can be used as effective ad, malware and tracking server filter without root access!

• It works with any upstream DNS server – filtering is completely local – no phoning home or such things!

• See dnsfilter.conf file for information on how to configure the hosts filtering

• personalDNSfilter is preconfigured with the ad host filter lists from,, and

• Feel free to add additional host filter lists of your choice

• You can run it locally on your device or centrally as DNS server in your network

• Tested on Raspberry Pi

Need help? Click here!








Credits: Thanks to Tobi aka ryder203 ( who provided the app icon (initially for personalHTTPproxy 1.5.70).
Thanks to,, and StevenBlack for providing the filter hosts sources.
Thanks to the translators TheImpulson, novas78, dogiex, yshalsager, Lukas Novotny, Taivotat2, dugi9991, Primokorn, gaich, phihungchrome