summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--talpid-core/src/tunnel_state_machine/connected_state.rs14
1 files changed, 10 insertions, 4 deletions
diff --git a/talpid-core/src/tunnel_state_machine/connected_state.rs b/talpid-core/src/tunnel_state_machine/connected_state.rs
index 9e2d00f34d..f0bd874530 100644
--- a/talpid-core/src/tunnel_state_machine/connected_state.rs
+++ b/talpid-core/src/tunnel_state_machine/connected_state.rs
@@ -125,10 +125,16 @@ impl ConnectedState {
.map_err(BoxedError::new)?;
#[cfg(target_os = "linux")]
- shared_values
- .route_manager
- .route_exclusions_dns(&self.metadata.interface, &dns_ips)
- .map_err(BoxedError::new)?;
+ {
+ let mut dns_routes = vec![IpAddr::V4(self.metadata.ipv4_gateway)];
+ if let Some(gateway) = self.metadata.ipv6_gateway {
+ dns_routes.push(IpAddr::V6(gateway));
+ }
+ shared_values
+ .route_manager
+ .route_exclusions_dns(&self.metadata.interface, &dns_routes)
+ .map_err(BoxedError::new)?;
+ }
Ok(())
}