🔍

Compare DNS Resolvers

Compare DNS responses across 12 major public resolvers.

GET /v1/compare-resolvers
curl "https://dns.toolkitapi.io/v1/compare-resolvers?domain=github.com&type=A"
import httpx

resp = httpx.get(
    "https://dns.toolkitapi.io/v1/compare-resolvers?domain=github.com&type=A",
)
print(resp.json())
const resp = await fetch("https://dns.toolkitapi.io/v1/compare-resolvers?domain=github.com&type=A", {
});
const data = await resp.json();
console.log(data);
# See curl example
Response 200 OK
{
  "domain": "github.com",
  "record_type": "A",
  "resolvers_queried": 12,
  "consensus": true,
  "unique_answers": 1,
  "fastest_resolver": "Cloudflare (1.1.1.1)",
  "fastest_time_ms": 7.2,
  "results": [
    {"resolver_ip": "8.8.8.8", "provider": "Google", "name": "Google Public DNS", "records": ["140.82.121.3"], "ttl": 60, "response_time_ms": 14.3, "status": "ok", "error": null},
    {"resolver_ip": "1.1.1.1", "provider": "Cloudflare", "name": "Cloudflare DNS", "records": ["140.82.121.3"], "ttl": 60, "response_time_ms": 7.2, "status": "ok", "error": null}
  ],
  "query_time_ms": 21.5
}

Try It Live

Live Demo

Description

Compare DNS responses across 12 major public resolvers.

How to Use

1

1. Set the `domain` parameter to the domain you want to test.

2

2. Optionally set `type` for the record type (default: A).

3

3. Check `consensus` — if `false`, investigate which resolvers disagree and why.

About This Tool

Compare DNS Resolvers queries a domain across 12 major public DNS resolvers — Google, Cloudflare, Quad9, OpenDNS, Control D, and AdGuard — and compares their responses, TTLs, and latency. It detects DNS poisoning, censorship, or inconsistent responses across providers.

The `consensus` field tells you whether all resolvers agree on the same answer. If they don't, `unique_answers` shows how many different responses exist.

Why Use This Tool

Frequently Asked Questions

Which resolvers are compared?
Google (8.8.8.8, 8.8.4.4), Cloudflare (1.1.1.1, 1.0.0.1), Quad9 (9.9.9.9), OpenDNS (208.67.222.222, 208.67.220.220), Control D, and AdGuard — 12 resolvers total.
What does consensus: false mean?
It means at least one resolver returned a different answer. This could indicate DNS poisoning, geo-based load balancing, or resolver-level filtering.
What record types are supported?
A, AAAA, CNAME, MX, NS, and TXT.

Start using Compare DNS Resolvers now

Get your free API key and make your first request in under a minute.