概览
OpenWrt 可以通过 https-dns-proxy 将本地 DNS 流量转发到 HostuxDNS,从而让整台路由器
使用加密 DNS。局域网设备本身无需修改,路由器会把查询升级为 DNS over HTTPS。
本指南采用 OpenWrt 的常见组合:局域网客户端继续使用 dnsmasq,
加密上游则由 https-dns-proxy 负责。
安装所需软件包
先更新软件包列表,然后安装代理和 LuCI 模块:
opkg update
opkg install https-dns-proxy luci-app-https-dns-proxy
该软件包会与 dnsmasq 集成,后者仍然是面向局域网的 DNS 解析器。
创建 HostuxDNS DoH 实例
在 LuCI 中打开 服务 > HTTPS DNS Proxy,然后添加一个新实例。
- 名称:
hostuxdns - 解析器 URL:
https://dns.hostux.net/dns-query - Bootstrap DNS:
46.226.108.173,46.226.109.82
如果你希望在路由器层面屏蔽广告和追踪器,请把标准端点替换为
https://dns.hostux.net/ads。
将代理接入 dnsmasq
让局域网客户端继续把路由器作为 DNS 服务器。随后由 dnsmasq 将查询转发到
https-dns-proxy 创建的本地监听器。
如果 OpenWrt 中配置了多个上游解析器,请关闭不需要的项,以确保 HostuxDNS 保持为当前 生效的加密上游。
逻辑很简单:客户端连接路由器,路由器再通过 DoH 连接 HostuxDNS。
重启并测试
在 LuCI 中应用更改,或手动重启服务:
/etc/init.d/https-dns-proxy restart
/etc/init.d/dnsmasq restart
然后在路由器上测试域名解析:
nslookup openwrt.org 127.0.0.1
如果解析正常,那么所有把路由器作为 DNS 的局域网设备也会使用 HostuxDNS 的加密上游。
说明
- 本指南只覆盖 DoH
- 本指南基于
https-dns-proxy,因此只讲 DoH,不涉及 DoT 或 DoQ。 - 为什么需要 bootstrap DNS
- 在加密代理完全启动之前,路由器可能需要明文 IP 地址才能访问
dns.hostux.net。 - 官方参考
- OpenWrt:dnsmasq 与 https-dns-proxy 的 DoH 配置