DNS压测小工具2 —— 筑梦之路

此处介绍另一款DNS压测小工具dnsperf。

源码编译安装

# 准备
apt-get update
apt-get install git autoconf automake libtool make pkg-config check g++ librsync-dev libz-dev libssl-dev uthash-dev libyajl-dev libck-dev libnghttp2-dev 

# 拉取源码编译安装

git clone https://github.com/DNS-OARC/dnsperf.git

cd /dnsperf/
 
./autogen.sh
 
./configure
 
make
 
make install

参数说明

-s

用来指定DNS服务器的IP地址,默认值是127.0.0.1

-p

用来指定DNS服务器的端口,默认值是53

-d

用来指定DNS消息的内容文件,该文件中包含要探测的域名和资源记录类型,见下文

-t

用来指定每个请求的超时时间,默认值是3000ms

-Q

用来指定本次压测的最大请求数,默认值是1000

-c

用来指定并发探测数,默认值是100. dnsperf会从-d指定的文件中随机选取100个座位探测域名来发送DNS请求

-l

用来指定本次压测的时间,默认值是无穷大

-e

本选项通过EDNS0,在OPT资源记录中运用edns-client-subnet来指定真实的client ip

-i

用来指定前后探测的时间间隔,因为dnsperf是一个压测工具,所以本选项目前还不支持

-P

指定用哪个传输层协议发送DNS请求,udp或者tcp。默认值是udp

-f

指定用什么地址类型发送DNS请求,inet或者inet6。默认值是inet

-v

除了标准的输出外,还输出每个相应码的个数

-h

打印帮助

如何使用

1. 编写要压测的dns配置文件

# 一行只能有两列,之后的列会被忽略
 
www.test1.com A 
www.test2.com AAAA

2. 使用示例

dnsperf -d test.txt -s 8.8.8.8 -c100000 -Q100000 -l6000

重点关注输出里面的qps指标,该值越大说明性能越好。

若需要在k8s环境上使用可使用docker hub上的镜像 guessi/dnsperf。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值