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
上篇数学知识点