log output upstream dns server reply code

nghttp2
fangdingjun 9 years ago
parent a86b993931
commit a72bd45423

@ -105,40 +105,49 @@ func handleRoot(w dns.ResponseWriter, r *dns.Msg) {
done = 0
for _, sv := range Servers {
if sv.match(domain) {
logger.Debug("%s query %s %s %s, forward to %s:%s\n",
res, err = sv.query(r)
if err != nil {
logger.Error("%s", err)
continue
}
logger.Debug("%s query %s %s %s, forward to %s:%s, %s\n",
w.RemoteAddr(),
domain,
dns.ClassToString[r.Question[0].Qclass],
dns.TypeToString[r.Question[0].Qtype],
sv.Proto, sv.Addr)
res, err = sv.query(r)
if err == nil {
if !in_blacklist(res) && res.Rcode != dns.RcodeServerFailure {
w.WriteMsg(res)
done = 1
break
}
} else {
logger.Error("%s", err)
sv.Proto, sv.Addr,
dns.RcodeToString[res.Rcode],
)
if res.Rcode != dns.RcodeServerFailure && !in_blacklist(res) {
w.WriteMsg(res)
done = 1
break
}
}
}
if done != 1 {
res, err = DefaultServer.query(r)
logger.Debug("%s query %s %s %s, use default server %s:%s\n",
if err != nil {
logger.Error("%s", err)
continue
}
logger.Debug("%s query %s %s %s, use default server %s:%s, %s\n",
w.RemoteAddr(),
domain,
dns.ClassToString[r.Question[0].Qclass],
dns.TypeToString[r.Question[0].Qtype],
DefaultServer.Proto, DefaultServer.Addr)
if err == nil {
if !in_blacklist(res) && res.Rcode != dns.RcodeServerFailure {
w.WriteMsg(res)
done = 1
}
} else {
logger.Error("%s", err)
DefaultServer.Proto, DefaultServer.Addr,
dns.RcodeToString[res.Rcode],
)
if res.Rcode != dns.RcodeServerFailure && !in_blacklist(res) {
w.WriteMsg(res)
done = 1
}
}

Loading…
Cancel
Save