知识 Wiki 总览 / VPN
VPN中的DNS
更新于 2026-11-07条目链接
VPN 中的 DNS 需要同时满足三项条件:客户端使用预期的解析器,通往解析器的路由进入隧道,且服务端防火墙和递归解析器允许该客户端查询。某些组织采用分流 DNS,只将内部域名交给内网解析器,其余域名继续交给公共解析器。
常见故障
- 客户端仍使用本地 Wi-Fi 或运营商 DNS。
- VPN DNS 地址没有对应隧道路由,或服务器不可达。
- 内部 DNS 记录只在组织解析器上存在。
- 浏览器、系统或安全软件启用了独立 DoH,绕过系统 VPN DNS 配置。
- IPv4 与 IPv6 的 DNS 和路由策略不一致。
跨平台核验
Windows
Get-DnsClientServerAddress
Resolve-DnsName intranet.example.org -Server 10.8.0.1
macOS
scutil --dns
dscacheutil -q host -a name intranet.example.org
Linux
resolvectl status
resolvectl query intranet.example.org
将 10.8.0.1 和内部域名替换为管理员提供的值。查询成功不等于 DNS 查询必然经过 VPN;应同时检查接口配置、目标路由和解析器日志。
DoH、DoT 与 VPN DNS
DoH 和 DoT 加密客户端到递归解析器的 DNS 传输,但不会让递归解析器看不到查询内容。若要让组织策略能够解析内部域名或记录 DNS 审计,需要正确配置应用层加密 DNS 与系统分流规则之间的关系。
参考资料
RFC 1034:DNS 概念与设施;RFC 7858:DNS over TLS;RFC 8484:DNS over HTTPS;Microsoft Learn:Get-DnsClientServerAddress;Linux resolvectl 手册。
