smartdns icon indicating copy to clipboard operation
smartdns copied to clipboard

咨询以下域名集合的使用问题

Open siren202101 opened this issue 8 months ago • 12 comments

domain-set可以像下面这样配置多个分组吗? domain-set -name fq -file /etc/smartdns/domain-set/Gfwlist.conf domain-set -name cn -file /etc/smartdns/domain-set/cn.conf domain-rules /domain-set:fq/ -dualstack-ip-selection yes -speed-check-mode tcp:443,tcp:80,ping -response-mode first-ping domain-rules /domain-set:cn/ -dualstack-ip-selection yes -speed-check-mode tcp:443,tcp:80,ping -response-mode first-ping nameserver /domain-set:fq/fq_dns nameserver /domain-set:cn/cn_dns

这样配置的话为什么我用openclash,在cn.conf里放入browserleaks.com的所有域名,检测出来还是有fq_dns分组的DNS进行解析 Gfwlist.conf放入browserleaks.com的所有域名,只有fq_dns分组的DNS进行解析

是不是open clash把browserleaks.com的所有域名发到fq组即使browserleaks.com的所有域名不在这个组,在cn组里也采用fq_dns进行解析?

域名集合是指定两个组后,在cn组里的域名,只要客户端把包含在cn组里的域名发到fq组是不是也会在fq组解析?

能不能加个命令,把域名列表固定在某个组里,例如在cn组有的域名,即使发到fq组也会回到cn组进行解析

siren202101 avatar Apr 03 '25 09:04 siren202101

配置可行,但你为什么不把nameserver也写到domain-rules里去?

如果一个域名匹配到一个组,它只会用这个组的上游解析,不会到处乱跳。

除非从默认组排除,一个上游在隶属于配置组(如fq_dns)的同时还会隶属于默认组。一个域名出现多个组同时解析的情况,可能是这个域名没有匹配到组规则,走默认组了

PikuZheng avatar Apr 03 '25 10:04 PikuZheng

server支持归属多个group,可以多个-group参数

pymumu avatar Apr 03 '25 10:04 pymumu

server支持归属多个group,可以多个-group参数

server 223.5.5.5 -bootstrap-dns -group cn -group ov

请问这种写法可行吗?

wuiiled avatar Apr 03 '25 11:04 wuiiled

server支持归属多个group,可以多个-group参数

server 223.5.5.5 -bootstrap-dns -group cn -group ov

请问这种写法可行吗?

可以的

PikuZheng avatar Apr 03 '25 12:04 PikuZheng

nameserver也写到domain-rules nameserver也写到domain-rules 怎么写?直接添加:-group fq_dns
domain-rules /domain-set:fq/ -dualstack-ip-selection yes -speed-check-mode tcp:443,tcp:80,ping -response-mode first-ping -group fq_dns

是这样写吗?

是不是就不需要: nameserver /domain-set:fq/fq_dns nameserver /domain-set:cn/cn_dns

siren202101 avatar Apr 03 '25 13:04 siren202101

nameserver还是nameserver

domain-rules /domain-set:fq/ -dualstack-ip-selection yes -speed-check-mode tcp:443,tcp:80,ping -response-mode first-ping -nameserver fq_dns

PikuZheng avatar Apr 03 '25 13:04 PikuZheng

nameserver还是nameserver

domain-rules /domain-set:fq/ -dualstack-ip-selection yes -speed-check-mode tcp:443,tcp:80,ping -response-mode first-ping -nameserver fq_dns

通过命令:-nameserver fq_dns 在domain-rules指定分组是fq_dns

还需配置:nameserver /domain-set:fq/fq_dns 来指定fq_dns吗?

siren202101 avatar Apr 03 '25 13:04 siren202101

不需要了。所有的域名规则都可以用domain-set写在一行里

PikuZheng avatar Apr 03 '25 14:04 PikuZheng

不需要了。所有的域名规则都可以用domain-set写在一行里

domain-rules /domain-set:fq/ -dualstack-ip-selection yes -speed-check-mode tcp:443,tcp:80,ping -response-mode first-ping -nameserver default

如果要设置默认组使用域名合集是不是这样: -nameserver default

siren202101 avatar Apr 04 '25 04:04 siren202101

默认的不用写

PikuZheng avatar Apr 04 '25 06:04 PikuZheng

还有一个问题,使用OpenClash,SmartDNS做DNS解析还需要配置SmartDNS的ipset和nftset吗? 我一直有个疑虑,既然都域名分流了,ipset和nftset在DNS解析中扮演的角色是什么? 如果不域名分流,假设一个域名同时拥有CN的IP和非CN的IP,设置了ipset和nftset,同时解析了多地IP后这个没有分流的域名不还是通过解析规则中的速度进行使用吗?此时设置ipset和nftset的好处是什么?

siren202101 avatar Apr 05 '25 05:04 siren202101

(题外话:我自己的openclash和smartdns在两个不同的虚拟机内。分流由路由器(独立的物理路由器)负责。我的观点是各干各的事,一个app不要试图去修改另一个app的设置。

据我观察如果客户端不使用openclash作为域名解析服务器的话,openclash就拿不到域名,无法根据域名分流。在这个前提下,smartdns必须是openclash的上游服务器。

另一种方法是根据ip分流。smartdns将域名对应的ip写入ipset,openclash通过读ipset里的ip地址实现分流。

PikuZheng avatar Apr 05 '25 07:04 PikuZheng