
大佬们,问个问题,如果 openclash 的规则写 省略了 rule-providers 部分,有个 cncidr 的 ip 规则集和直连的 domain 规则集。 rule 规则
1 mschultz 2024-03-17 23:42:25 +08:00 在任何 CIDR 规则之前先把(主流的需要代理的)国外网站用域名规则匹配,这样(至少提前被域名匹配的这部分网站)不会触发本地 DNS 查询导致 DNS Leak ,可以部分解决问题 例如 - RULE-SET,gfwlist,PROXY,no-resolve - RULE-SET,cncidr,DIRCET - MATCH,PROXY |
2 journalist 2024-03-18 04:12:44 +08:00 是的。只要遇到 IP 规则且没有 no-resolve ,就会向 DNS 上游发出请求。总体上应当先写域名规则,再写 IP 规则。 |
3 Jirajine 2024-03-18 07:21:47 +08:00 又一个 clash 的受害者。 这是 clash 系默认、惯常的行为,小白用户不懂也没有被明确告知。 |
4 SenLief 2024-03-18 07:37:48 +08:00 你可以选择 dns 上游直接用国外的 dns ,就是慢了点。 |
5 465456 2024-03-18 07:59:56 +08:00 速度跟隐私,二者选一个,俺选择速度 |
6 CharonVIII 2024-03-18 09:28:58 +08:00 你用的是 redir-host 还是 fake-ip ? 据我所知,如果用的 redir-host ,在匹配到域名规则走代理之前也会进行一次 DNS 解析,这是必须的。 而 fake-ip 规则虽然也会先进行一次 DNS 查询,只不过 clash 内核会返回一个保留地址,然后如果匹配到域名规则要走代理的话就不会进行真正的本地 DNS 查询。 当然,fake-ip 模式也有其他的问题,比如 P2P 受限制、VPN 业务可能受限制、没办法在 Dnsmasq 下用黑白名单等等 |
7 dude4 2024-03-18 10:31:47 +08:00 这就是通常说的 DNS 泄露 |
8 dude4 2024-03-18 10:34:14 +08:00 @CharonVIII 新版本的 openclash 据说没有原生的 redirect 模式了,都是 fake-ip ,我觉得全局用对普通用户确实太困难,还是旁路由比较好,dnsmasq 在主路由用 mac 方式指定网关,有需要的设备才走旁路由,这样 P2P 不走旁路由、VPN 在主路由,两者都不受影响 |
9 NoInternet OP @mschultz no-resolve 我看一般都写在 IP 规则里啊。我试试 |
10 NoInternet OP @Jirajine 太复杂了,看来还得好好研究 |
11 NoInternet OP @CharonVIII 用的 redir-host ,规则里匹配的也要先走本地 dns 解析一次?这也太坑了。 |
12 NoInternet OP @SenLief 我还不会设置,我要再看看 |
13 NoInternet OP @465456 兼得最好啊 |
14 mschultz 2024-03-18 13:26:45 +08:00 via iPhone @NoInternet #9 找一个类似 gfwlist 的在线规则,作为 rule-provider 最好支持 behavior: “domain” 的,可以不写 no-resolve 现在 GitHub 上用的人比较多的那些规则好像大多都考虑到这个问题了。国外网站一般都是域名规则,不会随便包含无“no-resolve”标记的 IP 规则 |
15 dodakt 2024-03-18 19:02:11 +08:00 实在不放心 开个 Adguard Home 把 gfwlist 屏蔽掉不就 ok 了 |
16 NoInternet OP @dodakt 又出现高科技了,这个不是去广告的吗 |
17 dodakt 2024-03-18 19:21:06 +08:00 @NoInternet 它去广告原理不就是拦截解析嘛 |
18 MrKrabs 2024-03-20 01:27:02 +08:00 我想问问有空统计你 dns 记录干嘛不直接看你出口流量啊、、 |
19 y1y1 2024-03-20 10:27:32 +08:00 via iPhone 就是从前往后优先匹配 |
20 unifly 2024-03-21 09:24:49 +08:00 @Jirajine 真是有 clash 的地方就有你啊,ip 类规则加上 no-resolve ,不进行 DNS 解析防止泄露,这是必要操作,任何研究过 clash 规则的都知道,何来受害一说? |
21 Jirajine 2024-03-21 15:58:21 +08:00 @unifly #20 我回这个帖子只是因为 OP 发现了一个一般的 clash 目标用户不应该在乎的问题,在乎但不了解、也没有被告知的小白用户自然就是受害者。 如果你看过代码你就会知道加上这个也不能防止,并且这并不是“必要操作”,这不是预期的使用方式,大部分用户都使用的默认的、推荐的、托管的配置。 你与其研究规则,不如去研究一下规则实现的代码。 |
22 unifly 2024-03-21 16:47:30 +08:00 @Jirajine 1 、小白不会用造成问题,竟然是工具的责任?你可真会找茬; 2.还是那个问题:你到底看的是哪个 clash 核心的代码?哪个版本的?具体哪个模块的?或者请具体告知他会漏规则的简要原因。 我用的 clash-meta ,写好规则,没遇到过 dns 泄露,用个工具还要研究它的代码,我没那闲工夫,也没那技术,难道用个软件我还要研究它的代码才行?你喜欢研究代码麻烦具体给讲讲,看你说 clash 代码不行好多个帖子了,就是不具体说明,你讲的有道理自然会采纳,而不是动不动来个“受害者”吓唬人。 |
23 Jirajine 2024-03-21 17:45:53 +08:00 @unifly #22 clash 有告知小白使用默认推荐配置会曝光自己访问的网站吗? 同样,它也没有告知你写好的规则会在有些情况下不会生,也没有告知你不生效后会发生什么。是的,不看代码就用造成的问题这是你自己的责任。 我只是提醒部分潜在受害者去阅读代码自己判断,没有义务帮你判断或者让你采纳。如果你不愿意看代码,不要再回复没有根据的内容以免误导其他人。 |
24 unifly 2024-03-21 18:21:26 +08:00 via Android @Jirajine 跟你讨论太困难了,字敲了一大堆,就是不告诉代码具体出了啥问题,对我问的问题避而不谈,网上你这种太多了,一到问题实质就言左右,岔话题,爱说不说,以后只要让我看见你在装逼那危言耸听,下次我继续怼!哈哈 |
25 Holodusk 2024-03-21 22:30:19 +08:00 就算你前面写了域名规则,遇到 UDP 还是会漏。这就是我转 sing-box/xray 的原因,DNS 更灵活。 |
27 Holodusk 2024-03-22 17:54:42 +08:00 @unifly 不就 UDP 域名请求这一种漏法?还能怎么漏? sing-box 的 DNS/路由模块分离,能直接通过 rule-set 指定 DNS |
28 unifly 2024-03-22 18:20:24 +08:00 via Android |
29 NoInternet OP 几天没看那么多帖子,继续学习,谢谢楼上大佬们。 |
30 yxmyxmyyy 2024-03-23 14:51:43 +08:00 直接用 clash meta 的 dns 分流就行了 dns: enable: true prefer-h3: false ipv6: true nameserver: - '8.8.8.8# 节点选择' nameserver-policy: 'geosite:cn,stram@cn,apple@cn,google@cn': '180.76.76.76' proxy-server-nameserver: - 223.5.5.5 |
31 NoInternet OP @yxmyxmyyy 谢谢大佬,我看看怎么写 |