diff --git a/route/route_dns.go b/route/route_dns.go index 62eff1c2..0e22cdfa 100644 --- a/route/route_dns.go +++ b/route/route_dns.go @@ -161,7 +161,14 @@ func (r *Router) Exchange(ctx context.Context, message *mDNS.Msg) (*mDNS.Msg, er case *R.RuleActionReject: switch action.Method { case C.RuleActionRejectMethodDefault: - return dns.FixedResponse(message.Id, message.Question[0], nil, 0), nil + return &mDNS.Msg{ + MsgHdr: mDNS.MsgHdr{ + Id: message.Id, + Rcode: mDNS.RcodeRefused, + Response: true, + }, + Question: []mDNS.Question{message.Question[0]}, + }, nil case C.RuleActionRejectMethodDrop: return nil, tun.ErrDrop }