Skip to content

Releases: zfl9/chinadns-ng

2024.09.08

08 Sep 10:09
2024.09.08
feae92a
Compare
Choose a tag to compare
  • 修复与 DoT 上游服务器的兼容性问题。#189
  • 重构上游会话管理模块,引入服务配额。#189
  • 完整的上游服务器地址格式见 README 中的说明
  • 调整部分代码逻辑,避免某些极端情况下的潜在 BUG。

  • chinadns-ng+wolfssl 开头的版本支持 DoT 上游。
  • x86_64 (v3/v4)、aarch64 的 wolfssl 已启用硬件加速指令。
  • wolfssl_noasm 是没有硬件加速指令的版本,因为某些硬件(如树莓派)阉割了相关指令。
  • x86_64 后面的 v2/v3/v4 是指微架构级别,见 https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

2024.07.21

21 Jul 04:09
2024.07.21
d3ab26a
Compare
Choose a tag to compare
  • 从 db 恢复的 DNS 缓存被首次查询时,将触发 add-ip 操作(配置了 ipset/nftset 的情况下)。

  • chinadns-ng+wolfssl 开头的版本支持 DoT 上游。
  • x86_64 (v3/v4)、aarch64 的 wolfssl 已启用硬件加速指令。
  • wolfssl_noasm 是没有硬件加速指令的版本,因为某些硬件(如树莓派)阉割了相关指令。
  • x86_64 后面的 v2/v3/v4 是指微架构级别,见 https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

2024.07.20

20 Jul 09:13
2024.07.20
7907e1f
Compare
Choose a tag to compare

#183 新增缓存持久化功能,防止进程重启导致缓存丢失。

  • --cache-db <path>:配置 DNS 缓存的持久化 db 文件(二进制)。
  • --verdict-cache-db <path>:配置 verdict 缓存的持久化 db 文件(文本)。
  • 进程启动时从 db 文件加载缓存,进程退出时将缓存回写至 db 文件(覆盖)。
  • “进程退出”是指进程收到SIGTERMSIGINT信号,即kill <PID>、CTRL+C。
  • 通过发送SIGUSR1信号也可以触发 dump 操作,可用于 BUG 调试、定时转储。
  • 如需清空缓存,请按步骤执行:关闭进程、删除/清空 db 文件、重新启动进程。

  • chinadns-ng+wolfssl 开头的版本支持 DoT 上游。
  • x86_64 (v3/v4)、aarch64 的 wolfssl 已启用硬件加速指令。
  • wolfssl_noasm 是没有硬件加速指令的版本,因为某些硬件(如树莓派)阉割了相关指令。
  • x86_64 后面的 v2/v3/v4 是指微架构级别,见 https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

2024.07.16

16 Jul 09:24
2024.07.16
27fdeb6
Compare
Choose a tag to compare
  • #176 支持多个监听端口。
  • #177 支持 nftset 的所有 family。
  • #180 增强兼容性,即使是有问题的查询。

  • chinadns-ng+wolfssl 开头的版本支持 DoT 上游。
  • x86_64 (v3/v4)、aarch64 的 wolfssl 已启用硬件加速指令。
  • wolfssl_noasm 是没有硬件加速指令的版本,因为某些硬件(如树莓派)阉割了相关指令。
  • x86_64 后面的 v2/v3/v4 是指微架构级别,见 https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

2024.05.12

12 May 09:18
2024.05.12
527318f
Compare
Choose a tag to compare
  • DoT 上游地址,允许省略域名信息,也即 tls://IP,如 tls://223.5.5.5
  • 优化 wolfssl 构建参数,改用 wolfssl native API,减少内存占用和二进制大小。

  • chinadns-ng+wolfssl 开头的版本支持 DoT 上游。
  • x86_64 (v3/v4)、aarch64 的 wolfssl 已启用硬件加速指令。
  • wolfssl_noasm 是没有硬件加速指令的版本,因为某些硬件(如树莓派)阉割了相关指令。
  • x86_64 后面的 v2/v3/v4 是指微架构级别,见 https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

2024.04.30

30 Apr 12:22
2024.04.30
28fb70f
Compare
Choose a tag to compare
  • 新构建选项 -Dwolfssl-noasm,用于关闭 x86_64、aarch64 下的硬件加速指令,防止 SIGILL。
  • 默认关闭 DoT 上游的 SSL 证书验证,因为某些平台下(arm32、mips)存在问题,见 #169

  • chinadns-ng+wolfssl 开头的版本支持 DoT 上游。
  • x86_64 (v3/v4)、aarch64 的 wolfssl 已启用硬件加速指令。
  • wolfssl_noasm 是没有硬件加速指令的版本,因为某些硬件(如树莓派)阉割了相关指令。
  • x86_64 后面的 v2/v3/v4 是指微架构级别,见 https://en.wikipedia.org/wiki/X86-64#Microarchitecture_levels

2024.04.27

27 Apr 14:42
2024.04.27
dd29bb0
Compare
Choose a tag to compare
  • 支持 DoT 上游,格式 tls://域名@IP,构建时带上-Dwolfssl,下载时选择带 wolfssl 的版本。
  • 优化了 TCP 上游的实现,支持长连接模式,支持 pipelining queries,尽可能降低查询延迟。#151
  • 给 add-ip 操作添加了“内置的 IP 黑名单“,避免 loopback 地址,全 0 地址 被添加到 ipset/nftset。#162
  • 支持过滤给定域名(后缀)的查询:使用名为 null 的自定义 group,然后将相关域名放入该组的域名列表。

2024.04.13

13 Apr 11:38
2024.04.13
d588d6f
Compare
Choose a tag to compare
  • 支持自定义组(配置不同的上游、ipset/nftset),在原有数据结构上扩展实现 #157
  • --no-ipv6 规则修改(与旧版规则不兼容),新规则分为两大类:tag:*ip:*
  • 新增选项 --filter-qtype,用于过滤给定 qtype 的查询,如 qype=64/65,见 #82
  • --cache-stale 选项允许设置更大的参数值,之前只允许最大值 65535(单位秒)。
  • --cache-refresh 选项的单位更改,之前单位是,现在改为了百分比(0~100)。
  • 新增选项 --cache-nodata-ttl,用于缓存 NODATA 响应(如 no-AAAA 过滤结果)。
  • 支持 udp:// 上游,当查询方使用 TCP 时,自动丢弃此类上游的 TC 响应 #153 #160

2024.03.27

27 Mar 13:14
2024.03.27
caaaf4b
Compare
Choose a tag to compare
  • 支持读取 hosts 文件。
  • 支持定义本地 A/AAAA 记录。

2024.03.25

25 Mar 08:02
2024.03.25
9de136b
Compare
Choose a tag to compare
  • DNS 缓存、stale 缓存模式、缓存预刷新、缓存忽略名单(不缓存的域名)。
  • 支持 tag:none 域名的判定结果缓存,避免重复请求和判定,减少DNS泄露。
  • 允许指定监听的协议(TCP、UDP),如 --bind-port 65353@udp 仅监听 UDP。