CALIDNS(1) PowerDNS Authoritative Server CALIDNS(1)

# [NAME](#NAME)

calidns - A DNS recursor testing tool

# [SYNOPSIS](#SYNOPSIS)

**calidns** \[*OPTIONS*] *QUERY\_FILE* *DESTINATION* *INITIAL\_QPS* *HITRATE*

# [DESCRIPTION](#DESCRIPTION)

**calidns** reads queries from *QUERY\_FILE* and sends them as a recursive query to *DESTINATION* (an IPv4 or IPv6 address, optionally with a port number), starting at INITIAL\_QPS queries per second and aims to have a cache hitrate of *HITRATE* percent.

It will then try to determine the maximum amount of queries per second the recursor can handle with the aforementioned *HITRATE*.

# [QUERY\_FILE FORMAT](#QUERY_FILE_FORMAT)

The format of the *QUERY\_FILE* is very simple, it should contain "QNAME QTYPE" tuples, one per line. For example:

```
powerdns.com A
powerdns.com AAAA
google.com A
```

This is similar to Alexa top 1 million list.

# [OPTIONS](#OPTIONS)

[**--ecs &lt;SUBNET&gt;**](#ecs)

Add EDNS Client Subnet option to outgoing queries using random addresses from the specified *SUBNET* range (IPv4 only).

**--ecs-from-file**

Read IP or subnet values from the query file and add them as EDNS Client Subnet option to outgoing queries.

[**--increment &lt;NUM&gt;**](#increment)

On every subsequent run, multiply the number of queries per second by *NUM*. By default, this is 1.1.

[**--maximum-qps &lt;NUM&gt;**](#maximum)

Stop incrementing once this rate has been reached, to provide a stable load.

[**--minimum-success-rate &lt;NUM&gt;**](#minimum)

Stop the test as soon as the success rate drops below this value, in percent.

[**--plot-file &lt;FILE&gt;**](#plot)

Write results to the specified file.

[**--quiet**](#quiet)

Whether to run quietly, outputting only the maximum QPS reached. This option is mostly useful when used with **--minimum-success-rate**.

[**--want-recursion**](#want)

Set this flag to send queries with the Recursion Desired flag set.

# [AUTHOR](#AUTHOR)

PowerDNS.COM BV

# [COPYRIGHT](#COPYRIGHT)

PowerDNS.COM BV

October 23, 2026

---

Document: calidns(1) from pdns-5.3 5.3.13-r1 (Chainguard OS)
Source: https://github.com/PowerDNS/pdns
