← Tools

Email / PTR DNS audit

DNS-only checks for MX, SPF, DKIM, DMARC and PTR consistency. No mail is sent.

Results are diagnostic only. Not a deliverability or spam-score guarantee.

What each check means

We only read public DNS (and, for geofeed, a public CSV if you publish one). Green means we found the record. Amber means we did not — mail may still work, but filters and receivers often treat missing pieces as a weak signal. This is not a spam score.

MX records

Points the domain’s inbound mail to the right servers.

What it is
MX (Mail Exchanger) records list the hostnames that accept mail for @yourdomain. Priority numbers decide which server is tried first.
What it does
Without MX, other people’s mail servers do not know where to deliver messages to your addresses.
If present or missing
Present: inbound mail has a clear destination. Missing: you can still send from the domain in some setups, but receiving mail for that domain usually fails or relies on fragile fallbacks.
How to set it up
In your DNS panel add MX records from your mail host (Google Workspace, Microsoft 365, cPanel, or your VPS hostname). Example shape: 10 mail.example.com. Point that hostname to an A/AAAA that actually runs SMTP.

SPF (TXT)

Lists which servers may send mail as your domain.

What it is
SPF is a TXT record that starts with v=spf1. It names IPs, includes, or MX hosts allowed to send with your From domain.
What it does
Receivers check whether the connecting IP was authorized. That cuts down simple spoofing of your brand in the From line.
If present or missing
Present and correct: honest mail from listed servers passes the SPF check. Missing or wrong: more soft-fails / rejects, and DMARC cannot align well. Too many nested includes can also break the 10-DNS-lookup limit.
How to set it up
Create one TXT on the apex: v=spf1 … ~all or -all. Include every real sender (ESP, marketing tool, ticket system). Example: v=spf1 a mx ip4:203.0.113.10 include:_spf.google.com ~all. Keep a single SPF TXT — multiple records are invalid.

Example

v=spf1 a mx ip4:203.0.113.10 include:_spf.google.com ~all

DMARC

Policy for what receivers should do when SPF/DKIM fail.

What it is
DMARC lives as TXT on _dmarc.yourdomain and starts with v=DMARC1. It sets a policy (none / quarantine / reject) and optional report addresses (rua / ruf).
What it does
It ties SPF and DKIM together and tells receivers how strict to be. Aggregate reports show who is sending as you — useful before you tighten the policy.
If present or missing
Present: receivers have a clear rule and you can collect reports. Missing: SPF/DKIM failures are handled inconsistently; brand spoofing is easier. Start with p=none, then move to quarantine/reject once reports look clean.
How to set it up
Add TXT on _dmarc: v=DMARC1; p=none; rua=mailto:dmarc@yourdomain. When ready: p=quarantine or p=reject. Make sure SPF and DKIM already pass for your real mail streams.

Example

v=DMARC1; p=none; rua=mailto:dmarc@example.com

DKIM

Public key in DNS so receivers can verify your message signature.

What it is
DKIM adds a cryptographic signature to outbound messages. The matching public key sits at selector._domainkey.yourdomain as a TXT starting with v=DKIM1. Selectors are short names like x, default, google or s1.
What it does
Receivers verify the body and headers were not altered in transit and that the key belongs to your domain. Together with SPF it feeds DMARC alignment.
If present or missing
Present: signed mail can pass DKIM and help DMARC. Missing: unsigned mail looks weaker; some networks still accept it, many filter harder. Note: we only probe common selector names — a rare custom name may show amber even if DKIM exists.
How to set it up
In your mail panel (or OpenDKIM on a VPS) generate a key pair, pick a selector, publish the public key as TXT, and enable signing on the outbound stream. Example name: x._domainkey.example.com. Keep the private key only on the sending server.

PTR / reverse DNS

Reverse DNS for the mail IP, matching forward DNS.

What it is
PTR (reverse DNS) maps an IP address back to a hostname. We also check that this hostname resolves forward (A/AAAA) to the same IP — “forward-confirmed”.
What it does
Many inbound filters expect the connecting SMTP IP to have a sensible PTR. Dynamic or mismatched reverse names are a classic junk-mail signal.
If present or missing
Present and matching: stronger trust for outbound mail. Missing or mismatched: higher chance of greylisting, quarantine, or outright reject — even if SPF looks fine.
How to set it up
PTR is set by whoever owns the IP block (your VPS/hosting provider), not in the domain DNS panel. Ask for a PTR like mail.yourdomain.com, then create an A record for that name to the same IP. On EuroVDC Cloud VPS this is usually done from the panel or a support ticket.

Geofeed

Publishes where your IP prefixes are located (country / city).

What it is
A geofeed is a small CSV that maps IP prefixes to geography (RFC 8805). Example line: 91.210.41.0/24,BG,Sofia,Sofia. Discovery is via a DNS TXT geofeed:https://… and/or the file at https://yourdomain/geofeed.csv.
What it does
RIRs, security tools and some network operators read it to label your address space correctly. It is about IP geolocation accuracy — not about whether a single message is spam.
If present or missing
Present: systems can see e.g. Sofia / BG for your prefixes. Missing: mail still works; third-party geo databases may guess wrong (wrong country on maps, risk scores, or compliance filters). Optional for most small senders, useful if you announce or host public IP space.
How to set it up
1) Make a UTF-8 CSV (no header needed). Columns: prefix, country (ISO), region, city — e.g. 203.0.113.0/24,BG,Sofia,Sofia. 2) Put it on the web root as /geofeed.csv (HTTPS, publicly readable). 3) Optional but recommended: apex TXT geofeed:https://www.yourdomain/geofeed.csv so finders do not need to guess the path. Regenerate when prefixes change.

FAQ

Will this fix spam folder placement?
No guarantee. Correct DNS is necessary but not sufficient for inbox placement.
Can I audit an IP only?
Yes. Enter a public IPv4/IPv6 to check PTR and forward consistency.
Why is DKIM marked missing?
We probe common selectors including default, mail, s1, x and google. A rare custom name can still be missed.
What VPS helps with mail?
A cloud VPS with a static IP in Sofia lets you set PTR from the panel or with a support request, and the outbound address stays the same.