Skip to main content
A DNS monitor resolves a domain and compares the answer with the values you expect. It catches DNS misconfiguration, failed propagation and unexpected record changes (including hijacking). It does not check whether the resolved addresses are reachable; pair it with an HTTP or Port monitor for that.

When to use it

  • Confirm a domain resolves to the right IP addresses
  • Verify a DNS change has propagated
  • Watch MX, TXT or NS records for unexpected changes
  • Detect DNS server outages

Create a DNS monitor

1

Enter the domain

Enter the Domain Name, a public domain such as example.com. Private and internal names, IP addresses in private ranges, and UptimeIO’s own domains are not accepted.
2

Add record checks

In DNS Configuration, click Add Record. Each row has a Record Type, Expected Values and a Match Mode. UptimeIO looks up the current values and fills them in; click the refresh button on a row to fetch them again, or edit them yourself.
3

Optionally choose a DNS server

Under Advanced Options, leave DNS Server empty to use the default resolver, or enter a resolver IP address such as 8.8.8.8.
4

Set interval and locations

In How often we check, choose the Check Interval. The shortest interval depends on your plan: 5 minutes on Free, 1 minute on Pro and Scale. DNS answers change slowly, so every 5 minutes is usually enough. Pro and Scale can choose probe locations; Free uses automatic selection.

Settings

Match modes

The monitor succeeds only when all record rows pass. A row also fails when no records of that type exist.
For MX records the comparison uses the mail server hostname only (for example mail.example.com), not the priority.

Example

  • Domain Name: example.com
  • A Record, Expected Values 93.184.216.34, Match All
  • MX Record, Expected Values mail.example.com, Match Any
  • DNS Server: 8.8.8.8

Record types

DNS server choice

Incidents

When a record check fails, UptimeIO records a DNS failure (for example no records found, or a value mismatch). An incident opens only after several probe locations confirm the failure (see Understanding incidents). Connect an email, Slack or webhook channel so unexpected record changes reach you quickly.

Best practices

  • Monitor the records that matter: the apex A/AAAA, www, MX and any critical subdomains.
  • If you use GeoDNS, answers differ by location; use Match Any rather than one fixed address.
  • Before a planned change, lower the record’s TTL a day ahead so the change propagates faster.

Troubleshooting

The domain or record type does not exist. Check registration and nameserver configuration with dig example.com.
The records changed, a CDN or load balancer returns different addresses, or (if unauthorized) the domain may have been tampered with. Query your authoritative nameserver directly: dig @ns1.example.com example.com.
DNS Server must be an IP address, not a hostname.
Try a different resolver in DNS Server.
Propagation may be in progress, or the domain uses GeoDNS.

Next steps

HTTP Monitoring

Monitor web services and APIs

Notifications

Configure alerts for DNS monitors