翻墙时的隐私保护:DNS泄露防护完全指南
前言
很多人以为连上了代理就万事大吉了,但实际上,DNS 泄露可能正在悄悄暴露你的上网行踪。即使使用了 VPN 或代理,如果 DNS 查询没有走代理通道,你的浏览历史仍然可能被 ISP 或第三方监控。本文将详细讲解 DNS 泄露的原理、检测方法和防护措施。
一、什么是 DNS 泄露?
1.1 DNS 基础
DNS(Domain Name System,域名系统)就像是互联网的电话簿,把人类可读的域名(如 google.com)翻译成机器可读的 IP 地址(如 8.8.8.8)。
DNS 查询过程:
你在浏览器输入 google.com
↓
你的设备向 DNS 服务器发送查询请求
↓
DNS 服务器返回 google.com 对应的 IP 地址
↓
你的设备通过 IP 地址连接到 Google 服务器
1.2 什么是 DNS 泄露?
当你使用 VPN 或代理时,如果 DNS 查询没有经过加密隧道,而是直接发送给了 ISP 的 DNS 服务器,这就是 DNS 泄露。
正常情况(无泄露):
你的设备 → [加密隧道] → VPN 服务器 → DNS 查询 → 返回结果
↑
DNS 查询也走隧道
泄露情况:
你的设备 → DNS 查询(明文,走本地 ISP)→ ISP DNS 服务器
↓
同时 → [加密隧道] → VPN 服务器 → 访问网站
⚠️ 后果: 虽然你访问的内容是加密的,但你访问了哪些网站,ISP 一清二楚。
1.3 DNS 泄露的风险
| 风险 | 说明 |
|---|---|
| 隐私泄露 | ISP 知道你访问了哪些网站 |
| 数据收集 | DNS 查询记录可能被存储和分析 |
| 精准广告 | 根据浏览记录推送定向广告 |
| 安全风险 | 恶意 DNS 服务器可能劫持网站 |
| 审查规避失败 | 即使翻墙,访问记录仍可能被追踪 |
二、如何检测 DNS 泄露?
2.1 在线检测工具
以下网站可以免费检测 DNS 泄露:
| 检测网站 | 地址 | 特点 |
|---|---|---|
| DNS Leak Test | dnsleaktest.com | 最知名,Extended Test 很详细 |
| ipleak.net | ipleak.net | 综合检测,信息全面 |
| BrowserLeaks | browserleaks.com/dns | 浏览器泄露检测 |
| DNS leak test | www.dnsleak.com | 简洁快速 |
| Whoer | whoer.net | 综合匿名度检测 |
2.2 检测步骤
标准检测流程:
- 连接你的 VPN/代理
- 打开检测网站(如 dnsleaktest.com)
- 点击「Standard Test」或「开始测试」
- 等待几秒,查看结果
- 如果显示的 DNS 服务器是你 VPN 服务商的,说明没有泄露
- 如果显示的是你本地 ISP 的 DNS 服务器,说明有泄露
Extended Test(扩展测试)更准确:
- 会进行更多次查询
- 检测更多潜在的泄露途径
- 结果更全面
2.3 结果怎么看
安全的结果:
- 显示的 DNS 服务器位于 VPN/代理节点所在国家
- DNS 服务器属于 VPN 服务商或第三方公共 DNS
- 没有本地 ISP 的 DNS 服务器出现
有泄露的结果:
- 显示你所在国家/地区的 DNS 服务器
- 显示你当地 ISP 的 DNS 服务器
- 出现中国电信/联通/移动等运营商的 DNS
2.4 其他泄露检测
除了 DNS 泄露,还需要注意:
| 泄露类型 | 检测方法 | 说明 |
|---|---|---|
| WebRTC 泄露 | ipleak.net / browserleaks.com | 浏览器 WebRTC 可能泄露真实 IP |
| IPv6 泄露 | test-ipv6.com | 如果有 IPv6,可能绕过代理 |
| 浏览器指纹 | amiunique.org | 浏览器独特性可能被追踪 |
| DNS over HTTPS | 检查浏览器设置 | 是否启用了加密 DNS |
三、DNS 泄露的常见原因
3.1 系统 DNS 设置问题
最常见的原因是系统 DNS 没有设置为走代理。
问题场景:
- 系统 DNS 还是 ISP 默认的
- VPN 客户端没有修改系统 DNS
- 断开 VPN 后 DNS 没有恢复
3.2 分流规则导致
如果使用规则模式(分流),部分域名可能走直连,其 DNS 查询也会直连。
问题场景:
- 国内网站走直连,DNS 也直连(这正常)
- 但国外网站的 DNS 查询也没有走代理(这就有问题)
- 规则配置不正确导致泄露
3.3 IPv6 问题
如果网络同时支持 IPv4 和 IPv6,IPv6 的 DNS 查询可能绕过代理。
问题场景:
- VPN 只代理了 IPv4 流量
- IPv6 的 DNS 查询直接走本地 ISP
- 结果就是部分流量泄露
3.4 WebRTC 泄露
浏览器的 WebRTC 功能可能绕过代理直接获取真实 IP。
问题场景:
- 浏览器 WebRTC STUN 请求绕过代理
- 直接向 ISP DNS 查询 STUN 服务器
- 泄露真实 IP 和 DNS 查询
3.5 智能 DNS / CDN 优化
某些「智能 DNS」或 CDN 加速功能可能导致 DNS 查询不走代理。
问题场景:
- 为了加速访问,直接用本地 DNS 解析
- 虽然内容走代理,但 DNS 查询泄露了
- 一些客户端默认开启类似功能
四、防止 DNS 泄露的方法
4.1 方法一:使用 TUN 模式(最推荐)
TUN 模式(虚拟网卡)可以让系统所有流量,包括 DNS 查询,都经过代理。
Clash Verge 开启 TUN 模式:
- 打开 Clash Verge 设置
- 找到「系统设置」→「TUN 模式」
- 点击开启
- 按提示安装驱动/授权
优点:
- 几乎 100% 防止 DNS 泄露
- 系统全局都走代理
- UDP 流量也能代理
缺点:
- 需要管理员权限
- 可能影响某些本地网络功能
- 配置稍微复杂一点
4.2 方法二:使用 FakeIP
FakeIP 是 Clash/Sing-box 等客户端的功能,可以劫持 DNS 查询返回假 IP,然后在客户端内部映射。
Clash 配置示例:
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
nameserver:
- 114.114.114.114
- 223.5.5.5
fallback:
- 8.8.8.8
- 1.1.1.1
优点:
- 有效防止 DNS 泄露
- 速度快,有缓存
- 不需要 TUN 模式
缺点:
- 某些应用可能不兼容
- 需要正确配置
4.3 方法三:使用加密 DNS
使用 DNS over HTTPS (DoH) 或 DNS over TLS (DoT),让 DNS 查询本身也是加密的。
浏览器开启 DoH:
Chrome / Edge:
- 设置 → 隐私和安全 → 安全
- 开启「使用安全 DNS」
- 选择 Custom,输入:
https://1.1.1.1/dns-query
Firefox:
- 设置 → 隐私与安全 → DNS over HTTPS
- 开启并选择服务商
优点:
- DNS 查询加密,ISP 看不到
- 不依赖 VPN 也能保护 DNS 隐私
缺点:
- 只是加密了,查询路径可能还是直连
- 不能完全代替 VPN 的 DNS 保护
4.4 方法四:手动设置 DNS
将系统 DNS 设置为公共 DNS 服务器。
推荐的公共 DNS:
| DNS 服务商 | IPv4 地址 | 特点 |
|---|---|---|
| Cloudflare | 1.1.1.1, 1.0.0.1 | 速度快,隐私好 |
| 8.8.8.8, 8.8.4.4 | 稳定可靠 | |
| Quad9 | 9.9.9.9 | 带安全过滤 |
| OpenDNS | 208.67.222.222 | 老牌服务商 |
Windows 修改 DNS:
- 控制面板 → 网络和共享中心 → 更改适配器设置
- 右键当前网络 → 属性
- 双击「Internet 协议版本 4 (TCP/IPv4)」
- 选择「使用下面的 DNS 服务器地址」
- 输入首选和备用 DNS
macOS 修改 DNS:
- 系统设置 → 网络 → 详细信息 → DNS
- 添加 DNS 服务器
注意: 手动设置 DNS 只是换了 DNS 服务商,如果查询不走代理,仍然可能泄露你访问了哪些网站(只是从 ISP 换成了 DNS 服务商)。
4.5 方法五:关闭 WebRTC
防止浏览器通过 WebRTC 泄露真实 IP 和 DNS。
Chrome / Edge:
- 安装「WebRTC Control」或「WebRTC Network Limiter」插件
- 开启禁用 WebRTC
Firefox:
- 地址栏输入
about:config - 搜索
media.peerconnection.enabled - 设置为
false
注意: 禁用 WebRTC 可能影响视频会议、语音通话等功能。
4.6 方法六:禁用 IPv6
如果 VPN 不支持 IPv6,建议禁用系统 IPv6,防止绕过代理。
Windows 禁用 IPv6:
- 网络连接属性
- 取消勾选「Internet 协议版本 6 (TCP/IPv6)」
macOS 禁用 IPv6:
networksetup -setv6off Wi-Fi
五、不同客户端的 DNS 配置
5.1 Clash / Clash Verge
推荐 DNS 配置:
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
fake-ip-filter:
- '*.lan'
- '*.localdomain'
- '*.local'
nameserver:
- 114.114.114.114
- 223.5.5.5
fallback:
- 8.8.8.8
- 1.1.1.1
- 9.9.9.9
fallback-filter:
geoip: true
geoip-code: CN
ipcidr:
- 240.0.0.0/4
开启方法:
- Clash Verge:设置 → Clash 设置 → DNS 设置
- 确保 enable: true
- enhanced-mode 选择 fake-ip 或 redir-host
5.2 Sing-box
推荐 DNS 配置:
{
"dns": {
"servers": [
{
"tag": "dns_proxy",
"address": "https://1.1.1.1/dns-query",
"detour": "proxy"
},
{
"tag": "dns_direct",
"address": "https://223.5.5.5/dns-query",
"detour": "direct"
}
],
"rules": [
{
"geosite": "cn",
"server": "dns_direct"
}
],
"final": "dns_proxy",
"strategy": "ipv4_only"
}
}
5.3 v2rayN / v2rayNG
- 设置 → 启用自定义 DNS
- 填入 DNS 服务器地址
- 开启 DNS 分流
5.4 Shadowrocket (iOS)
- 配置 → 通用 → DNS
- 选择「Proxy DNS」模式
- 或手动配置 DNS
六、隐私保护进阶技巧
6.1 浏览器隐私设置
推荐设置:
| 设置项 | 推荐值 | 说明 |
|---|---|---|
| 不跟踪请求 | 开启 | 发送 DNT 头 |
| 第三方 Cookie | 阻止 | 防止跨站追踪 |
| 预加载 | 关闭 | 减少不必要的连接 |
| 安全 DNS | 开启 | 使用 DoH |
| WebRTC | 禁用 | 防止 IP 泄露 |
6.2 推荐隐私工具
| 工具 | 用途 | 推荐度 |
|---|---|---|
| uBlock Origin | 广告/追踪器拦截 | ⭐⭐⭐⭐⭐ |
| Privacy Badger | 智能追踪防护 | ⭐⭐⭐⭐ |
| HTTPS Everywhere | 强制 HTTPS | ⭐⭐⭐⭐ |
| Firefox Multi-Account Containers | 容器隔离 | ⭐⭐⭐⭐ |
| Tor Browser | 匿名浏览 | ⭐⭐⭐⭐⭐ |
6.3 其他隐私建议
- 使用隐私友好的搜索引擎:DuckDuckGo、Startpage、Brave Search
- 浏览器指纹防护:使用 Firefox + 隐私设置,或 Tor Browser
- 定期清理 Cookie:设置浏览器退出时清除
- 使用 VPN + Tor:需要更高匿名度时
- 注意社交媒体隐私:不要在社交平台泄露太多个人信息
七、常见问题
Q1:我用了 VPN 就不会有 DNS 泄露了吧?
A: 不一定。取决于 VPN 客户端的配置。有些 VPN 客户端会自动处理 DNS,有些不会。建议使用检测工具实际测试一下。
Q2:DNS 泄露有什么实际危害?
A: 主要是隐私方面的问题:
- ISP 可以知道你访问了哪些网站
- 你的浏览习惯可能被记录和分析
- 如果在敏感网络环境下,可能被追踪
Q3:用了 Clash 还需要担心 DNS 泄露吗?
A: 如果正确配置(开启 fake-ip 或 TUN 模式),一般不会泄露。但默认配置下可能存在泄露风险,建议检测确认。
Q4:FakeIP 和 TUN 模式哪个好?
A:
- FakeIP:配置简单,兼容性好,大部分场景够用
- TUN 模式:更彻底,UDP 也能代理,但配置稍复杂
- 推荐先用 FakeIP,如果遇到 UDP 相关问题再开 TUN
Q5:公共 DNS 会记录我的查询吗?
A: 不同服务商政策不同:
- Cloudflare:声称不记录个人身份信息
- Google:可能记录一些数据
- 建议查看具体服务商的隐私政策
- 但总比 ISP 记录好
Q6:国内网站的 DNS 走直连算泄露吗?
A: 不算。国内网站本来就是直连的,DNS 直连也正常。关键是国外的、需要翻墙访问的网站,它们的 DNS 查询是否走了代理。
八、总结
8.1 防护优先级
| 优先级 | 措施 | 难度 | 效果 |
|---|---|---|---|
| 最高 | 开启 TUN 模式 | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
| 很高 | 开启 FakeIP | ⭐⭐ | ⭐⭐⭐⭐⭐ |
| 高 | 关闭 WebRTC | ⭐ | ⭐⭐⭐⭐ |
| 中 | 使用加密 DNS | ⭐ | ⭐⭐⭐ |
| 中 | 禁用 IPv6 | ⭐ | ⭐⭐⭐ |
| 低 | 浏览器隐私设置 | ⭐⭐ | ⭐⭐⭐ |
8.2 检查清单
✅ 定期检查:
- DNS 泄露检测(dnsleaktest.com)
- WebRTC 泄露检测(browserleaks.com)
- IP 地址检测(ipleak.net)
- 浏览器指纹检查(amiunique.org)
8.3 最终建议
- 开启 FakeIP 或 TUN 模式:这是最有效的防护
- 定期检测:每月至少检测一次 DNS 泄露
- 关闭 WebRTC:简单有效
- 使用隐私浏览器:Firefox + 隐私扩展
- 保持警惕:隐私保护是持续的过程,不是一劳永逸的
关注 润土分享 获取更多隐私安全技巧!
相关阅读:翻墙常见法律风险