Clash配置文件中default-nameserver、proxy-server-nameserver、nameserver、 fallback、fallback-filter参数区别及作用

在使用Clash类软件的过程中,发现配置文件有各种nameserver的内容,如default-nameserver、proxy-server-nameserver、nameserver、 fallback、fallback-filter,这些参数的左右和区别是什么呢?

Clash配置文件示例

首先列举一个一键脚本搭建后的配置文件示例:

dns:
  enable: true
  prefer-h3: false
  listen: 0.0.0.0:1053
  ipv6: true
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  fake-ip-filter:
    - '*.lan'
    - '*.local'
    - 'dns.google'
    - "localhost.ptlogin2.qq.com"
  use-hosts: true
  nameserver:
    - https://1.1.1.1/dns-query
    - https://8.8.8.8/dns-query
    - 1.1.1.1
    - 8.8.8.8
  proxy-server-nameserver:
    - https://223.5.5.5/dns-query
    - https://1.12.12.12/dns-query
  nameserver-policy:
    "geosite:cn,private":
      - https://doh.pub/dns-query
      - https://dns.alidns.com/dns-query

再看一个购买的机场订阅的配置文件:

dns:
    enable: true
    ipv6: false
    default-nameserver: [223.5.5.5, 119.29.29.29]
    enhanced-mode: fake-ip
    fake-ip-range: 198.18.0.1/16
    use-hosts: true
    respect-rules: true
    proxy-server-nameserver: ['https://dns.alidns.com/dns-query', 'tls://223.5.5.5']
    nameserver: ['https://dns.alidns.com/dns-query', 'https://doh.pub/dns-query', 223.5.5.5, 119.29.29.29]
    fallback-filter: { geoip: true, geoip-code: CN, geosite: [gfw], ipcidr: [240.0.0.0/4], domain: [+.google.com, +.facebook.com, +.youtube.com] }

各参数解释

查阅相关名词解释后,将个人理解整理如下,以供有需要的人进行参考:

1.default-nameserver

  • 作用专用于解析其他 DNS 服务器地址本身(如配置了域名形式的 DoT/DoH 服务器地址,如 tls://://example.com
  • 特点:必须是纯 IP 地址,用来打破“鸡生蛋、蛋生鸡”的死循环,在没有其他 DNS 可用时最先被调用

2.proxy-server-nameserver

  • 作用:专门用于解析代理节点自身服务器地址的域名。
  • 特点:当你的代理节点配置里写的是域名(而非直连 IP)时,内核会使用这个参数配置的DNS 去解析节点 IP。所以必须确保此处的 DNS 稳定且无污染,否则会导致连不上节点。

3.nameserver

  • 作用:处理绝大多数日常流量的默认域名解析服务器。
  • 特点:通常配置国内高速、可靠的公共 DNS(如阿里、腾讯、114 等),若不配置 fallback参数项时,所有常规域名都由它解析。

4.fallback(后备/远端防污染解析)

  • 作用:当配置了 fallback 时,它会与 nameserver 并发或兜底进行查询,用来解决 DNS 污染或境外网站解析问题。
  • 特点:通常配置海外公共 DNS(如 Google、Cloudflare 等),以保证获得真实的境外 IP。

5.fallback-filter(后备结果过滤器)

  • 作用:配合 fallback 使用,用来判断 nameserver 的解析结果是否可信
  • 特点:通过 GeoIP(如判断是否为 CN 区域 IP)或 IP 网段,来决定是采用 nameserver 的结果还是抛弃并改用 fallback 的结果(例如:如果 nameserver 把谷歌解析到了国内的错误 IP,就会被 fallback-filter 拦截并换成 fallback 的正确境外 IP)。

6.nameserver-policy

  • 作用:指定域名查询的解析服务器,可使用 geosite, 优先于 nameserver/fallback 查询
  • 特点:匹配的域名使用这一参数对应的dns进行解析,优先级高于nameserver/fallback

7.direct-nameserver

  • 作用:用于 direct 出口域名解析的 DNS 服务器,如果不填则遵循 nameserver-policy、nameserver 和 fallback 的配置
  • 特点:如果配置了direct-nameserver参数,对于direct 出口域名解析来说,nameserver/fallback 这条路径就无效了。

参考文章:

© 版权声明
THE END
喜欢就支持一下吧
点赞2 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容