GithubHelp home page GithubHelp logo

ingozenz / personaldnsfilter Goto Github PK

View Code? Open in Web Editor NEW
617.0 26.0 53.0 2.86 MB

See http://www.zenz-solutions.de/personaldnsfilter for details

License: GNU General Public License v2.0

Java 96.65% Shell 0.27% Batchfile 3.08%

personaldnsfilter's Introduction

personaldnsfilter's People

Contributors

acsway878787 avatar dandelionsprout avatar ghazel avatar ingozenz avatar j-moriarti avatar lancehilliard avatar licaon-kter avatar lovenemesis avatar memiks avatar poussinou avatar ridje avatar sr093906 avatar theevilskeleton avatar tuthanika avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

personaldnsfilter's Issues

Android Notification about "High battery consumption" after Update

Hello,

since the update to version 1.50.32.1 I receive the following system notification the hole time:
2019-04-27

A downgrade to version 1.50.30.1 helps to avoid this notification.
Why does this message appear only in the latest version?

I have the Moto G5, with Android 8.1.0 unrooted.
Do you need any informations?

Regards,
Theo

Remote connect failed on Android 9 device

On my ZTE Blade V10 running Android 9 I get this error whenever I try to establish connection:

Exception during initConnection(): java.net.ConnectException: failed to connect to /127.0.0.1 (port 3333) from /127.0.0.1 (port 57396) after 15000ms: isConnected failed: ECONNREFUSED (Connection refused) Remote Connect failed!java.net.ConnectException: failed to connect to /127.0.0.1 (port 3333) from /127.0.0.1 (port 57396) after 15000ms: isConnected failed: ECONNREFUSED (Connection refused)

I'm not sure if that's a device, android-version or app related issue, which is why I posted it here.

Routing USB-Tether Traffic via Mobile VPN(DNS-Filter)

Does DNS lookups from a PC pass through MobileVPN(DNS-Filter) when Mobile(Android) is tethered via USB to a PC/Laptop?
I don't see it in logs nor in blocking action which are listed on Android device.

Since DoT & DoH are now active in this DNS-Filter, it would greatly improve PC/Laptop browsing experience which are tethered to Internet via Android phone.

I'm currently using Stubby on Ubuntu to avail DoT.

cheers

[Question] Is there an easier way to clear the log files?

Right now to clear the log files I delete the files but after you delete them any new connections made aren't logged until I Restart PersonalDNSFilter. Can there a be a Clear log files button or is there an app you recommend I use to view and clear them?

One more thing, is it possible to log which app made the request? It would help to know which app to uninstall.

Thank for your awesome app.

PersonalDNSFilter 1.50.13
Android 4.3

Feature request: domain level blocks

It would be great to be able to block entire subdomains, domains, or even TLDs, eg.

  • this.bad.example.com, that.bad.example.com, another.bad.example.com -> bad.example.com
  • if I'm a dog on the internet, maybe I want to block all of .cat

Feature Request: Allow to add alternative DoT domain name

I wish to suggest to expand config for DoT resolver where some DoT DNS service have more than one domain but still have one or same IP address.

For example, SecureDNS have one IP address, but two DoT resolver domains below.

  • dot.securedns.eu
  • ads-dot.securedns.eu

An existing DoT config entry is...

  • 146.185.167.43::853::DoT

The improved DoT config entry will be like...

  • 146.185.167.43::853::DoT::dot.securedns.eu
  • 146.185.167.43::853::DoT::ads-dot.securedns.eu

No android.permission.INTERACT_ACROSS_USERS

On my Tablet with Android 8.1.0 dnsfilter throws following message and does not work:

Initializing ...
Initializing PersonalDNSFilter Version 1.50.29!
Running on SDK27
Using Blocking Mode!
java.lang.SecurityException: getPackageUid: Neither user 10285 nor current process has android.permission.INTERACT_ACROSS_USERS.
at android.os.Parcel.readException(Parcel.java:2029)
at android.os.Parcel.readException(Parcel.java:1975)
at android.net.IConnectivityManager$Stub$Proxy.establishVpn(IConnectivityManager.java:2459)
at android.net.VpnService$Builder.establish(VpnService.java:1026)
at dnsfilter.android.DNSFilterService.onStartCommand(DNSFilterService.java:288)
at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3693)
at android.app.ActivityThread.-wrap22(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1827)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:7000)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)

Seems. there is a permission missing for multi user environments?

Many thanks.

pDNSf doesn't ask root

