Skip to content

Adaptive Filtering Guide

hamid hmmh edited this page Jul 25, 2026 · 1 revision

راهنمای جامع Adaptive Filtering (سوئیچ خودکار)

ویژگی Adaptive Filtering در نسخه v1.5.0 معرفی شده است تا نودهای خارج بتوانند بدون مداخله‌ی اپراتور، در صورت فیلتر شدن حاملِ فعلی تونل (مثلاً WebSocket)، به‌طور هوشمند به حامل‌های جایگزین (مانند KCP) سوئیچ کنند.


🔬 منطق عیب‌یابی لایه‌ای (Layered Probes)

سرویس مانیتورینگ نود خارج، در بازه‌های زمانی مشخص پکت‌های پروب استاندارد به سرور ایران ارسال می‌کند. طبقه‌بندی خطاهای شبکه به شکل زیر است:

طبقه‌بندی (Classification) علت خطا اکشن اصلاحی
healthy اتصال کامل و بدون مشکل ماندن در حامل فعلی
dns_failed خطای نام‌سرور دامنه پروب مجدد / بررسی شبکه
tcp_timeout مسدود شدن پورت TCP ۴۴۳ یا آی‌پی آماده‌سازی سوئیچ به KCP (UDP)
tls_failed اختلال دستکاری TLS توسط DPI سوئیچ به KCP یا Plain (در صورت اجازه)
ws_rejected رد شدن هدرهای WebSocket بر روی Nginx بررسی مسیر WS_PATH و سوئیچ

🛠️ دستورات مدیریت CLI

۱. روشن کردن مانیتورینگ هوشمند:

sudo ratholenode adaptive on --interval 30 --failures 3 --recoveries 5
  • --interval 30: چک کردن شبکه هر ۳۰ ثانیه.
  • --failures 3: سوئیچ پس از ۳ قطعی متوالی.
  • --recoveries 5: بازگشت به WebSocket پس از ۵ تست موفق و اتمام Cooldown.

۲. بررسی وضعیت سوئیچ و حامل فعال:

sudo ratholenode adaptive status

۳. اجرای تست لایه‌ای دسترسی (خروجی JSON بهینه‌شده):

sudo ratholenode adaptive test --json

۴. خاموش کردن سوئیچ خودکار:

sudo ratholenode adaptive off

🔒 حریم خصوصی و امنیت (Sanitization)

تمام داده‌های zakhire-shode در /etc/rathole/adaptive-state.json به‌صورت Sanitized نگهداری می‌شوند. فیلدهای کلیدی و محرمانه مانند token یا WS_PATH هرگز در این فایل ثبت یا در API هاب لوز نمی‌شوند.

Clone this wiki locally