diff --git a/protocol/dns/handle.go b/protocol/dns/handle.go index 765e5051b..e13235099 100644 --- a/protocol/dns/handle.go +++ b/protocol/dns/handle.go @@ -46,7 +46,8 @@ func HandleStreamDNSRequest(ctx context.Context, router adapter.DNSRouter, conn conn.Close() return err } - responseBuffer := buf.NewPacket() + responseLength := response.Len() + responseBuffer := buf.NewSize(3 + responseLength) defer responseBuffer.Release() responseBuffer.Resize(2, 0) n, err := response.PackBuffer(responseBuffer.FreeBytes())