如何在 Linux 上测试 DNS 服务器速度
无需手动配置,您的 Linux 将被设置为使用 ISP 或组织提供的 DNS 服务。如果您对默认的 DNS 服务不满意,可以考虑使用其他公共 DNS 服务,例如 Google DNS、OpenDNS 等。在切换到不同的 DNS 服务器之前,您可能希望比较可用的 DNS 服务器之间的 DNS 服务器速度,并找到最适合您的 DNS。
在 Linux 上,有一个名为 namebench
的开源 DNS 基准测试工具,它可以帮助您找到最佳的 DNS 服务器。 namebench
可以在命令行模式和 GUI 模式下运行。在这篇文章中,我将描述如何使用namebench
测试和比较 DNS 服务器速度。
在 Linux 上安装 namebench
要在 Debian、Ubuntu 或 Linux Mint 上安装并启动 namebench
:
$ sudo apt-get install python-tk
$ wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/namebench/namebench-1.3.1-source.tgz
$ tar xvfvz namebench-1.3.1-source.tgz
$ cd namebench-1.3.1
$ ./namebench.py
要在 CentOS、RHEL 或 Fedora 上安装并启动 namebench
:
$ sudo yum install tkinter
$ wget http://namebench.googlecode.com/files/namebench-1.3.1-source.tgz
$ tar xvfvz namebench-1.3.1-source.tgz
$ cd namebench-1.3.1
$ ./namebench.py
如果您没有安装 X11,namebench
将自动以命令行模式继续,并立即开始评估可用的 DNS 服务器。如果您在 Linux 桌面环境中运行 namebench
,namebench
将启动图形界面,如下所示。单击Start Benchmark
按钮开始 DNS 基准测试。 namebench
将测试您的本地 DNS 服务器以及公共和区域 DNS 服务器。

当在命令行模式下运行时,namebench
将在完成后在终端中打印出基准测试摘要(例如,推荐的 DNS 配置),如下所示。
Recommended configuration (fastest + nearest):
----------------------------------------------
nameserver 208.67.220.220 # OpenDNS
nameserver 151.198.0.39 # Verizon Home5 US
nameserver 71.250.0.12 # SYS-71.250.0.12
********************************************************************************
In this test, OpenDNS is 5.1%: Faster
********************************************************************************
- Saving report to /tmp/namebench_2013-04-30_2337.html
- Saving detailed results to /tmp/namebench_2013-04-30_2337.csv
当在 GUI 模式下运行时,namebench
将在 Web 浏览器窗口中显示 DNS 速度测试结果。 namebench
生成的典型 DNS 基准测试报告如下所示。
namebench
的 DNS 速度测试结果示例
DNS 速度比较总结:

平均/最短 DNS 响应时间:

DNS 响应时间分布:

为了比较 DNS 服务器,namebench
对您的网络浏览器历史记录中找到的主机名或 Alexa 前 10,000 个域名执行 DNS 查找。 namebench
生成的 DNS 查找时间测量结果存储在 /tmp/namebench_*.csv
中,因此您可以根据需要进行任何自定义分析。