From 7a090e1219a58ca595da0d0c5837a7d09fae46a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=B8=96=E7=95=8C?= Date: Fri, 21 Feb 2025 08:30:34 +0800 Subject: [PATCH] Fix predefined DNS server --- dns/transport/predefined.go | 1 + option/dns_record.go | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/dns/transport/predefined.go b/dns/transport/predefined.go index 3e52a595..dbb78e5c 100644 --- a/dns/transport/predefined.go +++ b/dns/transport/predefined.go @@ -74,6 +74,7 @@ func (t *PredefinedTransport) Exchange(ctx context.Context, message *mDNS.Msg) ( }() { copyAnswer := *response.answer copyAnswer.Id = message.Id + copyAnswer.Question = message.Question return ©Answer, nil } } diff --git a/option/dns_record.go b/option/dns_record.go index 190f5483..c76a76c6 100644 --- a/option/dns_record.go +++ b/option/dns_record.go @@ -95,8 +95,11 @@ func (o DNSResponseOptions) Build() ([]dns.Question, *dns.Msg, error) { } return questions, &dns.Msg{ MsgHdr: dns.MsgHdr{ - Response: true, - Rcode: o.RCode.Build(), + Response: true, + Rcode: o.RCode.Build(), + Authoritative: true, + RecursionDesired: true, + RecursionAvailable: true, }, Answer: common.Map(o.Answer, DNSRecordOptions.build), Ns: common.Map(o.Ns, DNSRecordOptions.build),