عیب‌یابی

بررسی‌های گام‌به‌گام برای مشکلات حالت TUN، DNS، اشتراک‌ها، پروکسی سیستمی، کارایی و اجرای Throne دسکتاپ.

مشکل خود را در ادامه پیدا کنید و بررسی‌ها را به ترتیب انجام دهید. هر بخش با لینکی به راهنمایی تمام می‌شود که آن قابلیت را با جزئیات توضیح می‌دهد. اگر از Throne برای Android استفاده می‌کنید، عیب‌یابی Android را ببینید. اگر هیچ‌کدام کمک نکرد، یک باگ گزارش دهید.

بررسی‌های اولیه

  1. Throne را با Tools → Check For Update به‌روزرسانی کنید. اگر این گزینه خاکستری است، نسخهٔ جدید را از صفحهٔ دانلود دریافت کنید. بسیاری از مشکلات در نسخه‌های جدیدتر برطرف شده‌اند.
  2. زبانهٔ گزارش‌ها (Logs) را در پایین پنجرهٔ اصلی بخوانید. بیشتر خطاها آنجا نشان داده می‌شوند.
  3. نمایه را تست کنید: آن را انتخاب کنید و Ctrl+Shift+S را فشار دهید، یعنی تست نشانی انتخاب‌شده (Url Test Selected). اگر تست ناموفق بود، پیش از تغییر تنظیمات TUN یا پروکسی سیستمی، سرور و نمایه را بررسی کنید.
  4. حالت دیگر را امتحان کنید. اگر نمایه‌ای با پروکسی سیستمی (System Proxy) کار می‌کند اما با حالتvpn (Tun Mode) کار نمی‌کند، مشکل در راه‌اندازی TUN است، نه در سرور.

حالت TUN

TUN روشن است، اما هیچ چیزی باز نمی‌شود

  1. حالتvpn (Tun Mode) را خاموش کنید و همان نمایه را با پروکسی سیستمی (System Proxy) تست کنید. اگر آن هم کار نکرد، ابتدا نمایه یا سرور را درست کنید.
  2. تنظیمات (Settings) ← تنظیمات vpn (Tun Settings) را باز کنید و Stack را روی gvisor بگذارید. اگر این کار جواب داد، می‌توانید gvisor را نگه دارید، یا دنبال چیزی بگردید که پشتهٔ system را مسدود می‌کند، برای مثال یک فایروال یا آنتی‌ویروس.
  3. برنامه‌های VPN دیگر را ببندید. VPNهای دیگر و آداپتورهای شبکهٔ مجازی ممکن است مسیرها (routes) را در اختیار بگیرند.

