破坏性更改
- PeerBanHelper 现在需要使用 Java 21 或者更高版本
- WebUI 和 WebAPI 现在需要使用 Token 鉴权,PBH 会在您升级后,自动生成一个 Token 并写入 config.yml 的
server.token
字段,您需要此 Token 来登录 WebUI/WebAPI
默认规则更新
- Client Name 黑名单默认规则新增
{"method":"STARTS_WITH","content":"ljyun.cn/hangzhou/monitoring"}
- 观测到使用 v4/v6 连续地址段,在部分热门种子上频繁连接/下载少量数据/断开/重新连接的行为,且拒绝提供上传数据吸血
- 其域名使用者疑似为 PCDN 服务商
新功能!
- PeerBanHelper 现在能够检测损坏的配置文件,并提醒用户修复/重新生成,此前 PBH 会静默失败并导致功能异常
- 假进度检测算法增强
- 现在假进度检测算法不再完全依赖下载器统计报告,将采取类似 Tracker 的算法,计算上传增量。当下载器的数据统计被重置后,PBH 能够在原数据的基础上,持续追踪上传增量
- 新的检测算法能够抵抗新出现的下载 512 KB 后断开重连的恶意对等体
- 现在完全忽略 Peer 的端口,只按 IP-Torrent 识别,以便避免恶意 Peer 频繁变更端口的欺骗检测算法的问题
- 现在支持用户定义识别 IP 前缀长度,相同前缀的 IP 范围将按相同用户识别处理,默认配置为(IPV4:32 (单个IP),IPV6:64(三大运营商通常下放用户IPV6前缀后,DHCP服务器的默认配置))
性能优化
- 现在积极使用 Java 21 提供的虚拟线程特性,大幅度改善在较弱性能设备上,并发请求的性能和资源消耗,并将并发优化应用在了更多的位置
- 现在 WebAPI 请求按每下载器单次检查操作的 Peers 获取并发为 16req,若上一次检查未按时完成,不会阻塞下一次检查
用户体验优化
- 现在在 API 调用错误时,不再打印全量堆栈,避免有下载器挂掉后日志刷屏
错误修复
- 修复在旧版本中,因数据未写入缓存,假进度检测完全不起作用的问题
- 修复多拨检测模块的日志占位符未替换的问题
Docker 用户
请拉取镜像:ghostchu/peerbanhelper:v4.0.0