2023.04.01
Pre-release
Pre-release
预发布版本,功能粗略跑了下,问题不大。我这边 code review 后再正式发布。有问题随时交流。
-
-g/--gfwlist-file
、-m/--chnlist-file
支持多个文件路径,文件路径之间使用逗号隔开,如-g a.txt,b.txt
。 -
新增
-a/--add-tagchn-ip
选项:将chn域名的解析结果加入ipset/nftset,类似dnsmasq的ipset/nftset指令。见 #115 。 -
添加nftset支持,参数还是原来的
-4/--ipset-name4 <name>, -6/--ipset-name6 <name>
,若name包含@字符,则使用nft后端,否则使用ipset后端。nft的name格式:family名称@table名称@set名称
。注意:不支持混用ipset/nftset,即:v4和v6要么都用ipset,要么都用nftset。 -
对nft的add操作进行了性能优化,效率要比dnsmasq的nftset实现高得多;对于dnsmasq,如果要添加的ip与集合中已存在的cidr存在重叠(在set已存储大部分大陆ip(cidr)时,很容易触发该条件),则add操作会导致数十毫秒级别的延迟,并且nftset会报告
interval overlaps with an existing one
错误。 -
-N/--no-ipv6
选项添加规则T
,当一个AAAA查询只转发给了可信上游时,此规则开始发挥作用:若启用了规则T,则过滤非大陆ip的解析结果;否则(默认行为)不进行ip判定/过滤。见 issue #116 。 -
dnl相关优化,弃用brk/sbrk,改用mmap/mremap,并进行4k页面对齐。
-
移除libm.so依赖,现在只依赖libc.so了。