本文介绍如何诊断影响零信任域名系统(ZTDNS)服务的常见连接和配置问题,以及如何使用 ZTDNS 日志。 本文中的故障排除步骤可帮助你维护网络安全,同时确保合法应用程序和服务继续正常运行。
部署零信任域名系统(ZTDNS)服务后,如果遇到以下任何症状,请使用本指南:
- 应用程序连接失败
- DNS 解析错误或超时
- 意外的网络阻塞或服务中断
- 网络访问和 ZTDNS 配置问题
避免 ZTDNS 问题的最佳做法
-
在部署并强制实施 ZTDNS 组织范围之前
- 在审核模式下测试配置。
- 在试点设备上部署和测试 ZTDNS。
-
维护 ZTDNS 部署
- 添加 IP 异常时,记录发出异常的原因和原因。
- 若要提前了解流量模式并识别问题,请监视事件查看器日志。
- 要优化 ZTDNS 部署,请定期审查配置和日志。
故障排除清单
如果在部署并强制实施 ZTDNS 后遇到连接问题,请执行以下步骤。
步骤 1:验证是否已正确配置受信任的 DNS 服务器
确保为 ZTDNS 配置了至少一个受信任的 DNS 服务器。 打开 Windows 命令提示符窗口,然后运行以下命令:
netsh ztdns show server
此命令显示为零信任 DNS 配置的所有受信任 DNS 服务器,包括其协议(DoH 或 DoT)、IP 地址和优先级设置。
步骤 2:测试与受信任的 DNS 服务器的连接
确保客户端计算机可以连接到受信任的 DNS 服务器。 打开 Windows PowerShell 窗口,然后运行以下命令:
# Test basic connectivity to the DNS server
ping <dns-server-ip>
# Test DNS resolution using the trusted server
Resolve-DnsName -Name <domain-name> -Server <dns-server-ip>
如果这些命令不成功,请参阅 DNS 故障排除指南。
成功运行这些命令后,通过 ping 解析的 IP 地址检查端到端连接。
步骤 3:测试域名解析
若要使用 Windows DNS 客户端测试 DNS 解析,请转到客户端计算机,并在 Windows 命令提示符处运行以下命令:
ping <allowed-domain-name>
此命令使用 Windows DNS 客户端和受信任的 DNS 服务器进行名称解析,测试 DNS 服务器连接性和终结点可访问性。 解决找到的任何 DNS 问题,然后检查这些更改是否解决主要问题。 如果问题仍然存在,请继续执行更高级的故障排除步骤。
步骤 4 (高级):查看 ZTDNS 配置
若要验证当前配置,请在 Windows 命令提示符处运行以下命令:
# Check ZTDNS service state
netsh ztdns show state
# View all ZTDNS settings in JSON format
netsh ztdns show settings
# List configured IP exceptions
netsh ztdns show exception
# Display client certificate configuration
netsh ztdns show clientcert
# Show trusted certificate authorities
netsh ztdns show trustedca
解决找到的任何问题。
步骤 5 (高级):在审核模式下测试连接
如果怀疑配置问题,请暂时启用审核模式,然后在未强制实施 ZTDNS 时测试连接。 在审核模式下,如果完全强制实施 ZTDNS,Windows 会在此情况下记录 ZTDNS 阻止连接的实例。 若要为 ZTDNS 启用审核模式,请运行以下命令:
netsh ztdns set state enable=yes audit=yes
若要标识需要异常的服务,请查看 BlockedConnections 日志。 有关如何使用此日志的详细信息,请参阅本文后面的 如何查找 ZTDNS 日志 。
步骤 6 (高级):禁用 ZTDNS
如果仍无法解决主要问题,请禁用 ZTDNS。 若要禁用 ZTDNS 强制和还原正常的网络连接,请运行以下命令:
netsh ztdns set state enable=no audit=no
常见问题和解决方案
应用程序无法连接
强制实施 ZTDNS 后,用户会出现以下症状:
- 应用程序无法访问外部服务。
- 网络连接超时或目标拒绝连接。
- 正常的 Web 浏览工作,但特定应用程序会失败。
若要排查这些问题,请执行以下步骤:
- 检查 BlockedConnections 日志中是否有最近阻止的尝试。 有关此日志的详细信息,请参阅 如何查找 ZTDNS 日志。
- 标识应用程序和目标使用的受阻 IP 地址。
- 检查应用程序是否需要 IP 异常(例如,WebRTC 应用程序需要异常)。
- 若要添加异常(如有必要),请运行
netsh ztdns add exception。
DNS 解析失败
强制实施 ZTDNS 后,用户会出现以下症状:
- 应用程序无法解析域名。
- DNS 查找操作超时。
- 应用程序报告 DNS 错误。
若要排查这些问题,请执行以下步骤:
- 若要查看受信任的 DNS 服务器配置,请运行
netsh ztdns show server。 - 若要测试与受信任的 DNS 服务器的连接,请运行
ping <dns-server-ip>。 - 确保受信任的 DNS 服务器响应加密的查询。
如何查找 ZTDNS 日志
在配置为使用 ZTDNS 的 Windows 设备上,可以使用事件查看器监视所有尝试的连接和配置更改。 若要在事件查看器中找到 ZTDNS 日志,请执行以下步骤:
- 在搜索栏中,输入 事件查看器,然后从搜索结果中选择它。
- 在事件查看器的左侧面板中,导航到Windows>ZTDNS>>。
ZTDNS 文件夹列出了三个日志类别。 下表介绍了三个类别,以及如何使用日志信息。
| 类别 | 目的 | 包含的信息 | Usage |
|---|---|---|---|
| BlockedConnections | 包含记录 ZTDNS 阻止的连接的条目。 | - 阻止连接的时间 - 源 IP 地址和端口 - 目标 IP 地址和端口 - 启动进程的名称 |
查看此日志,确定可能需要异常的应用程序或服务。 |
| 可运行 | 包含记录 ZTDNS 配置和服务状态更改的条目。 | - ZTDNS 服务状态更改 - 配置更改 - 与 ZTDNS 操作相关的系统事件 |
查看此日志以监视 ZTDNS 的运行状况和配置。 |
| PermittedConnections | 包含记录 ZTDNS 允许的任何连接的条目。 | - 允许的连接时间 - 源 IP 地址和端口 - 目标 IP 地址和端口 - 启动进程的名称 |
查看此日志,验证 ZTDNS 是否允许预期连接。注意: 默认情况下,此类别处于禁用状态。 若要使用它,请转到左侧面板,右键单击 “允许的Connections”,然后选择“ 启用日志”。 |