diff --git a/providers/cloudns/cloudnsProvider.go b/providers/cloudns/cloudnsProvider.go index fbf1443d7..d971a2243 100644 --- a/providers/cloudns/cloudnsProvider.go +++ b/providers/cloudns/cloudnsProvider.go @@ -4,6 +4,7 @@ import ( "encoding/json" "fmt" "strconv" + "strings" "github.com/miekg/dns/dnsutil" @@ -160,6 +161,12 @@ func (c *cloudnsProvider) GetDomainCorrections(dc *models.DomainConfig) ([]*mode return nil, err } + // ClouDNS does not require the trailing period to be specified when updating an NS record where the A or AAAA record exists in the zone. + // So, modify it to remove the trailing period. + if req["record-type"] == "NS" && strings.HasSuffix(req["record"], domainID+".") { + req["record"] = strings.TrimSuffix(req["record"], ".") + } + corr := &models.Correction{ Msg: fmt.Sprintf("%s, ClouDNS ID: %s: ", m.String(), id), F: func() error {