Toolshed

A growing library of browser tools and deep technical guides for IT professionals.

← All guides

DNS Zone Validator

Paste a zone file and this parses and validates it locally — SOA correctness (including the serial number), record-specific syntax for NS/MX/A/AAAA/TXT/ CNAME/CAA/SRV/PTR, duplicate records, TTL inconsistencies within an RRset, invalid hostnames, and directives this validator doesn't support. This never performs a live DNS query — it only checks the text you paste against the zone-file grammar and RFC requirements. Runs entirely in your browser.

Parsed records

What's checked

Supported record types: SOA, NS, MX, A, AAAA, TXT, CNAME, CAA, SRV, PTR — each validated against its real RDATA format (an MX record needs a numeric priority and a hostname; an AAAA record's address is checked as real IPv6, including :: zero-compression; a CAA record's flags must be 0–255). Other record types are parsed and listed but not deeply validated. Checks: missing SOA, invalid serial number (must be a valid unsigned 32-bit integer), duplicate records (identical name+type+data), TTL inconsistency within an RRset (RFC 2181 expects every record in the same name+type group to share a TTL), invalid hostnames (label length, allowed characters), and directives this validator doesn't implement ($INCLUDE, $GENERATE — flagged honestly rather than silently ignored or faked).