What is a DNS Check?
A DNS check queries a domain from Xitoring's global probing nodes and validates that the response matches what you expect. DNS issues are easy to overlook — a domain can resolve correctly from your office but fail from another continent, or a stale record can break email delivery while the website looks fine.
Use DNS checks for:
- Authoritative domains you own
- Critical subdomains that point to load balancers or CDNs
- MX records that drive email delivery
- TXT records used for SPF, DKIM, DMARC, and domain verification
What Gets Monitored
- Resolution success — domain returns a valid response
- Record value — answer matches the expected IP, hostname, or text
- Record type — A, AAAA, CNAME, MX, TXT, NS, SOA, etc.
- Response time — query latency from each probing node
- Resolver consistency — propagation across regions and recursive resolvers
Prerequisites
- The domain or subdomain you want to monitor (e.g.,
example.com,mail.example.com) - Knowledge of the expected record value so the check can assert correctness
- Optionally, a specific DNS server to query (e.g.,
8.8.8.8)
How to Set Up a DNS Check
Step 1: Create the Check
- Log in to your Xitoring Dashboard
- Go to Uptime → Add Check
- Select DNS as the check type
Step 2: Configure the Query
- Enter the domain name (e.g.,
example.com) - Select the record type (A, AAAA, CNAME, MX, TXT, NS, SOA)
- Enter the expected value (e.g.,
192.0.2.10for an A record) - Optionally specify a DNS server to query — leave blank to use Xitoring's default resolvers
- Set the check interval (30 seconds to 15 minutes)
- Set the timeout (default: 30 seconds)
Step 3: Choose Probing Nodes
Pick at least 3 nodes spread across regions. DNS propagation issues often only show up from specific geographies.
Step 4: Assign Notifications
Under Triggers, attach a notification role.
Step 5: Save and Verify
Save the check. Xitoring queries the record immediately and reports back.
Setting Up Triggers
Common alerting rules:
- Resolution failure — domain returns NXDOMAIN or SERVFAIL
- Value mismatch — record exists but the value differs from expected (e.g., wrong IP after a botched migration)
- Slow resolution — query time exceeds your threshold
- Inconsistent answers — different probing nodes return different values (split-brain DNS)
Tips
- Monitor your MX, SPF, and DKIM TXT records — broken email DNS is silent until customers stop receiving messages
- Pin specific record values rather than just checking that the record exists — a typo'd CNAME pointing nowhere will still "resolve"
- Use multiple probing nodes to detect propagation issues — a record can update in one region and lag in another
- Check
NSrecords to confirm authority hasn't been hijacked or accidentally moved - For CDN-fronted domains, expect the answer to vary by region — match on the expected pool of values rather than a single IP