diff --git a/rust/connlib/tunnel/src/dns.rs b/rust/connlib/tunnel/src/dns.rs index 81a99f096..23fed5e1a 100644 --- a/rust/connlib/tunnel/src/dns.rs +++ b/rust/connlib/tunnel/src/dns.rs @@ -305,6 +305,7 @@ pub(crate) fn build_response_from_resolve_result( let mut message = original_pkt.unwrap_as_dns(); message.set_message_type(MessageType::Response); + message.set_recursion_available(true); let response = match response.map_err(|err| err.kind().clone()) { Ok(response) => message.add_answers(response.records().to_vec()), diff --git a/rust/connlib/tunnel/src/io.rs b/rust/connlib/tunnel/src/io.rs index 68e3f8c48..ec14f7892 100644 --- a/rust/connlib/tunnel/src/io.rs +++ b/rust/connlib/tunnel/src/io.rs @@ -273,6 +273,8 @@ fn create_resolvers( let mut resolver_opts = ResolverOpts::default(); resolver_opts.edns0 = true; + resolver_opts.cache_size = 0; + resolver_opts.attempts = 1; ( sentinel,