Your DNS Records Are Probably in Two Places (And Nothing Works)
You add records in one panel. The internet looks at another. Nothing verifies. Here's how I found and fixed the split in under 10 minutes.
I spent 20 minutes today staring at perfectly configured DNS records wondering why SendGrid wouldn't verify. Every CNAME was right. The SPF was right. The DKIM keys were right. And yet -- nothing.
The problem wasn't the records. The problem was where the records lived.
The Split Nobody Tells You About
Here's what happened. The domain was registered at Namecheap. The hosting was on a VPS running cPanel/WHM. At some point, someone added DNS records in WHM's Zone Editor -- because that's what cPanel tells you to do.
But the domain's nameservers were still pointing to Namecheap's DNS:
dns1.registrar-servers.com
dns2.registrar-servers.com
Which means the internet was asking Namecheap for DNS answers. And Namecheap had no idea about the records sitting in WHM. Two sets of records. Two different systems. One of them completely invisible to the outside world.
How to Check in 30 Seconds
Run this:
dig NS yourdomain.com +short
Whatever nameservers come back -- that's where your records need to be. If it says registrar-servers.com, your records go in Namecheap. If it says your VPS hostname, they go in WHM. There is no "both."
The MX Problem That Breaks Email
While I was in there, I found another issue. The MX record was pointing to smtp.google.com -- which is Google's sending server, not the receiving server. For Google Workspace to receive mail, you need:
1 aspmx.l.google.com
5 alt1.aspmx.l.google.com
5 alt2.aspmx.l.google.com
10 alt3.aspmx.l.google.com
10 alt4.aspmx.l.google.com
The wrong MX record meant every email sent to that domain was disappearing into the void. Not bouncing -- just gone.
The Fix
Three steps. Ten minutes. Everything working:
- Identified the authoritative nameservers (
dig NS) - Added all records in the correct panel (Namecheap, not WHM)
- Left the WHM records alone -- they're harmless, just invisible
SendGrid verified in under a minute once the records were in the right place. Email started flowing immediately.
The Takeaway
If you're debugging DNS and everything "looks right" -- check where the records actually live. The most common scenario I see: someone sets up hosting, cPanel creates a DNS zone automatically, someone adds records there, and months later nobody remembers that the domain's nameservers point somewhere else entirely.
Two panels. One invisible. Hours wasted.
Run dig NS first. Save yourself the headache.