![]() |
|
Guide BillionMail DNS Setup: MX, SPF, DKIM, DMARC and PTR Explained - Printable Version +- AdminsForum (https://adminsforum.com) +-- Forum: Free & open-source control panels (https://adminsforum.com/Forum-free-open-source-control-panels) +--- Forum: aaPanel (https://adminsforum.com/Forum-aapanel) +---- Forum: aaPanel Guides & Tutorials (https://adminsforum.com/Forum-aapanel-guides-tutorials) +----- Forum: aaPanel BillionMail Guides (https://adminsforum.com/Forum-aapanel-billionmail-guides) +----- Thread: Guide BillionMail DNS Setup: MX, SPF, DKIM, DMARC and PTR Explained (/Thread-guide-billionmail-dns-setup-mx-spf-dkim-dmarc-and-ptr-explained) |
BillionMail DNS Setup: MX, SPF, DKIM, DMARC and PTR Explained - JAY - 10-21-2026 BillionMail DNS setup: MX, SPF, DKIM, DMARC and PTR explained DNS is what decides whether your BillionMail email lands in the inbox or in spam. BillionMail makes this easier than most mail servers: it tells you exactly which records to add, and checks them for you. This guide explains what each record does, in plain English, and how to add them (we use Cloudflare as the example). Our example names:
Step 1: Add the sending domain In BillionMail, open Domain > Add Domain.
At the top you'll see six checks: MX, A record, SPF, DKIM, DMARC and PTR. They're all red at first. Below them, BillionMail lists the records to add. What each record does A record: "where is the mail server?" Code: bm.example.com A 203.0.113.10MX record: "who receives mail for this domain?" Code: news.example.com MX 10 bm.example.comSPF: "which servers may send for this domain?" Code: news.example.com TXT "v=spf1 +a +mx +ip4:203.0.113.10 -all"DKIM: "is this message really from us, and unchanged?" Code: default._domainkey.news.example.com TXT "v=DKIM1; k=rsa; p=MIIBIjAN..."DMARC: "what to do when SPF and DKIM fail?" Code: _dmarc.news.example.com TXT "v=DMARC1;p=quarantine;rua=mailto:[email protected]"PTR (reverse DNS): "which name belongs to this IP?" Code: 203.0.113.10 PTR bm.example.comStep 2: Add the records in Cloudflare In Cloudflare, open your domain, go to DNS > Records and add each record. Or, quicker: paste them into a small text file in BIND format and use DNS > Records > Import and Export > Import. The one Cloudflare rule: every mail-related record must be DNS only (grey cloud), never proxied (orange). Cloudflare's proxy only handles web traffic, so a proxied mail server can't receive mail. If you import a file, leave "Proxy imported DNS records" unticked. Step 3: Verify Back in BillionMail, click Records set, verify DNS resolution. Within a few minutes MX, A, SPF, DKIM and DMARC should turn green. Prefer the terminal? These show what the world sees: Code: dig +short MX news.example.com
dig +short TXT news.example.com
dig +short TXT default._domainkey.news.example.com
dig +short TXT _dmarc.news.example.comStep 4: Ask your provider for the PTR record Look in your VPS provider's control panel for "Reverse DNS" or "rDNS". If there's no such setting, open a support ticket. Something like: Quote:Hello, please set the reverse DNS (PTR) record for 203.0.113.10 to bm.example.com. The A record already points to this IP. It's used as a mail server hostname. Thank you.Check it afterwards: Code: dig +short -x 203.0.113.10Common DNS problems
What's next Next: BillionMail SSL and hostname fix, so the dashboard gets a real certificate and your server introduces itself with the right name. More BillionMail how-to guides
Tested on BillionMail 4.9.0 with Cloudflare DNS, October 2026. Sources: BillionMail on GitHub ยท Cloudflare: import and export DNS records. |