Skip to content

v0.0.7

Latest

Choose a tag to compare

@fcchbjm fcchbjm released this 26 May 14:17

v0.0.7 — 上游同步、dnsproxy v0.81.10 集成与发行语义延续

本版本是 distribution / integration 发行:在 v0.0.6 基础上同步 AdGuard Home 上游(约 v0.107.76 能力区间),并将内置 DNS 运行时对齐至 github.com/fcchbjm/dnsproxy v0.81.10。标签 v0.0.7 指向 bed991cb

架构边界: 本仓库负责 打包、发版与更新语义;传输与 DNS 运行时行为由 dnsproxy fork 定义。DoH/DoQ/TCP/TLS、PPv2、并发与缓存等细节以 dnsproxy v0.81.10 发行说明 为准。


亮点

  • 上游集成:GLiNET 鉴权路径遍历修复、关闭 DNSSEC 时的 DNS 缓存行为修正、查询日志 reason 筛选及相关 API 文档;YAML 时长支持 d(天)
  • 运行时对齐:依赖 github.com/fcchbjm/dnsproxy@v0.81.10(自 v0.81.9 升级);Go 1.26.3
  • 发行语义(自 v0.0.6 延续):模块路径 github.com/fcchbjm/AdGuardHomev* 标签触发本仓库 Release / GHCR;Release 二进制默认检查本仓库 version.json;Docker 不嵌入 fork 更新索引。
  • 质量:Codecov v5;macOS CI TestConfigFilePath 路径规范化修复(bed991cb)。

行为变更(经本发行集成)

以下变更通过 dnsproxy v0.81.10 或上游 AGH 进入本发行版;运维影响详见 dnsproxy 发行说明与本节「运维说明」。

