diff --git a/dns.go b/dns.go index 3e687a49..86c883c2 100644 --- a/dns.go +++ b/dns.go @@ -52,7 +52,11 @@ func answer(q dns.Question) ([]dns.RR, int, error) { var rtype = q.Qtype r, ok := RR.Records[rtype][domain] if !ok { - rcode = dns.RcodeNameError + r, ok = RR.Records[dns.TypeCNAME][domain] + if !ok { + rcode = dns.RcodeNameError + } + } log.WithFields(log.Fields{"qtype": dns.TypeToString[rtype], "domain": domain, "rcode": dns.RcodeToString[rcode]}).Debug("Answering question for domain") return r, rcode, nil