为什么同一 LAN 中一台计算机上的 dig 查询时间比另一台计算机上的慢?

为什么同一 LAN 中一台计算机上的 dig 查询时间比另一台计算机上的慢?

长话短说,我使用路由器 (EdgeRouter) 中内置的 dnsmasq 设置 DNS 转发/缓存。

我的测试命令很简单:

dig www.example.com

在一台计算机(恰好是 2016 款 MacBook 1.3 GHz Core m7)上,我始终得到 dig 报告的大约 60-70 毫秒的查询时间。在另一台计算机(2016 iMac 4 GHz Core i7)上,在相同的 WAP、网络等上,我始终得到 1-2 毫秒的时间。两者的所有选项、标志等以及实际返回值都是相同的。

我唯一能想到的是,计算机本身的速度弥补了这种差异,但不知怎的,这似乎是错误的。似乎 dig 应该解释这一点,但也许不能。是CPU速度还是我应该看看其他的东西?

我使用了 namebench,它似乎是正确的(例如平均 4-5 毫秒)。我只是很困惑为什么这款笔记本电脑的挖掘报告如此之高。

答案1

我认为这是因为您使用不同的名称服务器。

通常每个域(或区域)都有多个名称服务器,程序会随机选择一个。

你可以做一个

dig example.com

查找名称服务器,然后选择一个。

dig @ns1.registrar.example www.example.com

只有这样才能真正做到机器之间的可比测试。注意:此方法还会删除查找缓存。也许您仍然会有速度差异,但现在您正在比较相同的查询。

相关内容