HostuxDNS

dnscrypt-proxy 与 HostuxDNS

概览

dnscrypt-proxy 是一个本地 DNS 转发器,可以在查询离开你的设备或网络之前先进行 加密。它适合 Linux、macOS、Raspberry Pi,或与 Pi-hole 这类工具配合使用, 当你希望获得加密上游 DNS 而不依赖浏览器设置时尤其有用。

HostuxDNS 通过 DNS stamp 提供与 dnscrypt-proxy 兼容的加密解析器。下面的示例 使用 DoQ 和静态服务器定义,因此不依赖公共解析器列表。

声明 HostuxDNS 静态服务器

打开 dnscrypt-proxy.toml,并在 [static] 部分加入以下内容:

[static.'hostuxdns-front1-v4']
stamp = 'sdns://BAcAAAAAAAAAEjQ2LjIyNi4xMDguMTczOjg1MwAOZG5zLmhvc3R1eC5uZXQ'

[static.'hostuxdns-front1-v6']
stamp = 'sdns://BAcAAAAAAAAAKVsyMDAxOjRiOTg6ZGMyOjQxOjIxNjozZWZmOmZlMTY6MTA4MF06ODUzAA5kbnMuaG9zdHV4Lm5ldA'

[static.'hostuxdns-front2-v4']
stamp = 'sdns://BAcAAAAAAAAAETQ2LjIyNi4xMDkuODI6ODUzAA5kbnMuaG9zdHV4Lm5ldA'

[static.'hostuxdns-front2-v6']
stamp = 'sdns://BAcAAAAAAAAAKVsyMDAxOjRiOTg6ZGMyOjQxOjIxNjozZWZmOmZlY2U6M2U1NV06ODUzAA5kbnMuaG9zdHV4Lm5ldA'

这四个条目覆盖 HostuxDNS 的两个前端节点,并同时支持 IPv4 和 IPv6。

在主配置中启用这些服务器

在同一个文件的主配置部分,设置:

server_names = ['hostuxdns-front1-v4', 'hostuxdns-front1-v6', 'hostuxdns-front2-v4', 'hostuxdns-front2-v6']

如果你将 dnscrypt-proxy 作为其他服务的本地上游,请保留默认本地监听地址, 或者显式设置,例如:

listen_addresses = ['127.0.0.1:5053']

像 Pi-hole 这样的工具随后就可以将查询转发到 127.0.0.1:5053

重启并验证

保存文件后重启服务:

systemctl restart dnscrypt-proxy

然后测试本地解析:

dig @127.0.0.1 -p 5053 example.com

也可以使用 Knot DNS 直接测试上游:

kdig @dns.hostux.net example.com +quic

如果本地查询成功,你的应用就可以将 dnscrypt-proxy 作为本地解析器,而由 HostuxDNS 负责加密上游这一跳。

说明

解析器列表
如果你希望固定使用特定上游,静态 stamp 是最稳妥的方式,不依赖公共源列表。
广告拦截
HostuxDNS 的 /ads 过滤端点属于 DoH 路径,不能通过这里展示的 DoQ stamp 使用。
官方文档
dnscrypt-proxy 文档