summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--talpid-core/src/resolver.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/talpid-core/src/resolver.rs b/talpid-core/src/resolver.rs
index 9fcada1a0b..0d07888877 100644
--- a/talpid-core/src/resolver.rs
+++ b/talpid-core/src/resolver.rs
@@ -1,3 +1,9 @@
+//! This module implements a forwarding DNS resolver with two states:
+//! * In the `Blocked` state, most queries receive an empty response, but certain captive portal
+//! domains receive a spoofed answer. This fools the OS into thinking that it has connectivity.
+//! * In the `Forwarding` state, queries are forwarded to a set of configured DNS servers. This
+//! lets us use the routing table to determine where to send them, instead of them being forced
+//! out on the primary interface (in some cases).
use std::{
io,
net::{IpAddr, Ipv4Addr, SocketAddr},