Pass query parameters through local response
Receive the query parameters through the request you've added as parameter to the controller and pass them via the URL of the redirect.
Caching is a bit tricky because generating an absolute local URL bubbles up cacheable metadata which you need to collect by Url::toString(TRUE):
public function view(Request $request) {

  $url = Url::fromRoute(
    '&lt;front&gt;', 
    [], 
    [
      'query' =&gt; $request-&gt;query-&gt;all(),
      'absolute' =&gt; TRUE,
    ]
  )-&gt;toString(TRUE);

  $redirect = new LocalRedirectResponse($url-&gt;getGeneratedUrl());
  $redirect-&gt;addCacheableDependency($url);
  $redirect-&gt;getCacheableMetadata()-&gt;addCacheContexts(['url.query_args']);

  return $redirect;
}