github PBH-BTN/PeerBanHelper v9.1.0-beta1

latest release: v9.1.0-beta2
pre-release10 hours ago

Warning

此版本为测试版本,可能并不稳定或者存在严重问题。此版本仅用于高阶用户尝鲜和测试用途,请勿用于生产环境。使用测试版本前,请做好数据备份,测试版本数据不保证可平滑升级到稳定版本。普通用户请下载最新正式版

Warning

请做好数据备份,一旦升级到此版本,将无法降级到稳定版。如需降级则必须从备份中还原所有文件。

Note

自此版本开始,PeerBanHelper 将使用 Java 25 版本,使用 NoJava 和 Portable 的用户请注意升级 Java 运行时。使用 Docker 和 Install4j-WithJava 安装包的用户,运行时将自动升级。

新功能

仪表盘统计数据

@Ghost-chu

新增 “近7天会话唯一IP数量” 参考值,以便用户对比不同时间段 Peer 活动会话概览。
数据统计基于会话跟踪服务,实际值可能与参考值有所出入,数据仅供参考。

image

IP 统计

@Gaojianli @Ghost-chu

图表新增 IP 统计功能,基于会话跟踪服务统计数据,生成统计时段内的 Peer 连接情况概览。以便直观计算和统计和对比不同时段内的 Peer 活动情况。
数据统计基于会话跟踪服务,实际值可能与参考值有所出入,数据仅供参考。

image

字段排序支持

@Gaojianli @Ghost-chu

封禁日志、访问记录、封禁记录等表格全面支持字段排序。现在你可以通过表格上的排序指示器进行多条件组合升序、降序排序。以便更加直观、直接、快速的整理数据。

image

封禁列表重映射

@KagurazakaNyaa @Ghost-chu

新的 “封禁列表重映射” 选项允许在向下载器更新 IP 封禁列表时,将单个 IP 地址映射到更广泛的范围,并生成 CIDR 表达式传入。该选项默认对 IPv6 地址开启,以改善随机 IPv6 地址的封禁效能。由于限制,目前暂时不支持 qBittorrent qbittorrent/qBittorrent#23157

image

任务反吸血

@Ghost-chu

任务反吸血模块替代了原有的迅雷相关封禁的 PeerID/客户端名称 规则,现在 PeerBanHelper 将根据预设逻辑对已知默认设置存在不良行为的客户端进行管控。具体如下:

  1. 如果是非 0019 版本的其他版本迅雷,则直接进行封禁。
  2. 如果是 0019 版本的迅雷,由于迅雷官方添加了下载过程中向其它用户提供上传的功能,但由于仍然不会做种,因此 PBH 将仅拒绝其连接到做种任务

在未来我们计划添加对 BT 播放器等类似的管控规则。升级后,请检查 PeerID/客户端名称规则列表,并删除迅雷有关规则(除 -SD 外)。

image

其它新功能

  1. 【实验性】预载适配 Transmission 未发布的 RPC API 更改,支持读取 peer_id, bytes_to_client 和 bytes_to_peer 字段,提供 Transmission 上的完整反吸血能力 @cdowen @Ghost-chu
  2. 【实验性】新增演示模式 (Demo Mode),以演示模式启动时,接口将积极拒绝所有写入和修改请求,并从响应中排除、替换敏感数据字段。@Ghost-chu

功能改进

进度反作弊

  1. 现在支持来自同一 IP 地址不同端口的多重连接,现在能够正确单个连接计算传输量而不是按照回退进行叠加计算,避免出现错误的累积,改善了检测误封禁率 @Ghost-chu
  2. 现在分离存储网段和单个 IP 的流量跟踪数据,pcb 数据表现已废弃,并可能在未来删除以回收存储空间 @Ghost-chu

错误修复

  1. 修复进度反作弊器针对解封事件的监听器未被正确注册以重置相关跟踪项数据的问题 @Ghost-chu
  2. 修复 WebUI 部分页面当重新进行查询时,没有正确跳回第一页结果的问题 @Gaojianli
  3. 修复特殊情况下表创建和表升级可能出现 SQLException 的问题 @Ghost-chu
  4. 修复传递 orderBy 参数时,默认排序优先级比用户传递排序参数优先级更高的问题 @Ghost-chu
  5. 修复 Java 运行时升级后,Docker 用户需要删除 JAVA_OPTS 和 JAVA_HOME 环境变量才能启动容器的问题 @Ghost-chu

删除的功能

  1. PTRBlacklist (DNS 反向解析封禁)模块已在此版本中完全删除,因为其性能非常糟糕,且完全没有任何实质性作用 @Ghost-chu @Gaojianli
  2. 【实验室】事务批量封禁列表提交已被删除,因为该功能会导致并发写时出现 SQLException,且是否启用该功能在实践中性能差距并不大 @Ghost-chu

其他更改

  1. 改进了 Win32 平台工作集裁剪条件,并改善了 GC 后一段时间内的进程计算性能 @Ghost-chu
  2. 调整汇总设置首选项有关 Peers 跟踪的选项到统一的模块下 @Ghost-chu
  3. 允许使用 ExternalSwitch 关闭自动修改 qBittorrent 设置的逻辑 @Ghost-chu
  4. Github API 检查更新时的 429 错误现在打印到控制台 @Ghost-chu
  5. 改进了部分 WebAPI 的性能 @Ghost-chu
  6. 项目从 Maven 迁移到 Gradle 以便改善构建灵活性和构建性能 @Gaojianli
  7. Github 工作流和 Docker 构建改进 @Gaojianli
  8. 预载 Client Analyse 统计服务、图表接口 @Ghost-chu
  9. 调整部分数据表的索引 @Ghost-chu
  10. 重构 Active Monitoring Module,拆分统计功能到单独模块,以更好的解耦合并降低维护难度 @Ghost-chu
  11. 优化了 SQLite 数据库的性能表现 @Ghost-chu
  12. 固定 Java 版本基准为 Java 25,调整更新 Docker 容器、install4j、软件包、Portable 包的启动命令 @Ghost-chu

Docker

DockerHub: ghostchu/peerbanhelper-snapshot:v9.1.0-beta1
阿里云国内镜像加速: 测试版本不提供国内镜像加速源


部署教程 | 常见问题 | 如何设置下载器

Full Changelog: v9.0.1...v9.1.0-beta1

Don't miss a new PeerBanHelper release

NewReleases is sending notifications on new releases.