TL;DR 一句话结论:在路由器 WAN 口或 DHCP 里填1.1.1.1、8.8.8.8这类地址,只是把运营商的明文 DNS 换成了公共明文 DNS,并不等于加密。想让全家手机、电脑、电视都用上加密 DNS,现实里只有三条路:①路由器 DHCP 下发自定义 DNS(最简单、全家生效、但不加密);②刷 OpenWrt 后用 Stubby / AdGuard Home 做 DoT 上游(真加密、有一定门槛);③旁路由跑 AdGuard Home(灵活、推荐进阶用户)。
路由器填了 DNS 地址,为什么不等于"私人 DNS"?
很多人搜"路由器怎么设置私人 DNS",照着教程在后台填了一串 IP,以为就万事大吉了。这里必须先把概念讲清楚,否则后面全是白做。
传统 DNS 查询是明文的:你的手机问"www.baidu.com 的 IP 是多少",这个问题在网络上是裸奔的,运营商、公共 Wi-Fi 监听者、甚至路由器本身都能看到你查了哪些域名。所谓"私人 DNS"或"加密 DNS",指的是用 DoT(DNS over TLS,端口 853)或 DoH(DNS over HTTPS,端口 443)把这个查询包加密起来,中间人看不到域名内容。
而你在路由器后台填的 1.1.1.1、223.5.5.5,只是换了一个明文 DNS 服务器的 IP 地址。查询依然走 53 端口明文发送,只不过从运营商的 DNS 换成了 Cloudflare 或阿里的 DNS。好处是可能更快、更少劫持,但隐私保护层面和原来没有本质区别。两者的协议差异可以参考本站的 DoH/DoT/DoQ 协议对比文章。
方案一:路由器 DHCP 下发自定义 DNS(最简单,但不加密)
如果你只是想全家设备统一用某个公共 DNS(比如解决某个网站打不开、想更快解析),而不追求加密,这是最省事的方案。原理是:路由器通过 DHCP 告诉所有连进来的设备"请用这个 DNS",设备自动获取后就跟着走。
TP-Link 路由器操作路径
- 浏览器登录路由器管理后台(新固件通常是
tplinkwifi.net,旧款可能是192.168.0.1)。 - 进入 高级设置 → 网络 → 互联网(WAN),找到"DNS"一栏,选择"使用以下 DNS 地址"。
- 填入首选和备用 DNS(如
223.5.5.5、223.6.6.6),保存。 - 旧款绿色/蓝色界面的 TP-Link,路径是 网络参数 → WAN 口设置 → 高级设置 → 手动设置 DNS 服务器。
以上路径来自 TP-Link 官方服务支持文档。不同型号固件版本略有差异,找不到时就在后台左侧菜单里找"WAN"或"上网设置"。
小米 / Redmi 路由器操作路径
- 浏览器访问
miwifi.com或默认地址192.168.31.1进入 Web 后台。 - 进入 常用设置 → 局域网设置 → DHCP 服务,在这里可以配置 DHCP 相关参数。
- 部分型号在"上网设置"里也能改 WAN 口 DNS,按界面提示填写即可。
以上路径来自小米官方帮助中心的 DHCP 服务说明。注意:小米路由器官方固件目前不支持直接填写 DoT/DoH 加密 DNS 上游,只能填 IP 形式的明文 DNS。
这个方案的优缺点
- 优点:零门槛、所有连接设备自动生效、不用逐台设置。
- 缺点:依然是明文 DNS,只是换了服务器;运营商仍能看到你的域名查询;不防劫持的场景下收益有限。
方案二:OpenWrt + Stubby 实现全家 DoT 加密(真加密,有门槛)
如果你有一台可以刷 OpenWrt 的路由器,这是实现"全家设备自动走加密 DNS"最干净的方案。OpenWrt 官方 Wiki 给出的标准做法是用 Stubby 做本地 DoT 存根解析器,流程是:
局域网设备 → dnsmasq(53端口)→ stubby(5453端口)→ 加密 DoT 到上游(853端口)所有设备感知不到任何变化,它们还是向路由器的 53 端口发明文查询,但路由器内部已经用 TLS 加密转发到了上游 DoT 服务器。
简要步骤(以官方 Wiki 为准):
- 进入路由器 SSH 命令行,执行
opkg update && opkg install stubby。 - 编辑
/etc/stubby/stubby.yml,配置你要用的 DoT 上游(如 Cloudflare 的one.one.one.one、Quad9 的dns.quad9.net)。 - 在 dnsmasq 配置里把转发地址指向
127.0.0.1#5453。 - 确保路由器通过 DHCP 把自己广播为 DNS 服务器,这样局域网设备自动受益。
- 建议在防火墙里封掉 WAN 口的 TCP/UDP 53 端口出站,防止设备绕过加密直发明文 DNS。
上游 DoT 地址可以参考本站整理的免费加密 DNS 地址清单。
方案三:旁路由跑 AdGuard Home(进阶推荐)
如果你的主路由不能刷 OpenWrt(比如运营商定制光猫、品牌固件锁死),旁路由是另一条现实路线:用一台旧手机、树莓派、或者便宜的小主机跑 AdGuard Home,作为旁路网关接入现有网络,主路由把 DHCP 的 DNS 指向这台旁路由。
这样做的好处是:主路由不用动,旁路由想刷就刷、想换就换;AdGuard Home 既支持 DoT/DoH 上游加密,又自带广告过滤和规则订阅,一台设备解决两个需求。详细搭建方法我们会在本系列后续的自建 AdGuard Home 教程里展开,这里先给概念。
三种方案对比
| 方案 | 加密效果 | 设置难度 | 全家生效 | 适合人群 |
|---|---|---|---|---|
| 路由器 DHCP 填公共 DNS IP | 无加密,仅换服务器 | ★ 极低 | 是 | 只想换个快 DNS 的普通用户 |
| OpenWrt + Stubby 做 DoT | 全链路加密(DoT 853) | ★★★★ 较高 | 是 | 有刷机经验、追求隐私的用户 |
| 旁路由 AdGuard Home | 全链路加密 + 广告过滤 | ★★★ 中等 | 是 | 不想动主路由、想兼顾去广告的用户 |
常见问题 FAQ
Q1:我在路由器里填了 1.1.1.1,为什么还是被 DNS 劫持?
因为 1.1.1.1 只是个明文 IP,运营商或中间设备依然可以在 53 端口上做劫持和污染。想真正防劫持,必须走 DoT 或 DoH 加密通道,也就是方案二或方案三。
Q2:怎么判断我的路由器支不支持加密 DNS?
普通品牌固件(TP-Link 家用款、小米官方固件、华为家用款)的后台通常只有填 IP 的地方,没有"DoT 主机名"或"DoH URL"输入框。支持加密上游的往往是 OpenWrt、梅林、pfSense 这类第三方固件,或者企业级路由器。
Q3:改了路由器 DNS 后,家里所有设备都要重新连 Wi-Fi 吗?
不需要重连 Wi-Fi。但设备需要重新获取一次 DHCP 租约才能拿到新的 DNS 地址——一般等几分钟自动刷新,或者手动断开重连一次 Wi-Fi 即可。
Q4:旁路由和主路由是什么关系?会影响网速吗?
旁路由不承担拨号和 NAT,只负责 DNS 和可选的过滤。正常上网流量还是主路由直接转发,旁路由只处理 53 端口的 DNS 查询,对网速几乎没有影响。
更多设备端的私人 DNS 设置教程,可以浏览本站的 私人 DNS 设置教程合集。
参考来源
- TP-Link 官方服务支持《如何修改路由器登录帐号以及判断 DNS 设置是否正常?》——支撑文中 TP-Link 旧固件 WAN 口/DHCP DNS 设置路径(网络参数→WAN口设置→手动设置DNS服务器)。
https://service.tp-link.com.cn/detail_article_575.html - TP-Link 官方 FAQ《How to change DNS Servers on TP-Link Routers》——支撑新固件界面路径(Advanced > Network > Internet > Use the Following DNS Addresses)。
https://www.tp-link.com/ph/support/faq/1711/ - 小米官方帮助中心《【路由器】DHCP服务》——支撑小米路由器 DHCP 服务入口(常用设置→局域网设置→DHCP服务)及管理地址 miwifi.com / 192.168.31.1。
https://ics-resources.xiaomi.com/ics-resources/articles/60516fba5078534fd7632cbe.html - OpenWrt 官方 Wiki《Stubby》——支撑 OpenWrt 上用 Stubby 做 DoT 加密的架构(dnsmasq:53 → stubby:5453 → encrypted:853)、安装命令与配置要点。
https://openwrt.org/docs/guide-user/services/dns/stubby