Description
As of now, k8gb constructs NS name for delegated zone from the following chunks:
gslb-ns-<FlatDNSZone>-<ClusterGeoTag>.<EdgeDNSZone>
, where
FlatDNSZone
is DNSZone
with '.'
s replaced by '-'
s, e.g. cloud.example.com -> cloud-example-com
so for
DNSZone = cloud.example.com
ClusterGeoTag = eu
EdgeDNSZone = example.com
resulting NS server name looks like:
gslb-ns-cloud-example-com-eu.example.com
max length of DNS label is 63 characters
which leaves max allowed length for <ConvertedDNSZone>-<ClusterGeoTag>
at 55 characters.
While it might be enough for relatively short DNSZones, like cloud.example.com
,
for longer DNSZones it might quickly exceed the 55 characters limit and lead to delegated zone request error from EdgeDNS:
k8gb-77bf5b98f4-lwxm8 k8gb 2021/04/22 10:06:49 WAPI request error: 400('400 Bad Request')
k8gb-77bf5b98f4-lwxm8 k8gb Contents:
k8gb-77bf5b98f4-lwxm8 k8gb { "Error": "AdmConDataError: A domain label is longer than 63 characters",
k8gb-77bf5b98f4-lwxm8 k8gb "code": "Client.Ibap.Data",
k8gb-77bf5b98f4-lwxm8 k8gb "text": "A domain label is longer than 63 characters"
k8gb-77bf5b98f4-lwxm8 k8gb }
Logic to construct NS should be improved to give max possible room for DNS zone, while keep NS names unique
k8gb documentation should reflect the limits for DNSZone+ClusterGeoTag combination
Activity