V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
zwyyy456
V2EX  ›  问与答

clash 的 rule-set 匹配不生效

  •  
  •   zwyyy456 · 344 天前 · 1682 次点击
    这是一个创建于 344 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我使用的是基于 clash.meta 内核的 tpclash ,配置文件是基于 rule-set 编写的,rules 部分的内容如下:

    rules:
      # 开始匹配规则
    
      ## 直连
      - RULE-SET,cndirect,DIRECT
      - RULE-SET,direct,DIRECT
      - RULE-SET,applecn,DIRECT
      - RULE-SET,applications,DIRECT
    
      - RULE-SET,mtracker,mtracker
      - RULE-SET,mpt,mpt
    
      ## geo 直连
      - GEOSITE,cn,DIRECT
      - GEOIP, cn, DIRECT
    
      - RULE-SET,mdirect,mdirect
      - RULE-SET,mproxy,mproxy
    
      # 代理匹配
      - RULE-SET,gscholar,gscholar
      - RULE-SET,openai,openai
      - RULE-SET,microsoft,microsoft
      - RULE-SET,youtube,youtube
      - RULE-SET,google,google
      - RULE-SET,github,github
      - RULE-SET,apple,apple
      - RULE-SET,bili_us,bilius
      - RULE-SET,spotify,spotify
      - RULE-SET,telegram,telegram
      - RULE-SET,emby,emby
      - RULE-SET,gfw,PROXY
      - GEOSITE,geolocation-!cn,PROXY
      - RULE-SET,reject,REJECT
    
      - SRC-IP-CIDR,192.168.6.155/32,DIRECT
      - MATCH,PROXY
    

    但是今天我发现,当我的 mac 用浏览器访问 google 时,并没有匹配到 google 对应的 rule-set ,而是匹配到了最后的 MATCH ,访问 youtube 也没有匹配到 youtube 对应的 rule-set ,不知道有没有 V 友碰到过类似的问题?

    Firefox 和 Edge 浏览器都测试过了,均关闭了安全 DNS 功能。

    webui 中查看连接时,感觉就像域名的访问请求被提前出来了 ip ,clash 只接管了 ip 的请求。

    14 条回复    2023-12-19 09:49:06 +08:00
    devswork
        1
    devswork  
       344 天前   ❤️ 2
    把 geoip 这一行放倒数第二行
    zwyyy456
        2
    zwyyy456  
    OP
       344 天前
    @devswork 似乎可以了,能请您解释一下原因吗?
    zwyyy456
        3
    zwyyy456  
    OP
       344 天前
    @zwyyy456 又不行了。。。
    565656
        4
    565656  
       344 天前
    用- DOMAIN-KEYWORD,google,google 试试看,我用的是 parser 里面没问题
    EEXII
        5
    EEXII  
       344 天前
    用的 rule-providers?
    malagebidi
        6
    malagebidi  
       344 天前
    我的 clash.meta 配置没使用 RULE-SET ,直接 geosite 和 geoip 就行了。
    devswork
        7
    devswork  
       344 天前
    你的 DNS 配置是什么? clash 上做了劫持了吗,如果你的 DNS 指向不是到 clash 上,而是到了别的 DNS ,那么浏览器会从你设定的 DNS 上直接解析出 IP ,然后对 IP 发起链接,这些链接又会经过 clash (因为 IP 非 CN 地区),对于 clash 角度而言,你的这些 RULE 没什么用,因为到 clash 这里已经都是 IP 的链接了,而不是基于域名,因为 DNS 不是经过 clash 。

    你可以浏览器上安装 SwitchyOmega ,然后在 SO 里把所有的类型的都指向到你的 clash 上,看看是否正常( SO 会接管所有请求包括 DNS 查询)。
    zwyyy456
        8
    zwyyy456  
    OP
       344 天前
    @devswork clash 上是有做 dns 劫持的,就是有时候日志中能看到是匹配了域名的请求,有时候又变成了全都是 ip 。
    zwyyy456
        9
    zwyyy456  
    OP
       344 天前
    @EEXII 是的 rule-providers ,rule-providers 应该是正确的。
    zwyyy456
        10
    zwyyy456  
    OP
       344 天前
    @devswork

    dns 配置如下
    ```yaml
    dns:
    enable: true # 关闭将使用系统 DNS
    prefer-h3: true # 开启 DoH 支持 HTTP/3 ,将并发尝试
    listen: 0.0.0.0:1053 # 开启 DNS 服务器监听
    ipv6: false # 如果需要 ipv6 设置为 true
    default-nameserver:
    # - 192.168.6.1 fakeip 模式不使用内网地址作为 dns
    # defautl dns 需要是纯 IP
    - https://223.5.5.5/dns-query
    - https://1.12.12.12/dns-query
    # - https://doh.pub/dns-query
    # - 223.5.5.5
    # - 1.12.12.12
    enhanced-mode: fake-ip
    fake-ip-range: 198.18.0.1/16
    fake-ip-filter: #这里可以填写不使用 fakeip 的域名
    - "*.jd.com"
    ```
    zwyyy456
        11
    zwyyy456  
    OP
       344 天前
    还发现了一个现象,我在家里的 windows 的笔记本上 ping tracker.x.com 时,返回的是 fakeip 生成的一个虚假 ip ,而在实验室上 ping tracker.x.com 时,返回的是 tracker.x.com 对应的真实 ip ;
    实验室和家里都有一台运行 tpclash 的 n1 当旁路由,win 和 mac 的网关分别指向了这两台 n1 。
    zwyyy456
        12
    zwyyy456  
    OP
       344 天前
    家里的主路由是刷了 padavan 的小米,实验室的主路由是刷了 openwrt 的 360t7 ,windows 和 mac 都是网关指向 n1 的 ip ,dns 都是填的 223.5.5.5 和 1.1.1.1 ;根据 tpclash 原先作者的说法,这里这个 dns 只要不填 n1 本身的 ip 就行
    ,所有的 dns 解析都会被运行在 n1 上的 tpclash 劫持。
    israinbow
        13
    israinbow  
       344 天前 via Android
    geoip 服务挂了, 上次集体跑路的时候一起跑路了, 这条规则删了吧.
    zwyyy456
        14
    zwyyy456  
    OP
       344 天前
    直接将主路由重置了,现在看起来正常了。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5448 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 06:55 · PVG 14:55 · LAX 22:55 · JFK 01:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.