CNAME error message misleading

I tried to do something which I did not know is impossible at all (point a domain root to a CNAME entry). As I have many domains my idea was to maintain a single entry where I could switch the IP addresses easily and all domains with just a CNAME instead of A and AAAA should just take over the IPs from the single new entry.

Now I know that this is not possible. But during the path deSEC was providing me some misleading information. Maybe this could be changed. :wink:

What I did:

  • I had A, AAAA, MX, TXT and a NS record in place for domain.com which should become my central “management” place for the A and AAAA records
  • I created a subdomain entry (e.g. web1.domain.com) with the relevant A and AAAA record. This was the entry I wanted to use as a reference in the CNAME entries for all other domains
  • Then I replaced the A and AAAA records for domain.com with a CNAME pointing to web1.domain.com and got this error message: RRset with conflicting type present at same subname: database (MX, NS, TXT). (No other RRsets are allowed alongside CNAME.)
  • So I started to remove MX, NS and TXT records and added them to my new subdomain entry instead.
  • With no entries left on the root level for domain.com I tried to add the CNAME again getting this error message: CNAME RRset cannot have empty subname.

Conclusion:

As it is not possible to have a CNAME with an empty subname (that was what I wanted to achieve on the domain root level not knowing it’s not possible) the last error message should be displayed always someone tries to add a CNAME with an empty subname. The other error messages checking against “competing” types should be skipped as they are misleading.

I hope I got this right – if not please tell me :wink:

PS: 100% human, 0% “AI”

1 Like

Hi @SWEETGOOD,

Indeed - returning the most relevant error message right from the start would be more helpful. Would you mind filing an issue on GitHub? Thanks!

Stay secure,
Peter

2 Likes

Sure, here you go: [FRONTEND] Always show most relevant error message for CNAME entry · Issue #1246 · desec-io/desec-stack · GitHub

Just in case someone has the same idea like I had:
The simplest solution is to use the deSEC API to get/set the A and AAAA records in bulk :wink: