Clash DNS & IPv6 配置

 

DNS 配置说明

我华硕路由器使用的是 Clash.Meta 内核的 Merlin Clash,下面介绍了其中的 DNS 配置,部分参考了 请教下 clash 的 DNS 是这么配置么? 这篇帖子。

核心思想是,通过 nameserver-policy 对域名进行匹配,

  • 使用 "geosite: cn,private" 条件,匹配所有国内域名
  • 使用 "geosite: geolocation-!cn": 条件,匹配所有国外域名

将匹配到的域名交由 nameserver-policy 指定的 DNS 服务器进行解析,其它未匹配到的域名交由 nameserver 指定的 DNS 服务器解析。

在下面的示例中,就使用了 "geosite: cn,private" 来匹配所有国内域名,然后交由国内 DNS 服务器解析,其它未匹配到的域名交由 nameserver 指定的国外 DNS 服务器解析。

另一点需要注意的是,这里讨论的 DNS 解析路径,全部指的是 代理规则未命中 的域名。如果域名被代理规则命中,则 Clash.Meta 会将该域名直接交由代理节点进行解析。

官网的DNS 解析流程图直观和简单地说明 Clash.Meta 的 DNS 工作流程,其中忽略了 Clash 内部的 DNS 映射处理。

IPv6 配置说明

Clash.Meta 的 IPv6 设置有两处,一个在全局配置里,一个在 DNS 配置里,它们的区别是:

  • 全局 IPv6 :是否处理 ipv6 流量
  • DNS IPv6 :是否丢弃 AAAA 记录

这两处配置任意一个改为 false,就会无法使用 ipv6 进行网络访问,两处都配置为 ipv6: true 后,可以通过 ipw.cn 测试。

配置示例

# 全局配置
mixed-port: 7890                                      # 混合端口,它同时支持 HTTP(S) 和 SOCKS5 协议
ipv6: true                                            # 是否允许内核接受 IPv6 流量
mode: rule                                            # 运行模式: rule, global, direct
allow-lan: true                                       # 允许其他设备经过 Clash 的代理端口访问互联网
lan-allowed-ips:                                      # allow-lan 为 true 时,允许连接的 IP 地址段
  - 0.0.0.0/0
  - ::/0
log-level: silent                                     # Clash 内核输出日志的等级

dns:
  enable: true                                        # 开启 DNS 解析,必须开启,否则MC将无法解析
  ipv6: true                                          # 默认关闭,插件开启 IPv6 支持后,自动打开
  listen: :23453                                      # 监听端口,不懂勿动 (端口前冒号必须保留)
  enhanced-mode: fake-ip                              # DNS 模式
  fake-ip-range: 198.18.0.1/16                        # Fake-IP 解析IP池
  fake-ip-filter:                                     # Fake-IP 过滤,列表中的域名返回真实IP
    - '*.lan'
    - '*.linksys.com'
    - '*.linksyssmartwifi.com'
    # Apple
    - 'swscan.apple.com'
    - 'mesu.apple.com'
    - 'swquery.apple.com'
    - 'swdownload.apple.com'
    - 'swcdn.apple.com'
    - 'swdist.apple.com'
    # Microsoft Service
    - '*.msftconnecttest.com'
    - '*.msftncsi.com'
    - 'xbox.*.microsoft.com'
    - 'xbox.*.*.microsoft.com'
    - '+.xboxlive.com'
    #  NTP Service
    - 'time.*.com'
    - 'time.*.gov'
    - 'time.*.edu.cn'
    - 'time.*.apple.com'
    - 'time1.*.com'
    - 'time2.*.com'
    - 'time3.*.com'
    - 'time4.*.com'
    - 'time5.*.com'
    - 'time6.*.com'
    - 'time7.*.com'
    - 'ntp.*.com'
    - 'ntp.*.com'
    - 'ntp1.*.com'
    - 'ntp2.*.com'
    - 'ntp3.*.com'
    - 'ntp4.*.com'
    - 'ntp5.*.com'
    - 'ntp6.*.com'
    - 'ntp7.*.com'
    - '*.time.edu.cn'
    - '*.ntp.org.cn'
    - '+.pool.ntp.org'
    - 'time1.cloud.tencent.com'
    # Google
    - 'lens.l.google.com'
    # Music Service
    - '+.music.163.com'
    - '+.126.net'
    - 'musicapi.taihe.com'
    - 'music.taihe.com'
    - 'songsearch.kugou.com'
    - 'trackercdn.kugou.com'
    - '*.kuwo.cn'
    - 'api-jooxtt.sanook.com'
    - 'api.joox.com'
    - 'joox.com'
    - '+.y.qq.com'
    - '+.music.tc.qq.com'
    - 'aqqmusic.tc.qq.com'
    - '+.stream.qqmusic.qq.com'
    - '+.xiami.com'
    - '+.music.migu.cn'
    # Game Service
    - '+.stun.*.*'
    - '+.stun.*.*.*'
    - '+.stun.*.*.*.*'
    - '+.stun.*.*.*.*.*'
    - '+.srv.nintendo.net'
    - '*.n.n.srv.nintendo.net'
    - '+.stun.playstation.net'
    - '+.battlenet.com.cn'
    - '+.wotgame.cn'
    - '+.wggames.cn'
    - '+.wowsgame.cn'
    - '+.wargaming.net'
    - '*.square-enix.com'
    - '*.finalfantasyxiv.com'
    - '*.ffxiv.com'
    - '*.ff14.sdo.com'
    - 'ff.dorado.sdo.com'
    # Other
    - 'localhost.ptlogin2.qq.com'
    - 'localhost.sec.qq.com'
    - 'proxy.golang.org'
    - '+.qq.com'
    - '+.baidu.com'
    - '+.163.com'
    - '+.126.net'
    - '+.taobao.com'
    - '+.jd.com'
    - '+.tmall.com'
    - '*.mcdn.bilivideo.cn'
    - '+.nvidia.com'
    - '+.nvidia.cn'
    - '+.nvgs.nvidia.com'
    - '+.nvgs.nvidia.cn'
    - 'shark007.net'
  nameserver:                                         # 默认 DNS 服务器(国外)
    - https://doh.dns.sb/dns-query                    # dns.sb DoH
    - https://doh.opendns.com/dns-query               # OpenDNS DoH
    - tls://dns.google                                # Google DoT
  nameserver-policy:
    "geosite: cn,private":                            # 国内网址
      - tls://dns.alidns.com                          # 阿里 DoT
      - tls://dot.pub                                 # 腾讯 DoT
      - 221.179.155.161                               # 运营商 DNS
      - 221.179.155.177                               # 运营商 DNS