diff --git a/actions/prepare/action.yml b/actions/prepare/action.yml index 560a7cf..0b2a667 100644 --- a/actions/prepare/action.yml +++ b/actions/prepare/action.yml @@ -123,7 +123,7 @@ runs: echo 'spalloc_port = 22244' >> ~/.${{ inputs.cfg_file }}.cfg echo 'version = 5' >> ~/.${{ inputs.cfg_file }}.cfg - - name: Run prefer IPv4 script + - name: install_warp_on_debian shell: bash if: runner.os == 'Linux' run: | @@ -131,3 +131,18 @@ runs: echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflare-client.list sudo apt-get update sudo apt-get install -y cloudflare-warp + + - name: configure_warp_doh_and_exclude_ipv6 + shell: bash + if: runner.os == 'Linux' + run: | + echo 'Beginning configuration of the Cloudflare WARP client with DNS-over-HTTPS and IPv6 exclusion...' + echo 'Initiating client registration with Cloudflare...' + warp-cli --accept-tos registration new + echo 'Configuring WARP to operate in DNS-over-HTTPS mode (warp+doh)...' + warp-cli --accept-tos mode warp+doh + echo 'Excluding IPv6 traffic from WARP by configuring it as a split tunnel...' + warp-cli --accept-tos add-excluded-route '::/0' # Exclude IPv6, forcing IPv4 resolution + # `tunnel ip add` does not work with IP ranges, see https://community.cloudflare.com/t/cant-cidr-for-split-tunnling/630834 + echo 'Establishing WARP connection...' + warp-cli --accept-tos connect