1.该工具所在目录

bind-9.2.2/contrib/queryperf(不知道BIND 8或BIND4是否带有该工具)

2.简介

该工具原本设计是用来测试权威DNS服务器的,但是也可以使用该工具来测试只缓存DNS服务器。我大概看了一下说明文档,简要介绍一下(建议阅读原文)。

1)测试环境:

建议在不同的机器上运行queryperf和DNS服务器,这样queryperf的执行就不会影响到DNS服务器的运行。建议把这两台机器放置在100M以上速度的环境中,并且在这两台机器之间最好不要有防火墙或者路由器等设备。这样测试的结果才能够更好地反映DNS服务器的执行速度。

2)配置服务器

关闭递归查询(这是用来测试权威服务器时需要的,如果你测试的是只缓存服务器,那当然不能关闭了)。在named.conf中的options语句中添加:
recursion no;

3)建立测试文件

说明文档中说最好建立一个有1w到100w条数据的测试文件,该文件的每一行其实就是一个查询,格式如下:
foo.com A

第一个字段是域名(这些域名最好是权威服务器所管理的区中的真实域名),第二个字段是查找类型。

其实queryperf的执行就是打开测试文件,一行一行的读取文件中的记录,然后再查×××器,最后统计相关信息进行报告。

3.安装

该工具的安装非常的简单,进入bind-9.2.2/contrib/queryperf目录执行如下命令就可以了:

  1.         [root@andy queryperf]# ./configure
  2.         [root@andy queryperf]# make
复制代码


执行完如上命令后就可以看到目录中多了一个可执行文件――queryperf,这正是我们所需要的,继续  

4.使用
1)建立测试文件
这是我建立的测试文档(文件名为:test),

  1. [root@andy queryperf]# cat test
  2. www.andy.com A
  3. andy.com A
  4. andy.com NS
  5. andy.com MX
  6. fdsaf.andy.com A
  7. www.sohu.com NS
  8. jay.andy.com A
  9. dns.andy.com A
复制代码


说明:这是我用来测试的,所以就只写了8条记录。“andy.com”是被测试的DNS服务器上的一个区,测试用的。各位在实际应用时,请做相应修改!

2)测试
执行如下命令:
[root@andy queryperf]# ./queryperf –d test –s 192.168.0.113
说明:“-d”后面跟的是前面建立的测试文件的文件名:test
“-s”后面跟的是需要进行测试的服务器
结果如下:

  1. DNS Query Performance Testing Tool
  2. Version: $Id: queryperf.c,v 1.1.1.2.2.2 2002/07/02 04:17:18 marka Exp $
  3.  
  4. [Status] Processing input data
  5. [Status] Sending queries
  6. [Status] Testing complete
  7.  
  8. Statistics:
  9.  
  10. Parse input file:     once
  11.           Ended due to:      reaching end of file
  12.  
  13.           Queries sent:         8 queries
  14.           Queries completed:    8 queries
  15.           Queries lost:          0 queries
  16.  
  17.           Percentage completed: 100.00%
  18.           Percentage lost:        0.00%
  19.  
  20.           Started at:           Tue Dec  4 21:36:59 2003
  21.           Finished at:          Tue Dec  4 21:36:59 2003
  22.           Ran for:              0.195633 seconds
  23.  
  24.           Queries per second:   40.892896 qps
复制代码



上面只是一个简单的简介,详细的请参考说明文件:bind-9.2.2/contrib/queryperf/README或者使用queryperf --help查看相关使用说明。我也是刚使用该工具,难免有错误或者遗漏,请各位网友见谅!