powershell - nslookup 响应比 Resolve-DnsName cmdlet 的响应慢很多
问题描述
我一直在尝试使用 PowerShell 测量 DNS 延迟。
我想检查 DNS 响应时间并想跳过本地解析器缓存,所以我使用nslookup
它并且它工作正常,除非我将结果与Resolve-DnsName
cmdlet 的响应进行比较。
(Measure-Command { Resolve-DnsName www.google.com -DnsOnly }).TotalMillisecond
注意:我使用-DnsOnly
参数来确保Resolve-DnsName
仅将 DNS 协议用于名称解析。
Resolve-DnsName
在约 10 毫秒内nslookup
返回响应,而在 >100 毫秒后返回响应
我不确定Resolve-DnsName
内部是如何工作的,但我不确定要依赖哪个结果。
解决方案
Nslookup 不查看 NRPT 表:Get-DnsClientNrptRule
-Resolve-DnsName 确实看表
-来自客户端机器查询 NRPT 的 DNS 查询
- 出于这个原因,应该使用 Resolve-DNS 而不是 nslookup
-另一个解决方案是使用 DIG 代替 nslookup
推荐阅读
- python - 如何将字符串写入文件上的任何特定(条件)位置
- python - 如何从 np.datetime64 对象中获取月份,而不是使用 pandas
- cytoscape.js - 用户移动节点后,如何在 Dash/Cytoscape 中找到节点的位置?
- phaser-framework - Phaser 3 中的血条
- javascript - 如何显示 X 轴上的点之间的相对距离?
- python - Numpy数组 - 使用重塑将多列堆叠成一列
- laravel - 将对象发送到控制器中的“显示”方法时的空请求
- java - 错误无法连接到 CircleCi 中的 Ryuk
- r - R:逃避重复
- ios - 无法使用 Azure DevOps 构建使用 Cordova / Ionic 构建的 iOS 应用程序