In "dnsfilter.conf" its stated that "dnsProxyOnAndroid" setting need root acces to be enabled.
However when I change "dnsProxyOnAndroid" from false to true, and then open pDNSf app (I did force stop it before), it doesn't ask for root access.
And I got this "Exception : Cannot open DNS port 53! bind failed : EACCES ( permission denied)" error message.

Feature request: Show red sign or "x" for NXdomain or 0.0.0.0

Im using blahdns.com DoT and DoH
The server will return NXDOMAIN or 0.0.0.0
would be good to see in the log area, if there are some ads / tracker domain being blocked on upstream and return NXDOMAIN / 0.0.0.0 will mark with RED sign or 'X'

Thanks

Image filtering

Hi,

Thanks for this great project.

I'm looking for a way to filter images.

Will it be possible to block only image file from getting downloaded to the device?

Thanks

Force close with Lollipop 5.0.2 [personalDNSfilter 1.50.17]

Hi IngoZenz,

Thanks for your really smart app.
I suffer random crashes with personalDNSfilter 1.50.17 version. I reinstalled from scratch LG G2 d802 stock rom with lollipop 5.0.2

Unfortunately it didn't change anything. So here's a catlog that recorded the last FC. Forgive me if the wording of my question is not quite standard : as a n00b I hope I will be able to help you fixing this issue.

I have already posted some questions to t-ryder on this thread https://forum.xda-developers.com/android/apps-games/app-personaldnsfilter-block-malware-t3567898/page5

2018-06-10-14-25-09_DNSFilter_ForceClose.txt

Scrolling not possible

Hi,

on my Honor 9, running Android 8.0, I'm not able to scroll the view of the app in case I have activated the "extended settings" checkmark (Screenshot attached). This causes me not to be able to see the logs at the bottom of the view. It seems that the view is not scrollable. Can you fix this?

Thanks for your great work!

Screenshot_20190317-110757

Building in AndroidStudio fails.

