Skip to content

Full mode via GitHub Actions tunnel fails with HTTP 403 — Google Apps Script cannot reach trycloudflare.com #849

@Montazeran8

Description

@Montazeran8

Environment

  • mhrv-rs version: v1.9.15
  • Mode: full (GitHub Actions tunnel via cloudflared Quick)
  • OS: Windows 10
  • ISP: ADSL (Mokhaberat Iran)

Problem Summary

I followed the official cloudflared-quick.md guide exactly. The GitHub Actions workflow runs, the tunnel URL is generated, CodeFull.gs is deployed with correct TUNNEL_SERVER_URL and TUNNEL_AUTH_KEY. However, every batch operation through the relay returns:

WARN batch failed (script AKfy...): relay error: batch tunnel HTTP 403

The response body is a Google Docs HTML page (in Persian) that says:

<!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده">

This means CodeFull.gs is trying to reach the trycloudflare.com tunnel URL via UrlFetchApp.fetch(), but Google's outbound servers are being blocked/403'd by Cloudflare (or vice versa). The script then gets blacklisted for 600 seconds.

What This Confirms

The apps_script outbound IP range is so heavily flagged or restricted that even connecting to a free Cloudflare Quick Tunnel is forbidden. The same IP range that causes sites like val.town, chatgpt.com, and aistudio.google.com to return errors or CAPTCHAs, also prevents the relay from talking to any Cloudflare-backed exit node.

This means the GitHub Actions tunnel method — which was added precisely for users without VPS access — is unusable from Iran for the same underlying reason that apps_script mode itself is failing for many sites.

Request

Is there any planned workaround for this? Could CodeFull.gs be modified to route its outbound traffic through a different path (e.g., a user-supplied SOCKS5 proxy via upstream_socks5 or a future tunnel_socks5 setting), so that the outbound request to trycloudflare.com does not originate from the flagged Google IP range? Or is an alternative tunnel provider (ngrok, etc.) known to work where cloudflared does not?

For now, users in Iran are completely stuck: apps_script times out, exit_node signup is impossible, and the free tunnel path is blocked. A solution that allows the relay to reach an exit node through a different outbound IP would unlock the entire setup.

Attachments

My config.json (with secrets redacted):

{
  "mode": "full",
  "google_ip": "216.239.38.120",
  "front_domain": "www.google.com",
  "script_id": "***",
  "auth_key": "***",
  "listen_host": "127.0.0.1",
  "listen_port": 8085,
  "socks5_port": 8086,
  "log_level": "info",
  "verify_ssl": true,
  "sni_hosts": [
    "www.google.com",
    "mail.google.com",
    "drive.google.com",
    "docs.google.com",
    "calendar.google.com",
    "accounts.google.com",
    "scholar.google.com",
    "maps.google.com",
    "chat.google.com",
    "translate.google.com",
    "play.google.com",
    "lens.google.com",
    "chromewebstore.google.com"
  ],
  "fetch_ips_from_api": true,
  "max_ips_to_scan": 100,
  "scan_batch_size": 500,
  "google_ip_validation": true,
  "tunnel_doh": true,
  "block_doh": false
}

Log output showing the 403 error:

2026-05-07T09:13:11.371975Z  INFO batch: 1 ops → AKfycbw9, rtt=1.0326297s
2026-05-07T09:13:11.371982Z  WARN batch failed (script AKfycbw9): relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:11.372005Z ERROR tunnel connect_data error for beacons5.gvt2.com:443: relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:11.634633Z  WARN blacklisted script AKfy...k5Qo for 600s: HTTP 403
2026-05-07T09:13:11.634648Z  INFO batch: 2 ops → AKfycbw9, rtt=1.0631053s
2026-05-07T09:13:11.634654Z  WARN batch failed (script AKfycbw9): relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:11.634677Z ERROR tunnel connect_data error for optimizationguide-pa.googleapis.com:443: relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:11.634681Z ERROR tunnel connect_data error for translate.google.com:443: relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:11.636970Z  INFO dispatch beacons5.gvt3.com:443 -> full tunnel (via batch mux)
2026-05-07T09:13:12.833895Z  WARN blacklisted script AKfy...k5Qo for 600s: HTTP 403
2026-05-07T09:13:12.833915Z  INFO batch: 1 ops → AKfycbw9, rtt=1.1816635s
2026-05-07T09:13:12.833924Z  WARN batch failed (script AKfycbw9): relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:12.833944Z ERROR tunnel connect_data error for beacons5.gvt3.com:443: relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:12.835204Z  INFO dispatch beacons5.gvt3.com:443 -> full tunnel (via batch mux)
2026-05-07T09:13:13.478302Z  WARN blacklisted script AKfy...k5Qo for 600s: HTTP 403
2026-05-07T09:13:13.478327Z  INFO batch: 1 ops → AKfycbw9, rtt=624.1577ms
2026-05-07T09:13:13.478340Z  WARN batch failed (script AKfycbw9): relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-
2026-05-07T09:13:13.478379Z ERROR tunnel connect_data error for beacons5.gvt3.com:443: relay error: batch tunnel HTTP 403: <!DOCTYPE html><html lang="fa" dir="rtl"><head><meta name="description" content="پردازش کلمه وب، ارائه‌ها و صفحات گسترده"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions