Benchmarking DNS Resolvers: Pi-hole v6 vs Pi-hole v5 — with dnsmasq as a baseline

Hey everyone,

I recently benchmarked two versions of Pi-hole under heavy load using a custom multithreaded Python DNS tester. I also included dnsmasq (standalone) as a baseline to see how raw DNS performance compares without filtering.

Tested:

  • Pi-hole (FTL v6) — running on a Raspberry Pi 5 (8 GB RAM)
  • Pi-hole (FTL v5) — running on a Raspberry Pi 3B
  • Dnsmasq (forwarding to piholes) — stripped-down DNS service with no filtering

All resolvers were tested in the same local network environment under identical conditions.


:bar_chart: Results Summary

Resolver Avg Latency Spikes Observed Notes
dnsmasq (forwarding) :small_blue_diamond: ~5 ms Minor blips (~500 ms) Pure baseline, extremely fast
Pi-hole (FTL v5) :small_blue_diamond: ~5–10 ms Rare spikes (~400 ms) Solid performance on a Pi 3B, v5
Pi-hole (FTL v6) :warning: ~25 ms Frequent (~2000 ms) Tested on Pi 5 8 GB, but heavier engine caused jitter

:chart_increasing: Graph Comparison

Each point shows a single DNS query’s response time, plotted chronologically.


Pihole v5

Pihole v6

Dnsmasq

:test_tube: Test Setup

  • 149 threads × 150 queries = 22,350 DNS lookups per resolver
  • Domains: Google, OpenAI, YouTube, Apple, GitHub, etc.
  • Tool: Custom Python script with dnspython and timing
  • Same LAN, same test machine for all runs; only Pi-hole nodes varied but all wired

Cheers

1 Like

There is no Pi-hole v7.

Why are you calling Pi-hole v5 as "Pi-hole 7"?

I call all the data Pi-hole 7 because of its IP address on my network. eg 192.168.1.7

No one else knows the 7 is related to the machine IP and your post doesn't explain that.

Please change the topic title to avoid users confusion. I suggest:

"Benchmarking DNS Resolvers: Pi-hole v6 vs Pi-hole v5 — with dnsmasq as a baseline"

1 Like