Windows:

  1. به ThroneCore اجازه دهید از فایروال Windows عبور کند. Windows نخستین باری که از حالت TUN استفاده می‌کنید این را می‌پرسد. اگر اجازه نداده باشید، Windows هسته را مسدود می‌کند و دیگر نمی‌پرسد (#1433). در تنظیمات فایروال به ThroneCore.exe اجازه دهید.
  2. آنتی‌ویروس‌هایی که محافظت شبکه دارند، برای مثال Avast یا ESET، ممکن است بدون هیچ پیامی آداپتور TUN را مسدود کنند (#1687، #1357). پوشهٔ Throne را به‌عنوان استثنا اضافه کنید، یا برای تست، محافظت شبکه را خاموش کنید.
  3. برای تست، مسیر سخت‌گیرانه (Strict Route) را در تنظیمات vpn خاموش کنید. بدون آن، نشت DNS ممکن است؛ محافظت از نشت DNS در Windows را ببینید.

Linux:

  1. اگر DNS over TLS را برای کل سیستم در systemd-resolved روشن کرده‌اید، حالت TUN کار نمی‌کند. آن را خاموش کنید (#1146).
  2. Auto Redirect را در تنظیمات vpn روشن نگه دارید. کرنل‌های جدیدتر برای پشته‌های system و mixed به آن نیاز دارند. اگر این پشته‌ها باز هم ترافیکی عبور نمی‌دهند، از gvisor استفاده کنید.

TUN اجرا نمی‌شود

  • نبود دسترسی: حالت TUN به دسترسی مدیر (administrator) یا root نیاز دارد. درخواست Throne را بپذیرید، یا چرا حالت TUN به دسترسی مدیر یا root نیاز دارد؟ را ببینید. اگر غیرفعال کردن درخواست دسترسی (Disable Privilege request) روشن باشد، Throne نمی‌پرسد و باید خودتان دسترسی‌ها را بدهید.
  • «Strict routing unavailable» (مسیریابی سخت‌گیرانه در دسترس نیست؛ در Windows): Windows نتوانست مسیریابی سخت‌گیرانه را روشن کند. تنظیمات vpn را باز کنید، مسیر سخت‌گیرانه را خاموش کنید و نمایه را دوباره اجرا کنید.
  • «Tun device misbehaving» (دستگاه Tun درست کار نمی‌کند): آداپتور مجازی در وضعیت نامناسبی است، برای مثال پس از بسته شدن اجباری Throne. در پیام روی بازنشانی (Reset) کلیک کنید، یا از تنظیمات vpn ← عیب یابی (Troubleshooting) ← بازنشانی استفاده کنید و نمایه را دوباره اجرا کنید. اگر باز هم کار نکرد، رایانه را دوباره راه‌اندازی کنید.
  • اجرا گیر می‌کند و Throne پیشنهاد می‌کند نرم‌افزار را دوباره راه‌اندازی کنید: در Windows، یک فایل HOSTS بسیار بزرگ ممکن است باعث شود پاک کردن حافظهٔ نهان DNS گیر کند (#1906). فایل HOSTS را کوچک نگه دارید.

TUN چیزهای دیگری را از کار می‌اندازد

هات‌اسپات موبایل، ماشین‌های مجازی، Docker یا VPN محل کار ممکن است تا زمانی که حالت TUN روشن است کار نکنند. حالت TUN و دستورالعمل‌های کاربردی را ببینید.

جزئیات: حالت TUN.

DNS

سایت‌ها باز نمی‌شوند یا گزارش‌ها خطاهای DNS را نشان می‌دهند

  1. تنظیمات (Settings) ← تنظیمات مسیریابی (Routing Settings) ← دی‌ان‌اس (DNS) را باز کنید. دی ان اس سمت-سرور (Remote DNS) باید از طریق پروکسی شما در دسترس باشد و دی ان اس مستقیم (Direct DNS) باید بدون آن کار کند. یکی از سرورهای ازپیش‌تعیین‌شده را امتحان کنید.
  2. در زبانهٔ متداول (Common)، اگر شبکهٔ شما IPv6 ندارد، در Default Domain Strategy یا Resolve Domain Strategy از ipv6_only استفاده نکنید (#1743). آن‌ها را خالی بگذارید یا از prefer_ipv4 استفاده کنید.
  3. Linux: روشن بودن DNS over TLS برای کل سیستم در systemd-resolved، حالت TUN را از کار می‌اندازد؛ TUN روشن است، اما هیچ چیزی باز نمی‌شود را ببینید.

تست نشت، DNS ارائه‌دهندهٔ اینترنت من را نشان می‌دهد

  • دامنه‌هایی که با قوانین direct شما مطابقت دارند با دی ان اس مستقیم (Direct DNS) پرس‌وجو می‌شوند که معمولاً DNS ارائه‌دهندهٔ اینترنت (ISP) شماست. این رفتار طبیعی است؛ تست‌های نشت DNS را ببینید.
  • در حالت پروکسی سیستمی، برنامه‌ها می‌توانند خودشان پرس‌وجوی DNS انجام دهند که هرگز به Throne نمی‌رسد. از حالت TUN استفاده کنید.
  • تست WebRTC که هیچ نشانی IP نشان نمی‌دهد، نشت نیست. فقط نمایش نشانی IP واقعی شما نشت است (#1267).
  • Windows: محافظت از نشت DNS در Windows را ببینید.

جزئیات: DNS.

اشتراک‌ها

به‌روزرسانی ناموفق است

گزارش‌ها پیام خطای درخواست اشتراک …: … (Requesting subscription … error: …) را همراه با دلیل آن نشان می‌دهند.

  1. «درخواست با پروکسی اما هیچ نمایه‌ای شروع نشده است.» (Request with proxy but no profile started.) وقتی Use proxy روشن باشد (تنظیمات پایه (Basic Settings) ← Miscellaneous)، و همچنین هر زمان که پروکسی سیستمی روشن باشد، Throne درخواست‌های خودش را از طریق پروکسی خودش می‌فرستد. ابتدا یک نمایه را اجرا کنید، یا هر دو را خاموش کنید. اگر Disable Mixed Inbound را روشن کرده‌اید، Use proxy را خاموش کنید (#1689).
  2. سایت ارائه‌دهنده در کشور شما مسدود است: یک نمایهٔ سالم را اجرا کنید، Use proxy را روشن کنید و دوباره به‌روزرسانی کنید.
  3. سرور پاسخ 403 می‌دهد یا چیز مفیدی نمی‌فرستد: بسیاری از ارائه‌دهندگان فقط به برنامه‌هایی که می‌شناسند پاسخ می‌دهند. عامل کاربر (User Agent) مورد انتظار ارائه‌دهندهٔ خود را تنظیم کنید: برای همهٔ گروه‌ها در تنظیمات پایه ← اشتراک (Subscription)، یا از نسخهٔ 1.3.1، برای یک گروه در گروه ها (Groups) ← Edit current Group → Advanced. Throne به‌طور پیش‌فرض Throne/<version> را می‌فرستد.
  4. «Device fingerprint required» (اثر انگشت دستگاه لازم است) یا پیامی مشابه: ارائه‌دهنده به HWID شما نیاز دارد. ارسال HWID را روشن کنید؛ پرسش‌های متداول را ببینید.

به‌روزرسانی هیچ نمایه‌ای پیدا نمی‌کند

در گزارش‌ها پیام «No profiles found in the subscription» (هیچ نمایه‌ای در اشتراک پیدا نشد) دیده می‌شود و گروه بدون تغییر می‌ماند. پاسخ ارائه‌دهنده چیزی ندارد که Throne بتواند بخواند.

  1. بررسی کنید که لینک یک نشانی اشتراک باشد، نه یک صفحهٔ وب یا لینک یک برنامه. لینک‌هایی که با happ://crypt یا v2raytun://crypt شروع می‌شوند برای همان برنامه‌ها رمزنگاری شده‌اند و Throne نمی‌تواند آن‌ها را بخواند. از ارائه‌دهندهٔ خود یک نشانی اشتراک معمولی بخواهید.
  2. عامل کاربر (User Agent) دیگری را امتحان کنید. ارائه‌دهندگان اغلب برای برنامه‌هایی که نمی‌شناسند قالب دیگری می‌فرستند، یا هیچ چیزی نمی‌فرستند.

گروه به‌روز نمی‌شود

  • یک گروه را با راست‌کلیک روی زبانهٔ آن ← اشتراک را به روز کنید (Update subscription)، یا با گروه ها (Groups) ← اشتراک را به روز کنید به‌روزرسانی کنید (Ctrl+U).
  • نمایه‌هایی که با افزودن نمایه‌ها به این گروه (Add profiles to this group) وارد شده‌اند یک بار و بدون نشانی اشتراک اضافه شده‌اند. برای دریافت به‌روزرسانی، نشانی را دوباره با Ctrl+V جای‌گذاری کنید و ایجاد گروه اشتراک جدید (Create new subscription group) را انتخاب کنید.
  • به‌روزرسانی خودکار به تنظیمات پایه (Basic Settings) ← اشتراک (Subscription) ← Subscription auto update نیاز دارد که به‌طور پیش‌فرض خاموش است. گروه‌هایی که لغو به‌روزرسانی اتوماتیک (Skip automatic update) در آن‌ها روشن است، به‌طور خودکار به‌روز نمی‌شوند.

نمایه‌ها پس از به‌روزرسانی تغییر کردند یا ناپدید شدند؟ چرا نمایهٔ من پس از به‌روزرسانی اشتراک متوقف شد یا همچنان در حال اجرا ماند؟ را ببینید.

جزئیات: اشتراک‌ها و گروه‌ها.

پروکسی سیستمی

برخی برنامه‌ها پروکسی سیستمی را نادیده می‌گیرند

برنامه‌ها ممکن است از پروکسی سیستمی پیروی کنند یا آن را نادیده بگیرند. ترمینال‌هایی مانند PowerShell، برنامه‌های Windows Store، Discord و تماس‌های Telegram معمولاً آن را نادیده می‌گیرند (#370، #1631). قوانین مسیریابی فقط روی ترافیکی اعمال می‌شوند که به Throne می‌رسد، پس برای این برنامه‌ها از حالتvpn (Tun Mode) استفاده کنید. از کدام حالت استفاده کنیم را ببینید.

پروکسی سیستمی تنظیم نمی‌شود

  1. یک نمایه را اجرا کنید. Throne پروکسی سیستمی را فقط تا زمانی تنظیم می‌کند که یک نمایه در حال اجراست.
  2. Disable Mixed Inbound را در تنظیمات پایه (Basic Settings) ← متداول (Common) خاموش کنید. تا وقتی این گزینه روشن است، Throne پیام «Cannot set system proxy when mixed inbound is disabled.» (وقتی ورودی mixed غیرفعال است، نمی‌توان پروکسی سیستمی را تنظیم کرد) را نشان می‌دهد.
  3. Linux: Throne فقط در GNOME و KDE می‌تواند پروکسی سیستمی را تنظیم کند. در محیط‌های دسکتاپ دیگر، نشانی نوشته‌شده در نوار وضعیت (Mixed: …) را در تنظیمات سیستم خود وارد کنید، یا از حالت TUN استفاده کنید. Throne را با کاربر عادی خود اجرا کنید، نه با root (#864).
  4. Windows: اگر برنامه‌ای به قالب دیگری برای نشانی پروکسی نیاز دارد، قالب پروکسی (Proxy Format) را در تنظیمات پایه ← متداول تغییر دهید.

پس از بسته شدن Throne اینترنت کار نمی‌کند

اگر Throne در حالی که پروکسی سیستمی (System Proxy) روشن بود به‌اجبار بسته شده باشد، پروکسی سیستمی همچنان به Throne اشاره می‌کند. پرسش‌های متداول را ببینید.

جزئیات: پروکسی سیستمی، TUN و اشتراک‌گذاری در شبکهٔ محلی.

کارایی و کرش‌ها

مصرف بالای CPU یا حافظه

  1. تعداد نمایه‌ها را کم نگه دارید، برای مثال در مجموع کمتر از 10,000. هزاران نمایه Throne را کند می‌کنند و حافظهٔ زیادی مصرف می‌کنند. پس از تست URL، نمایه‌های از کار افتاده را با گروه ها (Groups) ← غیرقابل دستیابی پاک شود (Remove Unavailable) حذف کنید، یا بگذارید هر گروه پس از به‌روزرسانی‌ها، در تنظیمات Advanced خود پاک‌سازی شود (Run URL test و سپس Remove unavailable profiles).
  2. کلاینت‌های تورنت اتصال‌های بسیار زیادی باز می‌کنند. با روشن بودن Multiplex، این کار ممکن است CPU زیادی مصرف کند (#1090). Multiplex به‌طور پیش‌فرض خاموش است. اگر آن را روشن کرده‌اید، در نمایه خاموشش کنید، یا Default On را در تنظیمات (Settings) ← Preset Settings → Multiplex خاموش کنید.
  3. تیک تنظیمات پایه (Basic Settings) ← استایل (Style) ← آمار اتصال (Connection statistics) ← فعال کردن (Enable) را بردارید. در این صورت Throne دیگر برنامهٔ پشت هر اتصال را جست‌وجو نمی‌کند و وقتی اتصال‌ها زیاد باشند، CPU کمتری مصرف می‌شود. تا وقتی این گزینه خاموش است، زبانهٔ اتصال‌ها (Connections) خالی می‌ماند.
  4. Windows: فعال کردن مسیریابی Tun (Enable Tun Routing) همراه با مجموعه‌قوانین بزرگ ممکن است مصرف CPU را بسیار بالا ببرد. آن را در تنظیمات vpn (Tun Settings) خاموش کنید.

Throne یا هسته کرش می‌کند

  1. وقتی هسته متوقف می‌شود، Throne آن را همراه با نمایهٔ شما دوباره اجرا می‌کند. اگر هسته ظرف 10 ثانیه دوباره متوقف شود، Throne تلاش را کنار می‌گذارد و پیام «هسته بیش از حد متوقف می‌شود، راه‌اندازی خودکار این نمایه متوقف شود.» (Core exits too frequently, stop automatic restart this profile.) را در گزارش‌ها ثبت می‌کند.
  2. پس از کرش خود Throne، اجرای بعدی پیام «Throne did not shut down cleanly last time» (Throne دفعهٔ قبل به‌درستی بسته نشد) را در گزارش‌ها نشان می‌دهد. گزارش جلسه‌ای که کرش کرده به‌صورت logs/crashed-<date>-<time>.log در پوشهٔ پیکربندی نگه داشته می‌شود. در Windows، Throne یک گزارش کرش (یک فایل .txt و یک فایل .dmp) هم در پوشهٔ crashes ذخیره می‌کند.
  3. با یک پیکربندی تازه تست کنید: از Throne خارج شوید، نام پوشهٔ config را تغییر دهید (تنظیمات (Settings) ← پوشه Config باز شود (Open Config Folder) آن را نشان می‌دهد) و Throne را اجرا کنید. Throne یک پیکربندی جدید و خالی می‌سازد. یک نمایه اضافه کنید و دوباره تست کنید. اگر کرش دیگر رخ نداد، پیکربندی قدیمی شما علت آن است. برای برگشتن، از Throne خارج شوید، پوشهٔ config جدید را حذف کنید و نام پوشهٔ قدیمی را به حالت قبل برگردانید. خط فرمان، فایل‌ها و گزارش‌ها را ببینید.
  4. کرش را گزارش دهید و این فایل‌ها را پیوست کنید: گزارش باگ.

مشکلات اجرا و محیط دسکتاپ

Throne در Linux اجرا نمی‌شود

Throne را از ترمینال اجرا کنید تا خطا را ببینید. برای بسته‌های .deb و .rpm:

/opt/Throne/Throne -appdata

برای نسخهٔ ZIP، ./Throne را در پوشهٔ آن اجرا کنید. سپس پیام را بررسی کنید:

  • Could not load the Qt platform plugin "xcb"، همراه با توضیحی که می‌گوید libxcb-cursor0 لازم است: libxcb-cursor0 (Debian، Ubuntu) یا xcb-util-cursor (Fedora) را نصب کنید (#1096).
  • This Qt build requires the following features: sse4.2 popcnt: به‌جای آن بستهٔ system-qt را نصب کنید (پرسش‌های متداول).
  • خطاهای دیگر Qt: بستهٔ system-qt را امتحان کنید که از Qt توزیع شما استفاده می‌کند.

Throne را با sudo اجرا نکنید. فقط هسته به دسترسی root نیاز دارد (پرسش‌های متداول).

آیکون سینی سیستم در GNOME دیده نمی‌شود

GNOME آیکون‌های سینی سیستم را نشان نمی‌دهد، مگر اینکه یک افزونهٔ AppIndicator نصب و فعال شده باشد. برای دیدن آیکون Throne در سینی سیستم، یکی از این افزونه‌ها را نصب کنید. اگر پنجرهٔ Throne پنهان است، Throne را دوباره اجرا کنید: نسخه‌ای که در حال اجراست پنجرهٔ خود را نشان می‌دهد. همچنین می‌توانید تنظیمات پایه (Basic Settings) ← استایل (Style) ← غیرفعال‌سازی سینی (Disable tray) را روشن کنید تا بستن پنجره، Throne را ببندد.

macOS می‌گوید Throne باز نمی‌شود

Throne با گواهی Apple امضا نشده است، بنابراین macOS برنامهٔ دانلودشده را مسدود می‌کند.

  1. Throne.app را به /Applications منتقل کنید.

  2. پرچم قرنطینه را در Terminal حذف کنید:

    xattr -d com.apple.quarantine /Applications/Throne.app
    
  3. Throne را دوباره باز کنید.

Throne پس از راه‌اندازی دوباره وصل نمی‌شود

برنامه (Program) ← آخرین نمایه را به خاطر بسپار (Remember last profile) را روشن کنید. در اجرای بعدی، Throne آخرین نمایه را دوباره اجرا می‌کند و اگر هنگام خروج پروکسی سیستمی (System Proxy) و حالتvpn (Tun Mode) روشن بوده‌اند، آن‌ها را دوباره روشن می‌کند. برای اجرای Throne همراه با سیستم، برنامه (Program) ← با سیستم شروع شود (Start with system) را روشن کنید.

Windows: وقتی Throne یک بار با دسترسی مدیر (administrator) اجرا شد، از آن پس در هر اجرا دسترسی مدیر را درخواست می‌کند. با سیستم شروع شود (Start with system) از یک وظیفه در Task Scheduler استفاده می‌کند که Throne را بدون پرسیدن و با همین دسترسی‌ها اجرا می‌کند. برای اجرا بدون دسترسی مدیر، تنظیمات پایه (Basic Settings) ← امنیت (Security) ← همیشه به‌عنوان کاربر استاندارد شروع شود (Always Start as Standard User) را روشن کنید.

  • Windows: نسخه‌های ZIP به‌طور پیش‌فرض لینک‌های throne:// را ثبت نمی‌کنند. تنظیمات پایه (Basic Settings) ← متداول (Common) ← Register throne:// links at startup را روشن کنید، یا روی Install در کنار آن کلیک کنید.
  • بررسی‌های بیشتر: لینک‌های عمیق.