DNS圧力試験ツール:queryperf
1.概要
DNSサーバを構成したら、DNSサーバのパフォーマンスをテストしたいに違いありません.オンラインになってから、リクエスト数が十分であれば、応答できますか?そこで,ソフトウェアシミュレーション環境を用いてDNSサーバを評価的にテストすることができる.bindには、独自の圧力テストソフト、queryperfがあります.このソフトウェアを使用してDNSサーバをリクエストテストすることができ、使用方法が簡単で、queryperfを使用して何度もテストし、平均値を取ることができます.これにより、結果が正確でなくても、実際の状況とあまり差がありません.
2.インストールダウンロードアドレス:http://www.isc.org/downloads/ 公式サイト:http://www.isc.org/downloads/bind/
ダウンロードコマンド:
3.コンパイル
コンパイルするとqueryperfディレクトリの下にqueryperfという実行可能ファイルが生成されます.このファイルは私たちが使用するコマンドプログラムファイルです.このファイルをコマンドパス(/usr/bin:/root/binなど)に移動すれば使用できます.移動しない場合は、ファイルを実行するときにフルパスでなければなりません.
4.queryperfコマンド
フォーマットの使用:
-d:次のファイルに続きます.ファイルの内容はDNSに対するユーザーの要求で、行為の要求なので、テストのために数千万件を書くことができます.
-s:DNSサーバアドレス
-p:DNSサーバポート
-q:何回お願いしますか
5.テスト
テスト環境:DNSサーバーの構築完了(IP:10.0.0.0.11)、ドメイン名view.viewlnh.comを例にとると、具体的な操作は以下の通りである.
vimを使用してリクエストファイルを編集する
以上の4つのレコードでは十分ではありません.yy 100 pを使用してマルチポイントをコピーできます.
==>テストの開始:
コマンドの実行:
結果は次のとおりです.
このテストプロセスが完了したら、複数回テストして平均値を取ることもできます.
六、性能テストのまとめ
1、サーバーの性能テストを行う時、サーバープラットフォーム自身でテストソフトウェアテストを使用しないほうがよく、別の機械を交換したほうがよく、CPU処理の結果がより正確になる.
2、テストの时にプラットフォームが出会う最大の要求数を予测して、この要求数でテストして、力を量って、サーバーが大きい流量のDDOSに出会うならば、単一の机械の性能はどんなに良くても、担ぐことができません.
3、queryperfを使用して性能テストを行う場合は、複数回テストし、平均値をとることが望ましい.
4、プロファイルのパラメータテストの一部を変更することができます.例えば、再帰を開き、クエリーログを開くなどの機能をテストします.
5、その他のオープンソーステストツール、tcpcopy
参考資料:http://www.it165.net/admin/html/201403/2545.html
DNSサーバを構成したら、DNSサーバのパフォーマンスをテストしたいに違いありません.オンラインになってから、リクエスト数が十分であれば、応答できますか?そこで,ソフトウェアシミュレーション環境を用いてDNSサーバを評価的にテストすることができる.bindには、独自の圧力テストソフト、queryperfがあります.このソフトウェアを使用してDNSサーバをリクエストテストすることができ、使用方法が簡単で、queryperfを使用して何度もテストし、平均値を取ることができます.これにより、結果が正確でなくても、実際の状況とあまり差がありません.
2.インストール
ダウンロードコマンド:
wget https://www.isc.org/downloads/file/bind-9-11-0/?version=tar-gz
3.コンパイル
tar xf bind-9.11.0.tar.gz
cd bind-9.9.9-P1/contrib/queryperf/
./configure
make
コンパイルするとqueryperfディレクトリの下にqueryperfという実行可能ファイルが生成されます.このファイルは私たちが使用するコマンドプログラムファイルです.このファイルをコマンドパス(/usr/bin:/root/binなど)に移動すれば使用できます.移動しない場合は、ファイルを実行するときにフルパスでなければなりません.
cd bind-9.9.9-P1/contrib/queryperf/
cp queryperf /usr/bin/
4.queryperfコマンド
フォーマットの使用:
queryperf [-d datafile] [-s server_addr] [-p port] [-q num_queries]
-d:次のファイルに続きます.ファイルの内容はDNSに対するユーザーの要求で、行為の要求なので、テストのために数千万件を書くことができます.
-s:DNSサーバアドレス
-p:DNSサーバポート
-q:何回お願いしますか
5.テスト
テスト環境:DNSサーバーの構築完了(IP:10.0.0.0.11)、ドメイン名view.viewlnh.comを例にとると、具体的な操作は以下の通りである.
vimを使用してリクエストファイルを編集する
[root@dns queryperf]# vim test1.txt
view.viewlnh.com A
view.viewlnh.com A
view.viewlnh.com A
view.viewlnh.com A
........
.........
.........
以上の4つのレコードでは十分ではありません.yy 100 pを使用してマルチポイントをコピーできます.
[root@dns queryperf]# wc -l test1.txt
1001000 test1.txt #<== 100 ,
==>テストの開始:
コマンドの実行:
queryperf -d test1.txt -s 10.0.0.11
結果は次のとおりです.
DNS Query Performance Testing Tool
Version: $Id: queryperf.c,v 1.12 2007/09/05 07:36:04 marka Exp $
[Status] Processing input data
[Status] Sending queries (beginning with 10.0.0.11)
[Status] Testing complete
Statistics:
Parse input file: once
Ended due to: reaching end of file
Queries sent: 1001000 queries #<==
Queries completed: 1001000 queries #<==
Queries lost: 0 queries
Queries delayed(?): 0 queries
RTT max: 0.162247 sec
RTT min: 0.000020 sec
RTT average: 0.001344 sec
RTT std deviation: 0.001493 sec
RTT out of range: 0 queries
Percentage completed: 100.00% #<==
Percentage lost: 0.00% #<==
Started at: Sat Oct 8 14:55:30 2016
Finished at: Sat Oct 8 14:56:37 2016
Ran for: 67.593280 seconds
Queries per second: 14809.164461 qps #<==
このテストプロセスが完了したら、複数回テストして平均値を取ることもできます.
六、性能テストのまとめ
1、サーバーの性能テストを行う時、サーバープラットフォーム自身でテストソフトウェアテストを使用しないほうがよく、別の機械を交換したほうがよく、CPU処理の結果がより正確になる.
2、テストの时にプラットフォームが出会う最大の要求数を予测して、この要求数でテストして、力を量って、サーバーが大きい流量のDDOSに出会うならば、単一の机械の性能はどんなに良くても、担ぐことができません.
3、queryperfを使用して性能テストを行う場合は、複数回テストし、平均値をとることが望ましい.
4、プロファイルのパラメータテストの一部を変更することができます.例えば、再帰を開き、クエリーログを開くなどの機能をテストします.
5、その他のオープンソーステストツール、tcpcopy
参考資料:http://www.it165.net/admin/html/201403/2545.html