主题 说明
DNS 缓存 / DO 位 带/不带 DNSSEC DO 的请求不再共用同一缓存项(上游 #8384
DoQ 空闲超时 QUIC 空闲超时 5m → 30s(上游默认,经 dnsproxy 集成)
查询日志 API GET /control/querylog 新增 reasonresponse_status 已弃用
配置时长 YAML 支持 d 单位;回退至更旧上游版本前须改回小时
安全 GLiNET 模式鉴权路径遍历修复(AG-54304)

Fork 发行语义(distribution layer)

本 fork 的定位是 集成与发版,以下为 v0.0.7 的定义行为

模块与依赖

  • Go 模块:github.com/fcchbjm/AdGuardHome
  • DNS 运行时:github.com/fcchbjm/dnsproxy@v0.81.10(须与上者配套使用)

自 v0.0.6 延续、本版未改

  • PPv2:DNS-over-TCP / DoT 入站 PPv2 及 trusted_proxies 严格语义(见 README_zh.md
  • 更新索引:Release 二进制 → 本仓库 releases/latest/download/version.json
  • 容器ghcr.io/fcchbjm/adguardhome;升级以 docker pull 为准
  • 传输 / 并发 / 缓存:与 dnsproxy v0.81.10 一致(DoH3 串行化、DoQ streamOpenMu、PPv2 等见 dnsproxy 文档)

相对 v0.0.6 的本版增量

  • 上游同步至约 v0.107.76
  • dnsproxy v0.81.9 → v0.81.10
  • Go 1.26.2 → 1.26.3;Codecov v5

运维说明

主题 操作者需知
DoQ 长连接 空闲超时 30s;防火墙 / LB 超时建议对齐
DNS 缓存 排查命中时注意 DO 位是否一致
DoH3 吞吐 单 DoH3 upstream 实例 HTTP/3 路径串行;高并发用多实例或其它协议(见 dnsproxy v0.81.10
PPv2 与 v0.0.6 相同;仅 trusted_proxies 内来源可改写客户端地址
更新源 使用本仓库 Release / GHCR,勿与 AdguardTeam 发行物混用更新流

升级说明

  • 自 v0.0.6:多数部署可直接替换二进制或 docker pull;PPv2 与 YAML 配置无需变更
  • 配置回退:若已使用 d 单位,回退到不支持该单位的旧版前须改回小时
  • 二次开发go.mod 须同时声明 fcchbjm/AdGuardHomefcchbjm/dnsproxy@v0.81.10;发布分支勿提交临时 replace
  • 运行时细节:DoH3 Mutex、DoQ streamOpenMu、缓存 DO 分离等以 dnsproxy v0.81.10(9b12982 为权威语义。

维护(CI 与测试)

  • Codecov:v5slug: fcchbjm/AdGuardHomefiles: ./cover.out
  • macOS:TestConfigFilePathworkDir / otherDirEvalSymlinks 规范化(evalErr 避免 shadow 告警)

自 v0.0.6 以来(参考)

范围 说明
上游集成 路径遍历、缓存 DO、querylog reason、配置 d 单位、Go 1.26.3
运行时 dnsproxy v0.81.10
发行 模块路径统一、Codecov v5、macOS CI 测试修复
未变 PPv2、version.json / GHCR 发版语义

完整变更: v0.0.6...v0.0.7
DNS 运行时: fcchbjm/dnsproxy@v0.81.9...v0.81.10

获取

https://github.com/fcchbjm/AdGuardHome/releases/tag/v0.0.7
docker pull ghcr.io/fcchbjm/adguardhome:v0.0.7

v0.0.7 — Upstream sync, dnsproxy v0.81.10 integration, release semantics continued

Tag v0.0.7 → commit bed991cb. Distribution/integration release: upstream AdGuard Home (~v0.107.76) plus github.com/fcchbjm/dnsproxy v0.81.10.

Boundary: This repo owns packaging, release, and update semantics. Transport and DNS runtime behavior is defined by the dnsproxy fork — see dnsproxy v0.81.10 release notes.

Highlights (EN)

  • Upstream: GLiNET path-traversal fix, DNS cache when DNSSEC disabled, query-log reason, YAML d durations, Go 1.26.3.
  • Runtime: fcchbjm/dnsproxy@v0.81.10 (from v0.81.9).
  • Distribution (unchanged intent since v0.0.6): fcchbjm/AdGuardHome module, v* → this repo’s Releases/GHCR, version.json update index, Docker without embedded index.
  • Quality: Codecov v5; macOS TestConfigFilePath fix (bed991cb).

Behavior changes (EN)

Topic Summary
DNS cache / DO Separate cache entries with/without DO (#8384)
DoQ idle 5m → 30s (via dnsproxy)
Query log API reason added; response_status deprecated
Config d duration unit; convert to hours before downgrade
Security GLiNET auth path traversal (AG-54304)

Fork distribution semantics (EN)

  • Module: github.com/fcchbjm/AdGuardHome
  • Runtime pin: github.com/fcchbjm/dnsproxy@v0.81.10
  • Unchanged since v0.0.6: PPv2, update index, GHCR ghcr.io/fcchbjm/adguardhome
  • Transport/concurrency/cache: per dnsproxy v0.81.10 (9b12982 authoritative for DoH3 semantics)

Operational notes (EN)

  • DoQ idle 30s — align middlebox timeouts.
  • Cache debugging: account for DO bit.
  • DoH3: same-instance serialization; scale with multiple upstreams or other protocols (dnsproxy notes).
  • PPv2: same as v0.0.6; trusted_proxies only.
  • Use this fork’s release/update artifacts, not AdguardTeam’s.

Upgrade notes (EN)

  • From v0.0.6: drop-in for most deployments; no PPv2/config migration.
  • Downgrade: convert d back to hours if needed.
  • Custom builds: pin both fcchbjm modules; no committed replace on release branches.
  • Runtime authority: dnsproxy v0.81.10 / 9b12982.

Maintenance (EN)

  • Codecov v5, slug: fcchbjm/AdGuardHome, ./cover.out
  • macOS test: EvalSymlinks canonicalization with evalErr (no shadow)

Full changelog: v0.0.6...v0.0.7
Runtime: fcchbjm/dnsproxy@v0.81.9...v0.81.10

https://github.com/fcchbjm/AdGuardHome/releases/tag/v0.0.7
docker pull ghcr.io/fcchbjm/adguardhome:v0.0.7

Full Changelog: v0.0.6...v0.0.7