The current build.gradle fails, this is how I fixed it.
buildscript { repositories { google() // here jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.5.0' } } allprojects { repositories { google() // and here jcenter() } }

[Bug] in ver 1.50.32.1

Hi and greetings
I'm a user of your amazing program
Anyway upon upgrading to latest version 1.50.32.1 and restoration of my backup of previous version
I encountered such a terrible problem
The dnsfilter was blocking everything
Blocking every connection
I thought it might be my filterlists fault but still after disabling all my filters and make sure the index is 0 still the dnsfilter blocking everything
I tried to reset the whole program but still was blocking everything
I backed up to the previous version 1.50.31 as it was working well for me
So it might be not an big issue but it would be great if you looked at it
My device is s7 edge sm-g935 exynous
Ps. I downloaded the latest apk from f-droid

Option to see full urls in logger

Hi! Thanks for your lightweight and fast app. I really like the logger functionality and it would even be more usefull if it printed full urls instead of only the domain. Would that be possible? ( if the view gets too cluttered maybe implement it so that the domain expands into the full url when tapping it?)

Feature request: configurable log window

I love that I can see what queries are allowed and denied; one thing I'd like to see in the app is a way to filter out all the dns detection, ipv6, connectivity junk... That would greatly assist in figuring out what local changes I want to make.

v1503403 is broken and doesn't correctly pick up DNS from DHCP

I just upgraded to 1503403 from 1503305 and pdnsfilter no longer picks up DNS resolvers correctly after switching networks.

I rebooted my phone and pdnsfilter didn't see the carrier provided DNS, though it was able to use manually specified DNS resolvers. This is not acceptable since some networks require that I use the internal DHCP-specified resolvers.

Reverting to 1503305 makes the problem go away. Let me know if there is any particular debug info that would be helpful.

Samsung Galaxy S9+, Android 9

Dnscrypt Proxy Documentation

Is there any dnscrypt proxy documentation lying around? Cause I can't get it to work - still detect my ISP DNS.

Thanks.

support for proxy

Thanks for this app.. just on side note, may you add proxy support as well like in personalhttpproxy.. [proxy]:[port] .. cause personalhttpproxy has been deprecated.. please consider if this is possible..

Alternative method other than vpn

how about root method (like adaway) to block the ads using hosts file other than vpn? in android running 2 vpns simultaneously is not possible. so, it would give users chance to run this app using root method & also be able to run other vpn service.

Feature Request: OpenVPN support

Hi,

Please consider adding OpenVPN support in pDNSf , it would be a great option to use a pro VPN account with OpenVPN support along side the local DNS ad filtering.

Thanks and Regards,
Sathish.

prefer local DNS server

My local (LAN) DNS server resolves several internal addresses, e.g. my Nextcloud, for file sync, calendar and contacts. However, DAVx5 (cal/card sync) often issues failure notifications, because my phone (or this app?) suddenly decides to use Google's DNS servers. My local DHCP server is configured to tell clients the proper local DNS IP.

I'm on a Galaxy S7, Android 8, latest updates. pDNSfilter from F-droid repo, latest.

Edit: fixed typo

Support for blocking certain URLs

Dear Dev,
This is the best ad blocker for android so far which is lightweight plus powerful.
And I've a request to made, may you add feature of blocking URLs too?
It is needed when user don't want to block whole website but want only to block certain page of that website.
Example: I wanna block www.block.com/block/ but don't wanna block whole www.block.com

Option to backup filtered host in txt format

Currently we have 3 host source in the app. And app filters this host and remove duplicate entries. So my request is to have an option export the filtered host (host file after duplicate removed) in txt format.

DNS Cloudflare not working for mobile data connection

Hi,
I run an Android 6.0.1 (CyanogenOS 13.1.2) non rooted.

After installing and starting your app I found that when on mobile data connection the DNS is the one from my ISP. Instead when connecting via WiFi it is Cloudflare, as set in the GUI of your app.

DNS checked with http://www.whatsmydnsserver.com/

Beware that other apps like DNSChanger are able to set Cloudflare also for mobile data connection in my phone.

[Feature Request] Blocking apps from internet

Hi dev
Thanks very much for all the work you did now
I actually moved from Blockada to personal dnsfilter
Blockada was giving me some resource hogging problems and didn't have doh/dot
Anyway thanks to your simple lightweight app I have 2million rule with doh(dns over https) without affecting the device performance (s7 edge)
But there's something still missing I think
The choice to block apps from internet completely
I would love to see this feature in your amazing app
Again thanks for hard work

Color blind mode for the log.

I am somewhat color deficient he red and green colors for allowed and blocked hosts can be problematic sometimes, I actually really like that the log has such small font except the colors make it harder to parse. I know there are checkboxes and X's on the side but it's not that fun to always look back and forth between them and the host name.

Alternatively change the background of the text instead of the characters to make it more readable for different color deficiencies, making out colors of tiny text is harder than the backgrounds.

If you want to see how colors can be a problem and you use windows 10 to develop the app then try to use the Win+Ctrl+C shortcut to make your screen temporarily greyscale.

Android 10 or Cloudflare Oddity

After updating to the Android 10 Sept 5 Security Patch, I had a weird error originating from the operating system. Sorry that I cannot recall the exact wording. However it suggested that V1.50.31 wasn't compatible with this version of Android.

At the time I had installed Cloudflare's new VPN app but never tested it. Every time I tried to enable blocking, the phone would make a "ding ding ding" audio sound but no other message.

PersonalDNSFilter did not allow any network traffic at that time.

Uninstalling the Cloudflare app didn't help but then rebooting "seems" to have stopped the error message and "ding" sounds.

No entirely sure of what why it happened. But you guys might find it useful in some way.

UPDATE:

After updating to Version 1.50.33.5, I've tested again. My phone doesn't seem to work well if your app is active. The log isn't showing network activity when I try to use apps.

My phone is a Pixel 3 XL with Android 10, Sept 5 Security Patch.

Chrome on android 9

Hi, this personal dns filter is great!
Ive used on android 6 to android 8 phones, I just got a new phone Galaxy A30(Android 9), the filter still works but not for chrome or samsung browser, (chrome beta doesnt work either), it works on firefox and other browsers, is there a way to fix this, maybe some configuration?

Packet Capture Issue on Opera Browser

Hi,

I have noticed that when i install personaldnsfilter on android phone having OS version 7.1.2 N2G47H. It is showing blocked domains when i use chrome, UC browsers but when i open Opera Mini Browser & open blocked domain, it is NOT capturing network traffic and blocking domain

Is there any open issue with Opera Browser ?

[Feature Request] Toggles and etc

Hi!

Thanks for the app! It is working very well on my Xperia xz2, Pie :D

There is a few points I want to see in app:

  • Toggle to turn-off the persistent notification (I don't just want to hide it using Android natively)
  • Toggle not to auto-start the VPN when opening the app (I want to update first, configure first, whitelist, and etc before starting the VPN service)
  • Toggle to whitelist all system apps (There are times that I only want Chrome (or other browsers) to be filtered in the VPN)
  • Option to remove all overrule in the conf file (I only want the app to respect only and just only the domains I imported from urls; I manually remove all overrule)
  • Option to remove all pre-installed category/sources (I manually remove all, I use my own list)
  • Toggle to turn-off/on the traffic logger file instead of manually editing the conf
  • Auto-restart the VPN service (not only the thread) to properly release the connection whenever changing the DNS, updating the filters, whitelisting an app, and configuring other domains/hosts (had a connectivity problem just now because of that; cannot connect when dns is changed while VPN service is on)

I think that's all for now ๐Ÿคญ

Thanks and I hope you implement those. ๐Ÿค—

[Bug] Crash when trying to copy text from the logs area

Steps to reproduce:

  1. Open PersonalDNSFilter
  2. Select an random text from the logs area
  3. Try copying everything, including the area that not contains text
  4. See the crash

The crash basically occurs when the user try to copy the text from an area that doesn't contains it (out of the area).

Examples:

If you try to select a specified text area, the crash doesn't occur:

PersonalDNSFilter.png (26.83 KiB)

If you try to copy the "text" from an area where there is none, the crash occurs:

PersonalDNSFilter.mp4 (3.63 MiB)

Logs:

System logcat, crash log, event logs and main logs:

PersonalDNSFilter.zip (10.96 KiB)

Environment:

Device: AllCall S1 X
Manufacturer: Teksun
ROM: Android 8.1 Stock/Unmodified (armv7)

PersonalDNSFilter version: 1.50.33.5

Notification Text

Would it be possible to update the notification text when there are errors such as being unable to reach a remote DNS server or it is unable to accept connections? Currently I use Tasker to ping some known locations and bring up the app when there is an error so I can restart the VPN but checking the notification text would let me know as soon as there is an error.

PersonalDNSfilter blocks all traffic.

Hello. Last night I tested this program installing it from F-Droid and it seemed like the only program I could use in my old 4.4.2 Android phone to block adds and spam traffic (Since the BlokadaV3 app doesn't run on old Android versions and my phone is not rooted to try other apps)...

The problem is that when I activate PersonalDNSfilter (or just DNSfilter, that's how's called in F-droid), it blocks everything, I can't even receive Whatsapp messages. I haven't dig deeper, but is not good that right out of the box, this program doesn't work how is supposed to...

One little thing that might help, when I turn on PersonalDNSfilter, it throws this warning in the log window:

WARNING!: Application whitelisting not supported for Android version below 5.01!
Setting ignored!

I really hope to be able to use DNSfilter on my phone, since it would be the only one I could use in old, non-rooted phones. I would certainly highly recommend it to my friends here in my country, where not many people can afford the luxury of newer phones but still want/need to protect their traffic.

Anyway, thank you very much in advance.

Selectively allowing a currently filtered host.

I'm wondering what the best way to selectively allow a currently filtered host. When I launch the app, I can see that it's being filtered and the app doesn't work. Specifically, api.branch.io and decide.mixpanel.com

"Prevent device sleep" does not function

Device:
Nokia 3.1 - Android 9.
Stock ROM, developer mode on. No OS behaviour-altering apps.
personalDNSfilter downloaded and regularly updated from F-Droid.
Problem:
Occasionally personalDNSfilter gets shut down on locked screen. App still open in "recent items" screen. Switching to or opening personalDNSfilter automatically turns it on again.
Remedies tried:
Turning off all battery saving features for all apps.
Whitelisting app via adb.

App still gets shut down automatically.

[Feature Request] Add Color-Blind mode to Windows OS (Colored cmd output)

Hi! I'm new here (and GitHub!), but I've been using your Amazing app both in Android and Windows.
My request is that, can you add a feature (similar to #40) for windows?
I was curious about this, so with my little knowledge, tried to find a way to implement this feature with trial and error, and somehow got succeeded ๐Ÿ˜„ (and built a test forked version here : https://github.com/j-moriarti/personaldnsfilter. But it is not neat in code and also I didn't know how to pull request :) , so I just came here to request this feature and say Thank you ๐Ÿ‘

Firewall integration

A firewall would be a nice accompaniment to adblocking. One that allows us to block a given app from connecting to the internet via mobile data, wifi or both. It would obviate using a separate firewall app that utilizes local vpn to function.
The main object of this feature, imo, is to have an even better control over the connectivity of apps than what pdf gives us right now.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.