
Registry Zone Health Report
| Parameter | Current | Suggested | Severity | Rationale |
|---|---|---|---|---|
| timeout_seconds | 5s |
8s |
low | Average scan duration is 45.8s, suggesting DNS responses are slow for this domain. Increasing timeout from 5s to 8s prevents premature resolution failures. RFC 8767 |
SPF (Sender Policy Framework) tells receiving mail servers which IP addresses are authorized to send email for your domain. Without SPF, any server can claim to send as your domain.
DMARC (Domain-based Message Authentication, Reporting & Conformance) tells receivers how to handle messages that fail SPF/DKIM checks. Without DMARC, failed authentication checks are ignored. Start with p=none and rua reporting to monitor, then escalate to p=quarantine and p=reject.
Publish an MTA-STS DNS record and host a policy file at https://mta-sts.co.uk/.well-known/mta-sts.txt. This tells senders to require TLS when delivering mail to your domain.
DKIM selectors were not discoverable via common selector names. This does not confirm DKIM is absent — your provider may use custom or rotating selectors that cannot be enumerated through DNS (RFC 6376 §3.6.2.1). Check your email provider's DKIM settings to confirm signing is enabled.
Publish CAA DNS records to restrict which Certificate Authorities can issue TLS certificates for your domain. Specify your preferred CA (e.g., letsencrypt.org, digicert.com). CAA is advisory — CAs must check it before issuing, but absence means any CA can issue.
TLS-RPT (TLS Reporting) sends you reports about TLS connection failures when other servers try to deliver mail to your domain. Helps diagnose MTA-STS and STARTTLS issues.
DNSSEC is already enabled — you can strengthen email transport security by publishing DANE TLSA records. DANE binds your mail server's TLS certificate to DNS, preventing man-in-the-middle attacks on SMTP connections.
Zone Signing & DNSSEC Methodology Is this zone cryptographically signed?
DNSSEC RFC 4033 §2 Verified Signed RSA/SHA-256
DNSSEC fully configured and validated — AD (Authenticated Data) flag set by resolver 8.8.8.8 confirming cryptographic chain of trust from root to zone (RFC 4035 §3.2.3)
NS Delegation Verified Match
NS delegation verified - 8 nameserver(s) match parent zone
CDS / CDNSKEY (DNSSEC Automation) RFC 7344 Success CDS CDNSKEY
Full RFC 8078 automated DNSSEC key rollover signaling detected (CDS + CDNSKEY)
| Key Tag | Algorithm | Digest Type | Digest |
|---|---|---|---|
11810 |
RSASHA256 | 2 | |
| Flags | Protocol | Algorithm | Public Key |
|---|---|---|---|
257 |
3 | RSASHA256 | |
Subdomain Discovery Not Applicable
example.co.uk.
DNS Evidence Diff Side-by-side comparison
dns3.nic.uk.
nsa.nic.uk.
nsb.nic.uk.
nsb.nic.uk.
dns1.nic.uk.
nsc.nic.uk.
dns2.nic.uk.
nsd.nic.uk.
nsa.nic.uk.
dns1.nic.uk.
nsd.nic.uk.
dns2.nic.uk.
dns4.nic.uk.
dns3.nic.uk.
nsc.nic.uk.
dns4.nic.uk.
dns1.nic.uk. hostmaster.nominet.org.uk. 1771046804 900 300 2419200 10800
dns1.nic.uk. hostmaster.nominet.org.uk. 1771047975 900 300 2419200 10800
DNS History Timeline BETA
When was a record added, removed, or changed — and could that change be the problem?
DATA FRESHNESS & METHODOLOGY
All security-critical records (SPF, DMARC, DKIM, DANE/TLSA, DNSSEC, MTA-STS, TLS-RPT, BIMI, CAA) are queried live from authoritative nameservers and cross-referenced against 5 independent public DNS resolvers (Cloudflare, Google, Quad9, OpenDNS, DNS4EU) at the time of each analysis. No security verdict uses cached data.
Registrar data (RDAP) is cached for up to 24 hours because domain ownership and registration details change infrequently. Certificate Transparency logs (subdomain discovery via RFC 6962) are cached for 1 hour because CT entries are append-only historical records. Sections using cached data are marked with a CACHED badge; live queries show LIVE.
Intelligence Sources
This analysis used 4 DNS resolvers (consensus), reverse DNS (PTR), Team Cymru (ASN attribution), IANA RDAP (registrar), SecurityTrails (DNS history), crt.sh (CT logs), and SMTP probing (transport). All using open-standard protocols.
Verify Report Integrity SHA-3-512 Has this report been altered since generation? Verify below
This cryptographic hash seals the analysis data, domain, timestamp, and tool version into a tamper-evident fingerprint. Any modification to the report data will produce a different hash. This is distinct from the posture hash (used for drift detection) — the integrity hash uniquely identifies this specific report instance.
ae14539c5800f8b329ca1c90d0c3b48a35927a828c45b3dbd4d4af9b11776c21b6a9730a03f1b3eb060e8d2020350d70687a3b94242163f633bd5466d315b33a
Download the intelligence dump and verify its integrity, like you would a Kali ISO or any critical artifact. The SHA-3-512 checksum covers every byte of the download — deterministic serialization ensures identical hashes across downloads.
After downloading, verify with any of these commands:
Tip: cd ~/Downloads first (or wherever you saved the files).
cat dns-intelligence-co.uk.json.sha3 && echo '---' && openssl dgst -sha3-512 dns-intelligence-co.uk.json
python3 -c "import hashlib; print(hashlib.sha3_512(open('dns-intelligence-co.uk.json','rb').read()).hexdigest())"
sha3sum -a 512 dns-intelligence-co.uk.json
.sha3 file or the checksum API at /api/analysis/769/checksum. Hash algorithm: SHA-3-512 (Keccak, NIST FIPS 202).
Every finding in this report is backed by DNS queries you can run yourself. These vetted one-liners reproduce the exact checks used to build this report for co.uk. Our analysis adds multi-resolver consensus, RFC-based evaluation, and cross-referencing — but the underlying data is always independently verifiable. We are intelligence analysts, not gatekeepers.
DNS Records
dig +noall +answer co.uk A
dig +noall +answer co.uk AAAA
dig +noall +answer co.uk MX
dig +noall +answer co.uk NS
dig +noall +answer co.uk TXT
Email Authentication
dig +short co.uk TXT | grep -i spf
dig +short _dmarc.co.uk TXT
dig +short default._domainkey.co.uk TXT
dig +short google._domainkey.co.uk TXT
dig +short selector1._domainkey.co.uk TXT
dig +short selector2._domainkey.co.uk TXT
Domain Security
dig +dnssec +noall +answer co.uk DNSKEY
dig +noall +answer co.uk DS
dig +dnssec +cd co.uk A @1.1.1.1
Transport Security
dig +noall +answer _25._tcp.MX_HOST TLSA
dig +short _mta-sts.co.uk TXT
curl -sL https://mta-sts.co.uk/.well-known/mta-sts.txt
dig +short _smtp._tls.co.uk TXT
Brand & Trust
dig +short default._bimi.co.uk TXT
dig +noall +answer co.uk CAA
DNS Records
dig +noall +answer co.uk HTTPS
Domain Security
dig +noall +answer co.uk CDS
Infrastructure Intelligence
curl -sL 'https://rdap.org/domain/co.uk' | python3 -m json.tool | head -50
curl -s 'https://crt.sh/?q=%25.co.uk&output=json' | python3 -c "import json,sys; [print(e['name_value']) for e in json.load(sys.stdin)]" | sort -u | head -20
curl -sL https://co.uk/.well-known/security.txt | head -20
AI Surface
curl -sI https://co.uk/llms.txt | head -5
curl -s https://co.uk/robots.txt | grep -i -E 'GPTBot|ChatGPT|Claude|Anthropic|Google-Extended|CCBot|PerplexityBot'
dig, openssl, and curl — standard tools available on macOS, Linux, and WSL. Results may vary slightly due to DNS propagation timing and resolver caching.
Appendix: Verification Commands
DNS Records
dig +noall +answer co.uk A
dig +noall +answer co.uk AAAA
dig +noall +answer co.uk MX
dig +noall +answer co.uk NS
dig +noall +answer co.uk TXT
Email Authentication
dig +short co.uk TXT | grep -i spf
dig +short _dmarc.co.uk TXT
dig +short default._domainkey.co.uk TXT
dig +short google._domainkey.co.uk TXT
dig +short selector1._domainkey.co.uk TXT
dig +short selector2._domainkey.co.uk TXT
Domain Security
dig +dnssec +noall +answer co.uk DNSKEY
dig +noall +answer co.uk DS
dig +dnssec +cd co.uk A @1.1.1.1
Transport Security
dig +noall +answer _25._tcp.MX_HOST TLSA
dig +short _mta-sts.co.uk TXT
curl -sL https://mta-sts.co.uk/.well-known/mta-sts.txt
dig +short _smtp._tls.co.uk TXT
Brand & Trust
dig +short default._bimi.co.uk TXT
dig +noall +answer co.uk CAA
DNS Records
dig +noall +answer co.uk HTTPS
Domain Security
dig +noall +answer co.uk CDS
Infrastructure Intelligence
curl -sL 'https://rdap.org/domain/co.uk' | python3 -m json.tool | head -50
curl -s 'https://crt.sh/?q=%25.co.uk&output=json' | python3 -c "import json,sys; [print(e['name_value']) for e in json.load(sys.stdin)]" | sort -u | head -20
curl -sL https://co.uk/.well-known/security.txt | head -20
AI Surface
curl -sI https://co.uk/llms.txt | head -5
curl -s https://co.uk/robots.txt | grep -i -E 'GPTBot|ChatGPT|Claude|Anthropic|Google-Extended|CCBot|PerplexityBot'
