From c29915a4697a10aa8c48de4f08d36496f59ab402 Mon Sep 17 00:00:00 2001 From: "Jason A. Donenfeld" Date: Fri, 30 Apr 2021 15:33:13 +0200 Subject: Respect 0x20 bit Some DNS recursors expect to receive answers with the same casing as queries. Signed-off-by: Jason A. Donenfeld --- main.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/main.go b/main.go index ff25dbc..66ac5b9 100644 --- a/main.go +++ b/main.go @@ -182,13 +182,13 @@ func handleDns(w dns.ResponseWriter, r *dns.Msg) { if q.Qtype == dns.TypeA && ip.Is4() { v4 := ip.As4() m.Answer = append(m.Answer, &dns.A{ - Hdr: dns.RR_Header{Name: domain, Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 30}, + Hdr: dns.RR_Header{Name: q.Name, Rrtype: dns.TypeA, Class: dns.ClassINET, Ttl: 30}, A: v4[:], }) } else if q.Qtype == dns.TypeAAAA && ip.Is6() { v6 := ip.As16() m.Answer = append(m.Answer, &dns.AAAA{ - Hdr: dns.RR_Header{Name: domain, Rrtype: dns.TypeAAAA, Class: dns.ClassINET, Ttl: 30}, + Hdr: dns.RR_Header{Name: q.Name, Rrtype: dns.TypeAAAA, Class: dns.ClassINET, Ttl: 30}, AAAA: v6[:], }) } -- cgit v1.2.3-59-g8ed1b