What happened?
External DNS normalizes targets by stripping the trailing dot (endpoint.NewEndpoint), so a target such as website.stackit.com. arrives at the webhook as website.stackit.com.
When trying to add the record website.not-stackit.com with a CNAME to website.stackit.com, STACKIT interprets a target (as sent through the webhook) without a trailing dot as relative to the zone, so the final record becomes: website.stackit.com.not-stackit.com. if DNS zone is not-stackit.com.
Other external-dns providers (Google) avoid this by ensuring hostname-valued targets end in a trailing dot. Relevant now that upstream external-dns explicitly accepts CNAME targets with a trailing dot: external-dns#6218.
How can we reproduce this?
Create an ingress with the following annotations:
external-dns.alpha.kubernetes.io/hostname: website.non-stackit.com
external-dns.alpha.kubernetes.io/target: website.stackit.com
This will create a CNAME for website.non-stackit.com with targetwebsite.stackit.com.non-stackit.com (on a DNS zone for non-stackit.com)
Expect it to be target website.stackit.com
Search
Code of Conduct
Additional context
No response
What happened?
External DNS normalizes targets by stripping the trailing dot (endpoint.NewEndpoint), so a target such as
website.stackit.com.arrives at the webhook aswebsite.stackit.com.When trying to add the record
website.not-stackit.comwith a CNAME towebsite.stackit.com, STACKIT interprets a target (as sent through the webhook) without a trailing dot as relative to the zone, so the final record becomes:website.stackit.com.not-stackit.com.if DNS zone isnot-stackit.com.Other external-dns providers (Google) avoid this by ensuring hostname-valued targets end in a trailing dot. Relevant now that upstream external-dns explicitly accepts CNAME targets with a trailing dot: external-dns#6218.
How can we reproduce this?
Create an ingress with the following annotations:
This will create a CNAME for
website.non-stackit.comwith targetwebsite.stackit.com.non-stackit.com(on a DNS zone fornon-stackit.com)Expect it to be target
website.stackit.comSearch
Code of Conduct
Additional context
No response