首页 > 解决方案 > nslookup 响应比 Resolve-DnsName cmdlet 的响应慢很多

问题描述

我一直在尝试使用 PowerShell 测量 DNS 延迟。

我想检查 DNS 响应时间并想跳过本地解析器缓存,所以我使用nslookup它并且它工作正常,除非我将结果与Resolve-DnsNamecmdlet 的响应进行比较。

(Measure-Command { Resolve-DnsName www.google.com -DnsOnly }).TotalMillisecond

注意:我使用-DnsOnly参数来确保Resolve-DnsName仅将 DNS 协议用于名称解析。

Resolve-DnsName在约 10 毫秒内nslookup返回响应,而在 >100 毫秒后返回响应

我不确定Resolve-DnsName内部是如何工作的,但我不确定要依赖哪个结果。

标签: powershellnslookup

解决方案


Nslookup 不查看 NRPT 表:Get-DnsClientNrptRule

-Resolve-DnsName 确实看表

-来自客户端机器查询 NRPT 的 DNS 查询

- 出于这个原因,应该使用 Resolve-DNS 而不是 nslookup

-另一个解决方案是使用 DIG 代替 nslookup


推荐阅读