dnsmasq
dnsmasq 是一个 dns 服务器
安装:
sudo yum install dnsmasq
sudo systemctl start dnsmasq
参数调优
修改 /etc/dnsmasq.conf ,然后重启服务
参数 | 说明 |
---|---|
cache-size | 缓存大小,默认值 150 ,很坑 |
dns-forward-max | 同时做域名解析的最大并发数,默认值 150,很坑 |
压测 dns 性能
可以使用 dnsperf 工具
安装:
sudo yum install dnsperf
类似以下命令:
dnsperf -c 2000 -T 10 -Q 2000 -s 127.0.0.1 -l 30 -p 53 -d /query.txt
输出类似:
+ dnsperf -c 2000 -T 10 -Q 2000 -s 127.0.0.1 -l 30 -p 53 -d /query.txt
DNS Performance Testing Tool
Version 2.11.0
[Status] Command line: dnsperf -c 2000 -T 10 -Q 2000 -s 127.0.0.1 -l 30 -p 53 -d /query.txt
[Status] Sending queries (to 127.0.0.1:53)
[Status] Started at: Sat May 13 16:40:49 2023
[Status] Stopping after 30.000000 seconds
[Status] Testing complete (time limit)
Statistics:
Queries sent: 60000
Queries completed: 60000 (100.00%)
Queries lost: 0 (0.00%)
Response codes: NOERROR 58957 (98.26%), SERVFAIL 1043 (1.74%)
Average packet size: request 27, response 58
Run time (s): 30.018641
Queries per second: 1998.758038
Average Latency (s): 0.007294 (min 0.000012, max 2.118428)
Latency StdDev (s): 0.087773
参数说明:
参数 | 说明 |
---|---|
c | 共多少个模拟客户端 |
T | 共多少根线程 |
Q | 每秒最多发送多少请求 |
s | 目标 dns 服务器地址 |
p | 目标 dns 服务器端口 |
l | 测试时长 |
d | 测试域名列表文件 |
测试域名列表文件说明
格式类似:
github.com A