前面介绍了 Stash 快速上手教程,本文将介绍一下利用 stash 内置服务自定义 DNS 和自定义 host 方法。
如何自定义 DNS?
Stash 内置 DNS 服务,支持自定义上游 DNS 服务器。
「Stash教程:如何自定义DNS?:https://uuk.app/58」Stash 支持同时配置多个 DNS 服务器,在进行查询时,Stash 会并发请求所有服务器,并采用最快响应的结果。 Stash 支持如下 DNS 协议:
- 使用系统提供的 DNS:system
- DNS over UDP:1.1.1.1 or udp://8.8.8.8
- DNS over TCP:tcp://8.8.8.8
- DNS over TLS:tls://8.8.8.8:853 or dot://8.8.8.8:853
- DNS over HTTPS:https://1.1.1.1/dns-query or doh://1.1.1.1/dns-query
- DNS over QUIC:quic://dns.adguard.com:853 or doq://dns.adguard.com:853
注意:default-nameserver 将会被用来解析 DNS 服务的域名,仅支持填写 DNS 服务器 IP 地址。
下面是参考配置,可根据实际需要修改其中的 dns 服务器:
「Stash教程:如何自定义DNS?:https://uuk.app/58」dns:
# 以下填写的 DNS 服务器将会被用来解析 DNS 服务的域名
# 仅填写 DNS 服务器的 IP 地址
default-nameserver:
- 223.5.5.5
- 114.114.114.114
# 支持 UDP / TCP / DoT / DoH / DoQ 协议的 DNS 服务,可以指明具体的连接端口号。
# 所有 DNS 请求将会直接发送到服务器,不经过任何代理。
# Stash 会使用最先获得的解析记录回复 DNS 请求
nameserver:
# 不建议配置超过 2 个 DNS 服务器,会增加系统功耗
- https://doh.pub/dns-query
- https://dns.alidns.com/dns-query
- quic://dns.adguard.com:853
- doq://test.dns.nextdns.io:853
- system # 使用 iOS 系统 DNS
# 跳过证书验证,解决部分兼容性问题 https://help.nextdns.io/t/g9hdkjz
skip-cert-verify: true
Stash 会对 DNS 查询使用 LRU 算法进行本地缓存。当本地缓存过期时,Stash 会继续沿用缓存结果,并在后台静默更新记录,有效降低 DNS 缓存过期引发的请求延迟。
另外,Stash 还支持基于域名自定义 DNS 服务,使用 nameserver-policy 可以对指定域名使用特定的 DNS 服务器。
dns:
# 对部分域名使用单独的 DNS 服务器
nameserver-policy:
'www.baidu.com': 8.8.8.8
'+.internal.crop.com': system
实例中,指定 www.baidu.com 域名使用 8.8.8.8 DNS 服务器,而 internal.crop.com 使用系统 dns 。
「Stash教程:如何自定义DNS?:https://uuk.app/58」Stash 还可以自定义 Hosts,参考配置:
# 支持通配符域名 (例如: *.clash.dev, *.foo.*.example.com )
# 不使用通配符的域名优先级高于使用通配符的域名 (例如: foo.example.com > *.example.com > .example.com )
# 注意: +.foo.com 的效果等同于 .foo.com 和 foo.com
hosts:
'*.clashx.dev': 127.0.0.1
'.dev': 127.0.0.1
'alpha.clashx.dev': '::1'
有需要可参考上面的配置修改。
Stash 相关资料新站:https://stash.bdkp.net/
「Stash教程:如何自定义DNS?:https://uuk.app/58」本文首发于:Stash教程:如何自定义DNS?-优优加速器
任何服务、机场均有跑路风险,请注意防范!没有啥绝对好坏,一线机场也会炸,小机场也可能岁月静好! 备用节点参考:大哥云官网、万城专线官网、飞机云官网、搬瓦工JMS、极客云官网……
本文已于 2024-08-02 修改更新,您的宝贵建议请在文章下方评论区留言反馈,谢谢。
Comments:0