Skip to content

Mini-guide: Using Cloudflare registrar with external DNS. The gotchas.

Domain Names by walt22 24 replies 3.7K views
#1

So I finally got around to documenting this because I kept running into the same issues over and over (you know how it is, you set something up, it breaks six months later, you forget what you did) and Cloudflare registrar (which is nice for cost, I will give them that, no markup on renewals is genuinely refreshing in this industry where everyone wants to squeeze you) has these weird gaps where they support some DNS providers but not others and the documentation (ha!) is either wrong or missing the edge cases that actually matter in production (like when you have a domain that was transferred in and already has glue records that don't match their expected format and the UI just silently fails or gives you this generic error that means nothing) so anyway the main gotcha is that if you're using external DNS (not their own, which is fine, I prefer Contabo's anycast setup for my own reason

#2

Someone else's computer strikes again. Back in the day you had your ethernet, your T-1, your zone file. Simple. Now it's all "cloud" this and "ecosystem" that.

Transferred three domains to Cloudflare registrar last year. Two worked. One choked on glue mismatch. Their ethernet to your external DNS? Unsupported combination, documented nowhere. Had to pull the DS record via registry directly like it was 1998.

Grumble grumble. Works now. Saved me $18/year. Not sure it was worth the afternoon.

#3

For that money you get:

  • Cloudflare registrar: €8.03 .com renewal
  • Hetzner domains: €10.99 .com renewal
  • InterServer domains: $9.50 .com renewal

Savings on 10 domains: ~$20-30/year. Time spent debugging their external DNS quirks: 4+ hours.

Hardware comparison: for that money you get a 2TB enterprise HDD on auction. More useful.

zfs send | zfs receive. repeat.
#4

I make a server up with Cloudflare registrar + GreenCloudVPS DNS last month. Had problem with DS record too.

My fix: delete all DNSSEC at old provider first, wait 24 hour, then transfer. After transfer, add new DS at Cloudflare. Not in documentation.

Regards 😊

siesta first, deploy later
#5

Actually (and this is something I learned back in my day (which was 2019 (ancient history I know))) the real issue is their API for external DNS providers (specifically the v4 endpoint (documented here: cloudflare.com/api/v4 (not a real url obviously))) returns success on record creation but the record doesn't propagate to their edge for like 20 minutes (I timed it with SmokePing version 2.7.3) so you think it worked, you walk away, your site is down, you panic.

declan6 said:
Back in the day you had your ethernet, your T-1, your zone file. Simple.

Back in my day we just edited named.conf and rndc reloaded. Simpler. (well, not simpler, but more predictable (which is what matters when you're debugging at 2am)))

#6

1. Core gotchas from this thread so far:

  • Glue record mismatch on transfer in
  • DS record algorithm mismatch for DNSSEC
  • Silent UI failures with generic errors
  • Email routing auto-detection conflicts
  • API success vs. Edge propagation delay

2. Workarounds that worked:
  • Delete DNSSEC pre-transfer, wait 24h, re-add after
  • Manual DS upload instead of UI
  • Pull glue via registry directly

3. Savings reality check:
  • ~$2-3/domain/year
  • Time cost: 2-8 hours initial setup
  • Break-even: only at scale

4. Providers mentioned in thread:
  • Contabo (anycast DNS)
  • GreenCloudVPS (DNS)
  • Hetzner, InterServer (domain pricing comparison)

#7

Their docs updated last night external dns page now has a "known limitations" section with four of these cases. Someone was listening.

Coincidence or not, the fix helps

#8

The DS record dance. Been there. Registry direct is ridiculous in 2024

prix fixe infrastructure: €5/mo
#9

Link to the new known limitations page? Cant find it

Post a reply

You need an account to reply. Log in or register to join the conversation.

Post reply Preview Save draft