Comments (19)
纯域名分流模式下不执行 ipset/nftset 逻辑 :
default-tag 用来实现"纯域名分流",可提供比dnsmasq更优秀的匹配性能。
通常与-g或-m选项一起用,纯域名分流模式下不执行 ipset/nftset 逻辑,如:
-g gfwlist.txt -d chn:gfw列表的域名走可信上游,其他走国内上游。
-m chnlist.txt -d gfw:chn列表的域名走国内上游,其他走可信上游。
EDIT by zfl9:
这个不对哈,只是不执行ip test逻辑。ip add不影响,不然就没法实现gfwlist分流了
from chinadns-ng.
一旦指定了 -d,--default-tag, 那么 chnroute, ipset, nftset 功能全部 不起作用. 只有-g -m 2个列表起作用了, 一刀切模式.
EDIT by zfl9:
实际并不是这样,纯域名分流并没有什么特别之处,纯域名分流说白了就是将未匹配的域名(tag:none),手动归类为 tag:gfw 或 tag:chn。核心就这一处逻辑,其它逻辑完全没影响。
也就是说,未匹配域名,默认是 tag:none,如果指定了 -d gfw,那就是默认 tag:gfw,如果指定了 -d chn,那就是默认 tag:chn,除此之外,所有逻辑不变。
from chinadns-ng.
纯域名分流模式下不执行 ipset/nftset 逻辑 :
default-tag 用来实现"纯域名分流",可提供比dnsmasq更优秀的匹配性能。 通常与-g或-m选项一起用,纯域名分流模式下不执行 ipset/nftset 逻辑,如: -g gfwlist.txt -d chn:gfw列表的域名走可信上游,其他走国内上游。 -m chnlist.txt -d gfw:chn列表的域名走国内上游,其他走可信上游。
若启用--add-taggfw-ip,则gfwlist.txt域名(准确来说是tag为gfw的域名)的解析结果IP会被动态添加到ipset/nftset,可用来实现gfwlist透明代理分流;也可配合chnroute透明代理分流,用来收集黑名单域名的IP,用于iptables/nftables操作,比如确保黑名单域名必走代理,即使某些黑名单域名的IP是大陆IP
from chinadns-ng.
一旦指定了 -d,--default-tag, 那么 chnroute, ipset, nftset 功能全部 不起作用. 只有-g -m 2个列表起作用了, 一刀切模式.
所以我要删除这个吗
from chinadns-ng.
你这个参数也用错了, correct 一下 :
--add-taggfw-ip=inet@shadowsocks@chnroute,inet@shadowsocks@chnroute6
from chinadns-ng.
from chinadns-ng.
还是没有添加进去
from chinadns-ng.
你修正后的启动参数是?
还是没有添加进去
from chinadns-ng.
你加到了 inet@shadowsocks@chnroute
, 却 list 这个 nft list set inet shadowsocks gfwlist
from chinadns-ng.
你修正后的启动参数是?
还是没有添加进去
./chinadns-ng --bind-addr 127.0.0.1 --bind-port 65353 --china-dns 127.0.0.1#65354 --trust-dns 8.8.8.8#53,1.1.1.1#53 --gfwlist-file gfwlist.txt add-taggfw-ip inet@shadowsocks@gfwlist,inet@shadowsocks@gfwlist6 --verbose
明天再研究了
from chinadns-ng.
--add-taggfw-ip
而不是 add-taggfw-ip
from chinadns-ng.
我要指正一下,纯域名分流模式,只是不执行 ip test 逻辑,ip add逻辑不影响
from chinadns-ng.
你这个是参数错了,没有用 --add-taggfw-ip ,你前面两个 -- 没有带上。
from chinadns-ng.
准确来说。是否执行ipset逻辑,只取决于域名类型
tag:chn类型,ip add逻辑,选项是 --add-tagchn-ip
tag:gfw类型,ip add逻辑,选项是 --add-taggfw-ip
tag:none类型,ip test逻辑,选项是最原始的 --ipset-name4/name6,有默认值 chnroute chnroute6
纯域名分流模式只是没有 tag:none 域名,也就是不会执行 test 逻辑,但是 ip add 逻辑不会受影响。
from chinadns-ng.
你观察chinadns-ng启动的输出就知道了。
会打印 tag:none,tag:gfw,tag:chn 分别用了什么ipset/nftset。
from chinadns-ng.
改了一下readme,防止还有人产生误解。。。
from chinadns-ng.
./chinadns-ng --bind-addr 127.0.0.1 --bind-port 65353 --china-dns 127.0.0.1#65354 --trust-dns 8.8.8.8#53,1.1.1.1#53 --gfwlist-file gfwlist.txt --default-tag chn add-taggfw-ip inet@shadowsocks@chnroute,inet@shadowsocks@chnroute6 --verbose
你仔细看启动参数,是 --add-taggfw-ip,不是 add-taggfw-ip。
所有option都是-
开头,一个-
是短选项,两个--
是长选项。
由于我的疏忽,程序并未检测非
-
开头的未知选项。。
from chinadns-ng.
./chinadns-ng --bind-addr 127.0.0.1 --bind-port 65353 --china-dns 127.0.0.1#65354 --trust-dns 8.8.8.8#53,1.1.1.1#53 --gfwlist-file gfwlist.txt --default-tag chn add-taggfw-ip inet@shadowsocks@chnroute,inet@shadowsocks@chnroute6 --verbose
你仔细看启动参数,是 --add-taggfw-ip,不是 add-taggfw-ip。
所有option都是
-
开头,一个-
是短选项,两个--
是长选项。由于我的疏忽,程序并未检测非
-
开头的未知选项。。
尴尬!确实是参数写错了。应该养成良好的写作习惯才行。
./chinadns-ng \
--bind-addr 127.0.0.1 \
--bind-port 65353 \
--china-dns 127.0.0.1#65354 \
--trust-dns 8.8.8.8#53,1.1.1.1#53 \
--gfwlist-file gfwlist.txt \
--default-tag chn \
--add-taggfw-ip inet@shadowsocks@chnroute,inet@shadowsocks@chnroute6 \
--verbose
这样的写脚本的就不会连成一陀了直观多了,麻烦大家了。谢谢!
from chinadns-ng.
加了个检测提示。
from chinadns-ng.
Related Issues (20)
- 用 int 承接 ts 会导致 2038问题, 建议所有ts都用time_t 或者 long long HOT 1
- 如何对查询结果附加(append)三方DNS记录 HOT 3
- 对于tag:none的组能否添加ipset的支持 HOT 5
- 问一下, chinadns-ng如果接管127.0.0.1:53后会缓存dns结果吗? HOT 2
- 监听0.0.0.0的时候能否连带ipv6的 [::]也监听了呢? HOT 3
- DNS上游没有响应任何查询,并非死循环。 HOT 48
- 对分流有个优化思路 HOT 1
- 问一个关于ChinaDNS-NG 域名默认标签“智能dns”的逻辑问题 HOT 7
- ChinaDNS-NG 2.0 HOT 60
- 可信DNS解析结果没有加入ipset的集合中,麻烦看一下是配置哪里有问题哦 HOT 4
- chnroute.ipset 国内IP库不全 HOT 10
- 群晖ds216se上运行报错protocol:12 errno:22 Invalid argument HOT 4
- chnlist.txt加入 -d gfw 之后可信上游不返回v6解析 HOT 2
- @fast+lto是什么后缀?怎么安装到openwrt HOT 3
- [增强] tcp pipeline 长连接支持 HOT 6
- [Feature Request]: 希望能手动指定监听协议 HOT 2
- 建议可在上游地址前加上 udp:// 来强制使用 UDP DNS HOT 8
- 请教该下哪个版本合适? HOT 3
- 添加 ip 到 ipset/nftset 时,支持指定元素级别的 timeout 参数
- 关于新版本的使用方法 HOT 20
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chinadns-ng.