本文档提供了 DNS66(一种适用于 Android 的基于 DNS 的主机拦截器)的全面指南。它详细介绍了安装方法、使用说明、功能、隐私注意事项和贡献指南。该应用程序利用 VPN 服务拦截 DNS 查询,阻止不需要的内容,同时允许自定义上游 DNS 服务器。未来的功能将包括自动更新和改进的调试功能。
适用于 Android 的基于 DNS 的主机阻止
这是一款适用于 Android 的基于 DNS 的主机拦截器。在默认配置下,
几个广受尊重的主机文件用于阻止广告、恶意软件和其他
奇怪的东西。
安装中
您可以使用官方 F-Droid 存储库通过 F-Droid 安装它,也可以使用我的个人存储库 https://jak-linux.org/fdroid/repo,它会尽快更新。
您还可以在 GitHub 的下载部分下载 apk 文件。目前,这些文件与我的个人 F-Droid 存储库中的文件相同,但将来可能会发生变化。
XDA:讨论和预览版本
XDA 上有一个帖子,可以讨论 DNS66,我偶尔会发帖
预览 git 存储库的构建:
https://forum.xda-developers.com/android/apps-games/app-dns66-source-host-ad-blocker-root-t3487497
使用它
首次启动时,您必须手动更新主机文件(使用
刷新按钮),然后服务才能正常工作(问题#1);你呢
目前还必须定期自行更新主机文件(问题#2)。
主机和 DNS 服务器列表中的项目可以移动和删除)
使用标准 RecyclerView 交互的列表(长按使
条目可移动,向两侧滑动即可将其删除)。对于主机,稍后的条目
覆盖先前的条目;对于 DNS 服务器,首选第一个服务器。
目前,存在一些小的可用性问题:
也没有输入验证,因此 DNS 服务器不是有效的 IPv4
地址不会被拒绝,DNS 服务器条目的 URL 也不会被拒绝(我们打算
将来支持 URL,因此您可以将应用程序指向远程列表
服务器)。
它是如何运作的
该应用程序建立VPN服务,并将所有DNS服务器的路由转移到
它。然后 VPN 服务拦截服务器的数据包并转发
任何未列入黑名单的 DNS 查询。
可以配置自定义上游 DNS。如果该功能被关闭,
使用当前连接的 DNS 服务器。应用程序船舶是预先定义的
众所周知的(主要是德国的)非日志服务器列表,由
混沌计算机俱乐部。
隐私保证
隐私是 DNS66 最重要的方面。目前,DNS66 严格
数据减少:运行它只能减少离开您的数据量
设备,而不是增加它(显然,除了获取主机文件),至于
每个请求,我们要么允许它离开您的设备,要么不允许 - 我们会
不发送其他请求或向请求添加其他信息。
虽然尚未实现,但 DNS66 的未来版本可能会有额外的功能
可能比您的手机通常共享更多数据的功能。之中
这些特点是:
自动更新。您的手机可能会定期联系服务器进行查询
对于新的上游版本和新的主机列表。 DNS66 将仅包括
完成请求所需的大量数据。
调试。我们希望有一种比以下更好的方法来调试程序故障
手动运行 logcat。根据定义,这样的功能需要共享
调试日志。调试日志(包括logcat)可能包含个人信息,
您应该在公开分享之前对其进行审查。
如果添加了此类功能,您将可以选择启用
它(默认情况下它将被禁用)。没有此功能将不会被打开
您的明确同意(例如,在询问您是否同意的对话框中单击“是”
想要自动更新)。
贡献
请参阅 CONTRIBUTING.md
执照
该程序是免费软件:您可以重新分发它和/或修改
它遵循 GNU 通用公共许可证的条款,由
自由软件基金会,许可证的版本 3,或
(由您选择)任何更高版本。
该程序的某些部分仅根据许可证的版本 3 获得许可,并且
某些部分可能根据其他兼容许可的条款获得许可。看
进一步(机器可读)信息的文件版权。
二进制文件还捆绑外部库。据我们所知,这些
均根据 Apache 许可证 2.0 版获得许可,pcap4j 除外,它
根据 MIT 许可证和 dnsjava 获得许可,它使用 3 条款 BSD
执照。看
文件copyright.libraries 获取更多(机器可读)信息。
行为守则
请注意,该项目发布时的贡献者代码为
执行。参与该项目即表示您同意遵守其条款。
作者
朱利安·安德烈斯·克洛德 [email protected]
部分内容源自 Daniel Brodie 的 https://github.com/dbrodie/AdBuster。