经过成功的测试版测试和开发阶段(非常感谢测试版测试员!)之后,我们很高兴地宣布5.0版正式发布!
PI-hole4.x和5.0之间有许多根本性的变化-因此,严格地说,这是一种单向操作。*一旦从4.x迁移到5.0,就无法返回;您将需要从备份恢复。我要在跳之前看完所有的笔记,并做一个备份!
实际上,有相当多,但我们将在这里简要地回顾一下更重要的事情。
这是用户长期以来一直在要求的,我们很自豪终于能够提供这一令人敬畏的功能。可以创建多个组,并可以将黑名单、黑名单和白名单应用于组。*黑名单、黑名单、白名单均可单独启用/禁用。
为了支持这一新功能,我们将列表存储从/etc/pihole目录中的单个文件迁移到同一目录中的新Grasion数据库。这允许控制列表中项目的启用和禁用,甚至可以添加注释来提醒您为什么要将某些内容列入黑名单/白名单!此外,数据库将存储您最初添加域的时间和上次更改(或禁用)域的时间。*您可能会注意到,更新重力测试(pihole-g)所需的时间比以前稍长一些,但此过程通常在每周清晨在后台进行一次,应该不会中断您的DNS服务。运行时间较长是因为生成了高效的B-tree索引,允许在数据库中进行快速查找。
我们添加了一个仪表板界面(组管理),以便能够轻松使用这一强大的新功能,但是,目前没有通过ipihole命令的CLI界面。如果要从CLI管理组,则必须直接与数据库交互。我们在官方文档中准备了一个广泛的示例,展示了通过Web界面进行一些可能的配置,但也展示了如何通过CLI实现相同的功能。
需要将依赖于操作文件的自定义用户脚本(如.gravity.list、Black.list、Whitelist.txt等)更改为与数据库交互。这个新的数据库有如此强大的功能,它是值得的!而且,我们在这里提供帮助,只需在我们的话语平台上打开一个讨论,我们就可以就如何将新的重力数据库用于您的自定义脚本提供建议。额外的好处是,您将学习如何与数据库系统交互,该数据库系统也广泛用于Android(是的,智能手机操作系统!)、Google的Chrome、Firefox、许多内容管理系统等广泛的应用程序中。如果你愿意,你甚至可以在下一封求职信中把这一点加到你的简历中。
这已经在一个被广泛讨论的功能请求中涉及到,因为它能够深入分析CNAME查询。这将允许PI-HOLE发现CNAME链中是否有已知的域被阻止。如果找到一个,PI-HOLE现在可以阻止原始查询。*该功能默认为启用,但可以使用FTL配置选项(CNAME_DELP_INSPECT=FALSE)禁用。*请注意,如果您将某个域明确列入白名单,则无论CNAME轨迹是否通向被阻止的域(白名单始终优先),都会检索该域。
改进了仪表板上的图形(24小时历史记录的条形图,与之前平滑的曲线相比)。
有关查询日志页上阻止域的原因的其他信息。例如,如果查询被正则表达式阻止,单击该状态块将把您带到阻止它的阻止列表条目。
改进了对导入的阻止列表的解析。*重力脚本现在将显示有多少域名无法导入,并提供一些原因示例。
通过“Local DNS Records”(本地DNS记录)选项卡从Web GUI自定义主机名。*这会将主机名分配给IP地址,类似于可以使用CLI在/etc/hosts文件中执行的操作。*映射存储在/etc/pihole/custom.list中。随着此更改,先前的pihole-a hostrecord命令将被删除。
改进的调试日志,以表格形式显示您的阻止列表和组,包括注释和启用/禁用状态。
改进了传送功能。*导出更多设置,并且有从传送器文件导入的其他选项。
pi-hole不再更改分配给pi的名称服务器(在/etc/Resolution v.conf中)。*PI-HOLE主机的现有名称服务器设置将受到尊重并保持不变。
向网络表添加了IPv6支持。注意:此网络概述旨在使用可用信息快速查看网络上的客户端,以帮助您确定网络上的客户端是否正在使用PI-HOLE进行DNS。它不打算用作网络管理工具。
更改了初始安装时提供的阻止列表(一些以前的阻止列表不再保留)。
使用QEMU和Armel坞站图像为Raspberry PI 1和0版本添加FTL变体。
在Alpine Linux上使用MUSL添加一个自包含的FTL变体。此二进制文件在任何方面都不依赖于glibc代码。
当然,还有大量的小调整、改进和一些修复的错误。
要从版本4.x更新到这个新版本,可以运行pihole-up。*如果您一直在运行5.0测试版,请运行pihole checkout master以从测试版转移到主分支。