You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/docs/cloudflare-one/connections/connect-devices/warp/configure-warp/route-traffic/index.mdx
+42-24Lines changed: 42 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,6 +5,8 @@ sidebar:
5
5
order: 6
6
6
---
7
7
8
+
import { GlossaryTooltip } from"~/components";
9
+
8
10
When the WARP client is deployed on a device, Cloudflare will process all DNS queries and network traffic by default. However, under certain circumstances, you may need to exclude specific DNS queries or network traffic from WARP. For example, you may need to resolve an internal hostname with a private DNS resolver instead of Cloudflare's [public DNS resolver](/1.1.1.1/).
9
11
10
12
Cloudflare recommends Enterprise users configure [Gateway resolver policies](/cloudflare-one/policies/gateway/resolver-policies/) to resolve traffic with custom resolvers. WARP will send private DNS queries to Gateway, then Gateway will send the queries to custom resolvers based on matching policies.
@@ -27,31 +29,47 @@ When you use the WARP client together with `cloudflared` Tunnels or third-party
27
29
28
30
```mermaid
29
31
flowchart TD
30
-
D["WARP client proxies DNS traffic to specified fallback server"] -- Resolver IP included in Tunnel per Split Tunnel configuration --> E["Query sent via WARP Tunnel to be resolved"]
31
-
D -- Resolver IP not included in Tunnel per Split Tunnel configuration --> F["Query sent to resolver IP outside WARP Tunnel"]
32
-
E -- Blocked by Gateway --> G["Traffic blocked by Cloudflare"]
33
-
E -- Allowed by Gateway --> H["Evaluated by Cloudflare Tunnel routes"]
34
-
H -- Tunnel routes do not include resolver IP --> I["Gateway proxies query to resolver IP via normal WARP egress route"]
35
-
H -- Tunnel routes include resolver IP --> J["Cloudflare Tunnel advertises route that includes Resolver IP"]
36
-
J --> L["Private resolver returns IP address to WARP client"]
37
-
n1["Local Domain Fallback"] -- Matches domain --> C["WARP client resolves query according to Gateway policies"]
38
-
n1 -- Does not match domain --> D
39
-
A["WARP user requests resource"] --> n2["Gateway resolver policies"]
40
-
n2 -- Does not match traffic --> n1
41
-
n2 -- Matches traffic --> C
42
-
43
-
D@{ shape: rect}
44
-
E@{ shape: hex}
45
-
F@{ shape: terminal}
46
-
G@{ shape: terminal}
47
-
H@{ shape: hex}
48
-
I@{ shape: terminal}
49
-
L@{ shape: terminal}
50
-
n1@{ shape: hex}
51
-
C@{ shape: terminal}
52
-
A@{ shape: in-out}
53
-
n2@{ shape: proc}
32
+
A["WARP user requests resource"] --> B["WARP client proxies all DNS traffic"]
33
+
B -- WARP checks if domain is listed in Local Domain Fallback policies --> C["Local Domain Fallback"]
34
+
35
+
%% Left branch (LDF exists)
36
+
C -- Domain exists in Local Domain Fallback policies --> ST["Split Tunnel processing"]
37
+
38
+
ST -- Resolver IP included in WARP Tunnel per Split Tunnel configuration --> QW["Query sent via WARP Tunnel to be resolved"]
39
+
ST -- Resolver IP not included in WARP Tunnel per Split Tunnel configuration --> QO["Query sent to resolver IP outside WARP Tunnel"]
40
+
41
+
QW -- Allowed by Gateway --> OR["Evaluated by Cloudflare on-ramp routes"]
42
+
OR -- Onramp routes do not include resolver IP --> GP["Gateway proxies query to resolver IP via normal WARP egress route"]
43
+
OR -- Onramp routes include, resolver IP --> ADV["Cloudflare onramps advertises route that includes Resolver IP"]
44
+
ADV --> PR["Private resolver returns IP address to WARP client"]
45
+
46
+
%% Right branch (no LDF match)
47
+
C -- Domain does not exist in Local Domain Fallback policies --> GWR["Gateway checks Resolver Policies (Enterprise only)"]
48
+
49
+
GWR -- Resolver policy is not matched --> C1111a["1.1.1.1"]
50
+
51
+
GWR -- Resolver policy is matched --> IDNS["Internal DNS"]
52
+
GWR -- Resolver policy is matched --> C1111b["1.1.1.1"]
53
+
GWR -- Resolver policy is matched --> CUST["Custom resolver"]
0 commit comments