
Rust port von @masterking32's MasterHttpRelayVPN — alle Anerkennung gebührt @masterking32 für die ursprüngliche Idee und die Python-Implementierung. Kostenlose DPI-Umgehung über ein Google Apps Script Relay mit TLS-SNI-Verschleierung. CLI + plattformübergreifende Desktop-Benutzeroberfläche, HTTP + SOCKS5 Proxy, keine Laufzeitabhängigkeiten.
# mhrv-rs — Umgehe Zensur kostenlos mit deinem eigenen Google-Konto
[](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/releases/latest)
[](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/releases)
[](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/actions/workflows/release.yml)
[](LICENSE)
[](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/stargazers)
[](https://sh1n.org/donate)
**Ein kleines Programm, das auf deinem Computer läuft und dir ermöglicht, blockierte Websites kostenlos zu besuchen, indem es ein Google Apps Script verwendet, das du in deinem eigenen kostenlosen Google-Konto bereitstellst. Dein ISP sieht nur verschlüsselten Datenverkehr zu `www.google.com` — er kann nicht erkennen, was du wirklich besuchst.**
🇬🇧 [Englischer Schnellstart](#schnellstart) · [Vollständige Anleitung (fortgeschrittene Themen)](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.md)
🇮🇷 [راهاندازی سریع فارسی](#راهاندازی-سریع) · [راهنمای کامل (مباحث پیشرفته)](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.fa.md)
<p align="center" dir="rtl">
۱. <a href="https://www.youtube.com/watch?v=voCwxgvWR5U" target="_blank" rel="noopener noreferrer">راهنمای تصویری راه اندازی به زبان فارسی</a> (YouTube)
<br>
۲. <a href="https://kian-irani.github.io/mhrv-setup-full-tunell/" target="_blank" rel="noopener noreferrer">راهنمای جامع متنی راه اندازی به زبان فارسی</a> با تشکر از <a href="https://github.com/KIAN-IRANi" target="_blank" rel="noopener noreferrer">Kian Irani</a>
</p>
---
## Was du bekommst
- 🌐 **Umgeht DPI / SNI-Blockierung** durch Nutzung von Googles Edge als Relay
- 💯 **Völlig kostenlos** — läuft in der kostenlosen Stufe deines eigenen Google-Kontos
- ⚡ **Eine kleine Datei** (~3 MB), kein Python, kein Node.js, keine Abhängigkeiten
- 🖥️ **Funktioniert auf** Mac, Windows, Linux, Android, OpenWRT-Routern
- 🦊 **Jeder Browser oder jede App**, die HTTP-Proxy oder SOCKS5 unterstützt
## Wie es funktioniert (das einfache Bild)
```
Du → Browser → mhrv-rs ──┐
│ ISP sieht nur: www.google.com
▼
Googles Netzwerk
│
▼
dein kostenloses Apps Script ruft die echte Seite ab
│
▼
Twitter / ChatGPT / blockierte Seite deiner Wahl
```
ISPs können nicht in verschlüsseltes HTTPS hineinlesen. Sie sehen nur die Adresse — `www.google.com`. Die eigentliche Seitenabfrage findet in Googles Netzwerk statt, versteckt im verschlüsselten Tunnel.
## Schnellstart
**Etwa 5 Minuten.** Du benötigst:
- Ein kostenloses Google-Konto (jede Gmail-Adresse funktioniert)
- Einen Computer (Mac, Windows oder Linux)
- Firefox oder Chrome
### Schritt 1 — Das Google Apps Script erstellen (einmalig)
1. Gehe zu **[script.google.com](https://script.google.com)** und melde dich mit deinem Google-Konto an
2. Klicke oben links auf **Neues Projekt**
3. Lösche den Standardcode im Editor
4. Öffne die Datei [`assets/apps_script/Code.gs`](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/assets/apps_script/Code.gs) in diesem Repository, kopiere den gesamten Inhalt und füge ihn in den Apps Script-Editor ein (ersetze den vorhandenen Code)
5. Finde diese Zeile in der Nähe des Anfangs:
```js
const AUTH_KEY = "CHANGE_ME_TO_A_STRONG_SECRET";
```
Ersetze `CHANGE_ME_TO_A_STRONG_SECRET` durch einen eigenen langen, zufälligen String. **Behalte diesen String** — du wirst ihn in Schritt 3 in die App einfügen. Behandle ihn wie ein Passwort.
6. Klicke auf 💾 **Speichern** (oder `Ctrl/Cmd+S`)
7. Klicke auf **Bereitstellen** (oben rechts) → **Neue Bereitstellung**
8. Klicke auf das Zahnradsymbol ⚙ neben „Typ auswählen" → wähle **Web-App**
9. Stelle ein:
- **Ausführen als:** *Ich* (dein Google-Konto)
- **Zugriff für:** *Jeder*
10. Klicke auf **Bereitstellen**. Google fragt möglicherweise nach Berechtigungen — klicke auf **Zugriff autorisieren** und bestätige
11. Google zeigt eine **Bereitstellungs-ID** (einen langen zufälligen String). **Kopiere sie** — du wirst sie in Schritt 3 benötigen.
> **Tipp:** Wenn du später `Code.gs` aktualisierst, erstelle keine neue Bereitstellung. Bearbeite den Code, gehe dann zu **Bereitstellen → Bereitstellungen verwalten → ✏️ → Version: Neue Version → Bereitstellen**. Die Bereitstellungs-ID bleibt gleich.
### Schritt 2 — mhrv-rs herunterladen
Gehe zur [letzten Release-Seite](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/releases/latest) und lade die Datei für deinen Computer herunter:
| Dein System | Lade dies herunter |
|---|---|
| Mac mit Apple Silicon (M1 / M2 / M3 / M4-Chip) | `mhrv-rs-macos-arm64-app.zip` |
| Mac mit Intel-Chip | `mhrv-rs-macos-amd64-app.zip` |
| Windows | `mhrv-rs-windows-amd64.zip` |
| Linux (Ubuntu / Mint / Fedora / Debian / Arch) | `mhrv-rs-linux-amd64.tar.gz` |
| Android-Smartphone oder -Tablet | `mhrv-rs-android-universal-v*.apk` |
| OpenWRT-Router oder Alpine | `mhrv-rs-linux-musl-amd64.tar.gz` |
> **Mac: Nicht sicher, ob Apple Silicon oder Intel?** Klicke auf → **Über diesen Mac**. Wenn bei „Chip" **Apple** steht, nimm arm64. Wenn **Intel**, nimm amd64.
> **Linux: Du erhältst einen `GLIBC`-Fehler?** Verwende stattdessen die Datei `linux-musl-amd64` — sie funktioniert auf jedem Linux ohne Abhängigkeiten.
Entpacke die Datei.
### Schritt 3 — Erster Start
Doppelklicke auf den Starter:
| Mac | `run.command` |
| Windows | `run.bat` |
| Linux | `./run.sh` (im Terminal) |
Beim ersten Mal fragt es nach deinem Computer-Passwort. Dies dient dazu, ein kleines Zertifikat zu installieren, damit dein Browser mhrv-rs vertraut. **Das Zertifikat wird auf deinem Computer generiert und verlässt ihn nie** — keine Cloud, kein Google, nichts Fernes kann es nutzen.
Das mhrv-rs-Fenster öffnet sich. Fülle aus:
- **Apps Script-ID(s)** → füge die **Bereitstellungs-ID** aus Schritt 1 ein
- **Auth-Key** → füge den zufälligen String ein, den du in `Code.gs` gesetzt hast
- Lasse alles andere auf den Standardwerten
Klicke auf **Konfiguration speichern**, dann auf **Starten**. Der Statuskreis wird grün, wenn es funktioniert.
> **Teste es:** Klicke auf die Schaltfläche **Test**. Es sendet eine Anfrage durch das Relay und teilt dir mit, ob es funktioniert hat.
### Schritt 4 — Deinem Browser mitteilen, mhrv-rs zu verwenden
#### Firefox (empfohlen — am einfachsten)
1. Firefox → ☰-Menü → **Einstellungen**
2. Suche im Suchfeld nach „Proxy"
3. Klicke unter Netzwerkeinstellungen auf **Einstellungen…**
4. Wähle **Manuelle Proxy-Konfiguration**
5. **HTTP-Proxy:** `127.0.0.1` Port: `8085`
6. ☑ Aktiviere **„Diesen Proxy auch für HTTPS verwenden"**
7. Klicke auf **OK**
#### Chrome / Edge
Installiere die Erweiterung [Proxy SwitchyOmega](https://chromewebstore.google.com/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif) und setze den Proxy auf `127.0.0.1:8085`.
#### macOS (systemweit)
Systemeinstellungen → Netzwerk → Wi-Fi → Details → **Proxies** → aktiviere sowohl **Web-Proxy (HTTP)** als auch **Sicherer Web-Proxy (HTTPS)**, beide mit `127.0.0.1:8085`.
### Schritt 5 — Ausprobieren
Öffne eine blockierte Website in deinem Browser. Sie sollte geladen werden.
Wenn etwas nicht funktioniert:
- Klicke im mhrv-rs-Fenster auf **Test** — es zeigt an, bei welchem Schritt es hakt
- Sieh dir das Bedienfeld **Letzte Logs** am unteren Rand des Fensters an
- Siehe die [Häufigen Fragen](#häufige-fragen) unten
---
## Häufige Fragen
**Ist das wirklich kostenlos?** Ja. Google gewährt jedem Konto 20.000 ausgehende URL-Abrufe pro Tag in der kostenlosen Stufe. Das ist reichlich für das normale Surfen einer Person. Für eine Familie mit 3–4 Personen, die das gleiche Setup teilt, erstelle 2–3 Bereitstellungen in verschiedenen Google-Konten und füge alle IDs hinzu.
**Ist es sicher?** Das Zertifikat bleibt auf deinem Computer — niemand anders hat den privaten Schlüssel. Dein `auth_key` ist dein Geheimnis. Google sieht die Websites, die du über das Relay besuchst (weil Apps Script sie in deinem Auftrag abruft) — genauso wie bei jedem gehosteten Proxy. Wenn dir das nicht recht ist, verwende den Full-Tunnel-Modus mit einem eigenen VPS — siehe die [vollständige Anleitung](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.md#full-tunnel-mode).
**YouTube-Videos werden nicht abgespielt.** Die Videosegmente von YouTube kommen von `googlevideo.com`, das Apps Script nicht erreichen kann (Google blockiert den Zugriff von Apps Script auf das eigene Video-CDN). Die Seite selbst wird normal geladen; nur die Videowiedergabe ist betroffen. Lösung: Full Tunnel + VPS, oder füge `.googlevideo.com` zu `passthrough_hosts` in deiner Konfiguration hinzu (der Browser greift direkt darauf zu, aber bei iranischen ISPs ist es immer noch gedrosselt).
**ChatGPT / Claude / Grok zeigt ein Cloudflare-CAPTCHA.** Cloudflare markiert Google-Rechenzentrums-IPs als Bots. Lösung: Richte einen **Exit-Node** ein — einen kleinen TypeScript-Handler, den du auf einem serverlosen Host (Deno Deploy, fly.io, deinem eigenen VPS) bereitstellst und der Apps Script → deinen Exit-Node → claude.ai verbindet. Siehe [`assets/exit_node/README.md`](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/assets/exit_node/README.md).
**Telegram ist instabil.** Telegram verwendet MTProto, das Apps Script nicht spricht. Kombiniere es mit [xray](https://github.com/XTLS/Xray-core) auf deinem Rechner — siehe [Telegram via xray in der vollständigen Anleitung](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.md#telegram-via-xray).
**Der ISP blockiert `script.google.com` selbst.** mhrv-rs hat einen `direct`-Modus, der nur den SNI-Umschreibungstunnel verwendet (ohne Apps Script). Verwende ihn einmal, um auf `script.google.com` zuzugreifen und dein Skript bereitzustellen, wechsle dann in den apps_script-Modus. Siehe [direct-Modus](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.md#direct-mode).
**Meine Google-Suche erscheint ohne JavaScript.** Der `User-Agent` von Apps Script ist fest auf `Google-Apps-Script` eingestellt (Google erlaubt Skripten nicht, ihn zu ändern), daher liefern einige Websites einen JavaScript-freien Fallback. Workaround: Füge die betroffene Domain zu deiner `hosts`-Map hinzu, damit sie mit deinem echten Browser-User-Agent durch den SNI-Umschreibungstunnel geht. `google.com`, `youtube.com`, `fonts.googleapis.com` sind standardmäßig bereits in dieser Liste.
**Weitere Fragen:** [Vollständige FAQ in der ausführlichen Anleitung](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.md#faq).
## Hilfe benötigt?
- Suche in [offenen und geschlossenen Issues](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/issues?q=is%3Aissue) — dein Problem könnte bereits beantwortet sein
- Erstelle ein [neues Issue](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/issues/new) mit: deiner Konfiguration (`auth_key` maskieren!), genau dem, was du versucht hast, und genau dem, was du im Log gesehen hast
## Danksagungen
Originalprojekt: **[@masterking32/MasterHttpRelayVPN](https://github.com/masterking32/MasterHttpRelayVPN)**. Die Idee, das Apps Script-Protokoll, die Proxy-Architektur — alles von ihm. Dieser Rust-Port existiert, um die clientseitige Verteilung zu vereinfachen (einzelne Binärdatei, keine Python-Installation).
Der Großteil des Rust-Codes in diesem Port wurde mit [Anthropics Claude](https://claude.com) geschrieben und bei jedem Commit von einem Menschen überprüft.
## Unterstütze dieses Projekt
[❤️ Spende auf sh1n.org](https://sh1n.org/donate) — deckt Hosting- und CI-Runner-Kosten. Das Sternen des Repos hilft auch zu signalisieren, dass das Projekt es wert ist, am Leben erhalten zu werden.
---
<div dir="rtl">
# mhrv-rs — دور زدن سانسور بهرایگان، با حساب گوگل خودت
**یک برنامهٔ کوچک که روی کامپیوترت اجرا میشود و کمک میکند سایتهای مسدودشده را با یک اسکریپت رایگان که توی حساب گوگل خودت میسازی، باز کنی. ISP فقط میبیند که داری به `www.google.com` وصل میشوی — نمیفهمد در واقع چه سایتی را باز کردهای.**
🇬🇧 [English Quick Start](#quick-start) · [Full Guide (advanced)](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.md)
🇮🇷 [راهاندازی سریع](#راهاندازی-سریع) · [راهنمای کامل (پیشرفته)](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.fa.md)
## چی به دست میآوری
- 🌐 **عبور از DPI / مسدودسازی SNI** با لبهٔ گوگل بهعنوان رله
- 💯 **کاملاً رایگان** — روی سهمیهٔ رایگان حساب گوگل خودت
- ⚡ **یک فایل کوچک** (~۳ مگابایت)، بدون پایتون، بدون Node.js، بدون وابستگی
- 🖥️ **روی** مک، ویندوز، لینوکس، اندروید، روتر OpenWRT کار میکند
- 🦊 **هر مرورگر یا برنامهای** که از HTTP proxy یا SOCKS5 پشتیبانی کند
## چطور کار میکند (تصویر ساده)
```
تو ← مرورگر ← mhrv-rs ──┐
│ ISP فقط میبیند: www.google.com
▼
شبکهٔ گوگل
│
▼
اسکریپت رایگان گوگل تو سایت اصلی را باز میکند
│
▼
توییتر / ChatGPT / هر سایت مسدودی
```
ISP داخل HTTPS رمزشده را نمیتواند بخواند. فقط آدرس را میبیند — `www.google.com`. جستوجوی واقعی صفحه داخل شبکهٔ گوگل، در تونل رمزشده اتفاق میافتد.
## راهاندازی سریع
**حدود ۵ دقیقه.** نیاز داری به:
- یک حساب گوگل رایگان (هر Gmailای کار میکند)
- یک کامپیوتر (مک، ویندوز یا لینوکس)
- فایرفاکس یا کروم
### مرحلهٔ ۱ — ساخت اسکریپت گوگل (یکبار)
۱. به **[script.google.com](https://script.google.com)** برو، با حساب گوگل خودت وارد شو
۲. روی **New project** بالا سمت چپ کلیک کن
۳. کد پیشفرض ویرایشگر را پاک کن
۴. فایل [`assets/apps_script/Code.gs`](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/assets/apps_script/Code.gs) را در همین ریپو باز کن، همهاش را کپی کن، در ویرایشگر Apps Script پیست کن (جایگزین متن قبلی)
۵. این خط را نزدیک بالای کد پیدا کن:
```js
const AUTH_KEY = "CHANGE_ME_TO_A_STRONG_SECRET";
```
مقدار `CHANGE_ME_TO_A_STRONG_SECRET` را با یک رشتهٔ تصادفی طولانیِ خودت عوض کن. **این رشته را نگه دار** — در مرحلهٔ ۳ داخل برنامه پیست میکنی. مثل پسورد محرمانه نگهاش دار.
۶. روی 💾 **Save** کلیک کن (یا `Ctrl/Cmd+S`)
۷. روی **Deploy** (بالا سمت راست) → **New deployment**
۸. روی آیکون چرخدندهٔ ⚙ کنار "Select type" کلیک کن → **Web app** را انتخاب کن
۹. تنظیم کن:
- **Execute as:** *Me* (حساب گوگل خودت)
- **Who has access:** *Anyone*
۱۰. **Deploy** را بزن. ممکن است گوگل برای دادن دسترسی سؤال کند — **Authorize access** را بزن و تأیید کن
۱۱. گوگل یک **Deployment ID** نشانت میدهد (یک رشتهٔ تصادفی طولانی). **کپیاش کن** — در مرحلهٔ ۳ لازم داری.
> **نکته:** اگر بعداً `Code.gs` را بهروزرسانی کنی، Deployment جدید نساز. کد را ویرایش کن، بعد **Deploy → Manage deployments → ✏️ → Version: New version → Deploy**. Deployment ID همان قبلی میماند.
### مرحلهٔ ۲ — دانلود mhrv-rs
به [صفحهٔ آخرین release](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/releases/latest) برو و فایل مناسب کامپیوترت را دانلود کن:
| سیستم تو | فایل دانلود |
|---|---|
| مک با تراشهٔ Apple Silicon (M1 / M2 / M3 / M4) | `mhrv-rs-macos-arm64-app.zip` |
| مک با تراشهٔ Intel | `mhrv-rs-macos-amd64-app.zip` |
| ویندوز | `mhrv-rs-windows-amd64.zip` |
| لینوکس (Ubuntu / Mint / Fedora / Debian / Arch) | `mhrv-rs-linux-amd64.tar.gz` |
| گوشی یا تبلت اندروید | `mhrv-rs-android-universal-v*.apk` |
| روتر OpenWRT یا Alpine | `mhrv-rs-linux-musl-amd64.tar.gz` |
> **مک: مطمئن نیستی Apple Silicon است یا Intel؟** کلیک کن → **About This Mac**. اگر "Chip" نوشت **Apple**، arm64 بگیر. اگر **Intel** بود، amd64.
> **لینوکس: خطای `GLIBC` میگیری؟** بهجای آن از `linux-musl-amd64` استفاده کن — روی هر لینوکسی بدون وابستگی کار میکند.
از حالت فشرده دربیار.
### مرحلهٔ ۳ — اجرای اول
روی فایل اجرا دو بار کلیک کن:
| مک | `run.command` |
| ویندوز | `run.bat` |
| لینوکس | `./run.sh` (در ترمینال) |
اولین بار رمز کامپیوترت را میخواهد. این برای نصب یک گواهی کوچک است تا مرورگرت به mhrv-rs اعتماد کند. **گواهی روی کامپیوتر خودت ساخته میشود و هیچوقت جایی ارسال نمیشود** — نه روی ابر، نه به گوگل، هیچ منبع راهدوری نمیتواند ازش استفاده کند.
پنجرهٔ mhrv-rs باز میشود. این فیلدها را پر کن:
- **Apps Script ID(s)** ← **Deployment ID** از مرحلهٔ ۱ را پیست کن
- **Auth key** ← همان رشتهٔ تصادفی که در `Code.gs` گذاشتی
- بقیه را پیشفرض ول کن
روی **Save config** و بعد **Start** بزن. اگر کار کند، دایرهٔ وضعیت سبز میشود.
> **تستش کن:** دکمهٔ **Test** را بزن. یک درخواست از طریق رله میفرستد و میگوید کار کرد یا نه.
### مرحلهٔ ۴ — مرورگر را روی mhrv-rs تنظیم کن
#### فایرفاکس (پیشنهادی — سادهترین)
۱. فایرفاکس → منوی ☰ → **Settings**
۲. در کادر جستوجو "proxy" تایپ کن
۳. زیر Network Settings روی **Settings…** کلیک کن
۴. **Manual proxy configuration** را انتخاب کن
۵. **HTTP Proxy:** `127.0.0.1` پورت: `8085`
۶. ☑ **"Also use this proxy for HTTPS"** را تیک بزن
۷. **OK**
#### کروم / Edge
افزونهٔ [Proxy SwitchyOmega](https://chromewebstore.google.com/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif) را نصب کن و پروکسی را روی `127.0.0.1:8085` تنظیم کن.
#### مک (سراسری)
System Settings → Network → Wi-Fi → Details → **Proxies** → هر دو **Web Proxy (HTTP)** و **Secure Web Proxy (HTTPS)** را روشن کن، هر دو روی `127.0.0.1:8085`.
### مرحلهٔ ۵ — امتحان کن
در مرورگرت یک سایت مسدود را باز کن. باید لود شود.
اگر چیزی کار نکرد:
- در پنجرهٔ mhrv-rs دکمهٔ **Test** را بزن — میگوید کجا گیر کرده
- پنل **Recent log** پایین پنجره را نگاه کن
- بخش [سؤالات رایج](#سؤالات-رایج) پایین را ببین
---
## سؤالات رایج
**واقعاً رایگانه؟** بله. گوگل به هر حساب روزانه ۲۰٬۰۰۰ درخواست خروجی URL در سهمیهٔ رایگان میدهد. برای مرور عادی یک نفر کاملاً کافی است. برای خانوادهٔ ۳-۴ نفره که از یک سرویس استفاده میکنند، در ۲-۳ حساب گوگل مختلف Deployment بساز و همهٔ IDها را اضافه کن.
**امنه؟** گواهی روی کامپیوتر خودت میماند — کسی کلید خصوصی را ندارد. `auth_key` رمز محرمانهٔ توست. گوگل سایتهایی که از طریق رله باز میکنی را میبیند (چون Apps Script برای تو fetch میکند) — مثل هر پروکسی میزبانیشدهٔ دیگری. اگر این برایت قابل قبول نیست، از Full Tunnel با VPS شخصی استفاده کن — در [راهنمای کامل](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.fa.md#حالت-تونل-کامل).
**ویدیوی یوتیوب پخش نمیشود.** chunkهای ویدیوی یوتیوب از `googlevideo.com` میآیند و Apps Script نمیتواند به آن برسد (گوگل اجازهٔ دسترسی Apps Script به CDN ویدیوی خودش را نمیدهد). صفحهٔ خود یوتیوب لود میشود، فقط پخش ویدیو تحت تأثیر است. راهحل: Full Tunnel + VPS، یا `.googlevideo.com` را به `passthrough_hosts` در کانفیگت اضافه کن (مرورگر مستقیم میرود اما روی ISP ایران throttle میخورد).
**ChatGPT / Claude / Grok کپچای Cloudflare نشان میدهد.** Cloudflare آیپیهای دیتاسنتر گوگل را بهعنوان bot شناسایی میکند. راهحل: یک **exit node** راهاندازی کن — یک handler کوچک TypeScript که روی یک host serverless (Deno Deploy، fly.io، VPS شخصی) deploy میکنی و پل میسازه از Apps Script به سایت Cloudflare. [`assets/exit_node/README.fa.md`](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/assets/exit_node/README.fa.md).
**تلگرام پایدار نیست.** تلگرام از MTProto استفاده میکند که Apps Script نمیفهمد. روی کامپیوترت با [xray](https://github.com/XTLS/Xray-core) جفتش کن — [بخش تلگرام در راهنمای کامل](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.fa.md#تلگرام-با-xray).
**ISP خود `script.google.com` را مسدود کرده.** mhrv-rs یک حالت `direct` دارد که فقط از تونل بازنویسی SNI استفاده میکند (بدون Apps Script). یکبار از این حالت استفاده کن تا به `script.google.com` برسی و اسکریپت را دیپلوی کنی، بعد به حالت apps_script سوئیچ کن. [حالت direct](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.fa.md#حالت-direct).
**جستوجوی گوگلم بدون JavaScript ظاهر میشود.** `User-Agent` Apps Script ثابت روی `Google-Apps-Script` است (گوگل نمیگذارد اسکریپتها عوضش کنند)، پس بعضی سایتها نسخهٔ بدون JS برمیگردانند. راهحل: دامنهٔ مورد نظر را به `hosts` اضافه کن تا از تونل بازنویسی SNI با User-Agent واقعی مرورگرت برود. `google.com`، `youtube.com`، `fonts.googleapis.com` بهطور پیشفرض در این لیستاند.
**سؤالات بیشتر:** [FAQ کامل در راهنمای بلند](https://github.com/therealaleph/masterhttprelayvpn-rust/blob/main/docs/guide.fa.md#سؤالات-رایج).
## کمک میخواهی؟
- در [issueهای باز و بسته](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/issues?q=is%3Aissue) جستوجو کن — احتمالاً مشکلت قبلاً جواب داده شده
- یک [issue جدید](https://github.com/therealaleph/MasterHttpRelayVPN-RUST/issues/new) باز کن با: کانفیگت (حتماً `auth_key` را پنهان کن!)، دقیقاً چه کاری کردی، دقیقاً چه دیدی در log
## اعتبار
پروژهٔ اصلی: **[@masterking32/MasterHttpRelayVPN](https://github.com/masterking32/MasterHttpRelayVPN)**. ایده، پروتکل Apps Script، معماری پروکسی — همه از اوست. این پورت Rust برای سادهتر کردن توزیع سمت کلاینت است (یک فایل اجرایی، بدون نصب پایتون).
بیشتر کد Rust این پورت با کمک [Claude شرکت Anthropic](https://claude.com) نوشته شده، روی هر commit انسانی بازبینی شده.
## حمایت از پروژه
[❤️ کمک مالی در sh1n.org](https://sh1n.org/donate) — برای پوشش هزینهٔ هاستینگ و runner CI. ستاره دادن به ریپو هم نشان میدهد پروژه ارزش ادامه دادن دارد.
</div>