Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added useful info when using WARP on a tightly-firewalled corporate network #12509

Closed
wants to merge 1 commit into from

Conversation

jamie-sandbox
Copy link
Contributor

Added useful info learned from hours of debugging and reverse-engineering when setting up WARP on a tightly-firewalled corporate network.

@ranbel
Copy link
Contributor

ranbel commented Jan 29, 2024

@dh-cf

@jamie-sandbox
Copy link
Contributor Author

jamie-sandbox commented Feb 12, 2024 via email

@ranbel
Copy link
Contributor

ranbel commented Feb 12, 2024

This PR is awaiting a technical review from the WARP team.

@ranbel
Copy link
Contributor

ranbel commented Apr 4, 2024

@aw-cf Could someone on your team help review this PR?

Copy link
Contributor

@kkrum kkrum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cc @ranbel added some comments based on discussion with engineering team.


- Windows: `C:\Program Files\Cloudflare\Cloudflare WARP\warp-dex.exe`
- macOS: `/Applications/Cloudflare WARP.app/Contents/Resources/warp-dex`

In order to allow the network connectivity tests within the WARP GUI to function reliably, you will also need to allow the userspace GUI to generate network traffic:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a good addition we should keep


- `engage.cloudflareclient.com` verifies general Internet connectivity outside of the WARP tunnel.
- `engage.cloudflareclient.com` verifies general Internet connectivity outside of the WARP tunnel. These requests are always sent directly and will not use a proxy server, even if one is configured for the system. Resolves to `162.159.192.1` and `2606:4700:d0::a29f:c001`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pending our QA team checking re the proxy comment. We aren't doing anything special here so need to investigate if this is specific to certain configurations or if this is just how Windows decides to handle things.

We should document that the ips engage.cloudflareclient.com use though are whatever WARP Ingress IP we connect to. It isn't always what is in this PR, but could be anything in the WARP Ingress IPv4/24 or IPv6/48 range

## DoH IP

All DNS requests through WARP are sent outside the tunnel via DoH (DNS over HTTPS). The following IP addresses must be reachable for DNS to work correctly.

{{<render file="warp/_doh-ips.md">}}

DoH requests are always sent directly and will not use a proxy server, even if one is configured for the system.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets leave this out for now


{{<render file="warp/_client-orchestration-ips.md">}}

Once the tunnel has been established, communication with the API will take place **inside the tunnel**, unless a proxy configuration (e.g. PAC file) says otherwise.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is inaccurate. Orchestration API and DoH traffic is always outside the tunnel.

@@ -10,16 +10,22 @@ If your organization uses a firewall or other policies to restrict or intercept

## Client orchestration API

The WARP client talks with our edge via a standard HTTPS connection outside the tunnel for operations like registration or settings changes. To perform these operations, you must allow `zero-trust-client.cloudflareclient.com` which will lookup the following IP addresses:
Prior to connection, the WARP client talks with our edge via a standard HTTPS connection **outside the tunnel** for operations like registration and settings changes.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets hold off on this for now

The WARP client talks with our edge via a standard HTTPS connection outside the tunnel for operations like registration or settings changes. To perform these operations, you must allow `zero-trust-client.cloudflareclient.com` which will lookup the following IP addresses:
Prior to connection, the WARP client talks with our edge via a standard HTTPS connection **outside the tunnel** for operations like registration and settings changes.

Connections to the API will honour the system proxy settings (if configured), however it is recommended that the connections bypass any proxy and are allowed to be made directly. In this case you must allow `zero-trust-client.cloudflareclient.com` which will resolve to the following IP addresses:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lets hold off on this for now

@ranbel
Copy link
Contributor

ranbel commented May 22, 2024

addressed in #14682

@ranbel ranbel closed this May 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants