Windows 如何决定使用哪个 DNS 服务器

Windows DNS 选择受缓存、网卡服务器列表、超时、VPN/NRPT 和应用解析器影响;接口 metric 不是唯一因素。附配置检查和指定服务器查询方法。

最佳实践
加密网络与通信桥梁插画

一句话回答:Windows 通常先使用 DNS 客户端缓存(包括 hosts 映射),未命中再按接口和 DNS 策略查询服务器。备用服务器主要用于超时容错,不能作为首选返回 NXDOMAIN 后的第二套答案。多网卡还受 NRPT、VPN、智能多宿主解析和应用自带 DoH 影响,不是单靠 metric 的固定队列。

完整解析顺序

  1. 使用系统解析器的应用会检查本地名称信息和 DNS 客户端缓存,hosts 映射也会加载到缓存中。
  2. 根据接口配置、名称解析策略、DNS 后缀等选择查询目标。
  3. 无响应时重试其他服务器;多接口/超时阶段可能并行查询。
  4. mDNS、LLMNR、NetBIOS 是否参与取决于名称类型、应用和系统策略,不能排成通用的最后一步。

多网卡时选哪个

接口 metric 是排查线索之一,但不独自决定 DNS 路由。查看:

Get-NetIPInterface | Sort-Object InterfaceMetric

VPN 的经典问题就在这:VPN 客户端通常把自己的接口 metric 调小,接管 DNS;如果 VPN 的 DNS 解不了内网域名,就会出现"连上 VPN 打不开内网系统"。先查看 Get-DnsClientNrptPolicy、VPN 分流规则和实际查询去向,再由管理员调整;不要把企业 DNS 直接替换成公共解析器。

常用查看与设置命令

# 查看各网卡的 DNS 配置
Get-DnsClientServerAddress

# 查看当前缓存
ipconfig /displaydns

# 怀疑旧缓存影响结果时清理
ipconfig /flushdns

# 只读测试:向经管理员确认的 DNS 查询,不改系统配置
Resolve-DnsName example.com -Server 192.0.2.53
# 192.0.2.53 为文档地址,替换为实际批准的 DNS 地址

# 调整接口优先级(越小越优先)
Set-NetIPInterface -InterfaceAlias "以太网" -InterfaceMetric 10

常见问题(FAQ)

Q:hosts 文件和 DNS 服务器冲突时听谁的?

A:使用 Windows DNS 客户端解析的程序通常会使用 hosts 映射。浏览器自带解析器、DoH 或直接查询 DNS 的工具可能路径不同,需检查应用配置。

Q:改了 DNS 配置但不生效?

A:先确认应用是否使用系统 DNS,再按需清理系统与应用缓存、复查 NRPT/VPN 策略。远程排障不要随意禁用网卡,以免断开管理连接。

Q:备用 DNS 什么时候启用?

A:首选 DNS 无响应(超时)时才退到备用;首选返回"域名不存在"(NXDOMAIN)时不会查备用——这是常见误解,不存在"两个 DNS 结果合并"的行为。


参考资料

本文依据官方资料核对,未进行现场运行测试;代码与配置示例需结合实际版本、权限和环境验证。

延伸阅读

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台