Docs GitHub
-- --
Theme:
Language:
EN فا

انواع اسکن#

در منوی اسکن bgscan شش گزینه می‌بینید. هر گزینه با یک کلید اجرا می‌شود:

کلیدنوع اسکنتوضیحاتکاربرد اصلیفایل پیکربندی
iاسکن ICMPفرستادن درخواست اکو و اندازه‌گیری زمان رفت‌وبرگشتپیدا کردن IPهای فعالicmp_settings.toml
tاسکن TCPاتصال به یک پورت و اندازه‌گیری زمان Handshakeبررسی اتصال TCPtcp_settings.toml
hاسکن HTTPفرستادن یک درخواست HTTP و ثبت وضعیت، نسخه و TLSبررسی سرویس وبhttp_settings.toml
xاسکن Xrayعبور دادن ترافیک از Outbound و اندازه‌گیری آنبررسی اتصال و سرعت Xrayxray_settings.toml
rریزالور DNSامتحان‌کردن هر هدف به‌عنوان Resolver و بررسی هجکینگ DPIپیدا کردن Resolverهای سالمdns_settings.toml
dتونل DNSبررسی این‌که Resolverها می‌توانند تونل DNS را عبور دهند یا نهتست تونل‌های DNSTT، VayDNS و Slipstreamdns_settings.toml

ریزالور DNS یک اسکن Resolver مستقل اجرا می‌کند. هر IP هدف به‌عنوان Resolver تست می‌شود و در صورت فعال‌بودن، بررسی ضد هجکینگ (Anti-hijacking) هم انجام می‌شود.

تونل DNS اول مرورگر Configها را باز می‌کند. قبل از شروع اسکن، یکی از تونل‌های ذخیره‌شده (DNSTT، VayDNS یا Slipstream) را انتخاب می‌کنید. اگر check_dns_resolver در تنظیمات DNS Tunneling فعال باشد، مرحلهٔ تونل یک اسکن Resolver به‌عنوان پیش‌اسکن زنجیر می‌کند.

اسکن Xray اول می‌پرسد از کدام Outbound Template استفاده شود. اگر pre_scan_type روی icmp، tcp یا http باشد، آن مرحله قبل از Xray اجرا می‌شود و هدف‌ها را فیلتر می‌کند. با none اسکن Xray مستقیم اجرا می‌شود.

bgscan scan type

جزئیات اسکن‌ها#

اسکن ICMP#

  • پروتکل: ICMP Echo Request/Reply (همان پینگ خودمان)
  • کارکرد: درخواست‌های اکو را به آی‌پی‌های هدف می‌فرستد و زمان رفت و برگشت پاسخ‌ها (RTT) را اندازه‌گیری می‌کند. همهٔ Workerها یک Socket مشترک IPv4 و در صورت پشتیبانی سیستم، یک Socket مشترک IPv6 دارند و پاسخ‌ها به Worker فرستنده برمی‌گردند.
  • خروجی: زمان پاسخ‌دهی، تعداد تلاش و حالت Socket (raw یا UDP بدون نیاز به دسترسی ویژه).
  • تنظیمات کلیدی: مهلت زمانی (Timeout)، تعداد تلاش مجدد (Retries)، تعداد کانکارنسی ورکرها (Worker concurrency).
  • بهترین کاربرد: ارزان‌ترین راه برای کوچک‌کردن یک محدودهٔ بزرگ قبل از اسکن‌های سنگین‌تر.

اسکن TCP#

  • پروتکل: Connect Scan کامل، نه SYN Scan
  • کارکرد: Handshake را تا آخر روی پورت تنظیم‌شده کامل می‌کند و زمان اولین تلاش موفق را ثبت می‌کند. فقط Timeoutها تا سقف tries دوباره تلاش می‌شوند؛ Connection refused بلافاصله هدف را ناموفق می‌کند تا محدوده‌های مرده سریع تمام شوند.
  • خروجی: زمان برقراری اتصال، پورت و تعداد تلاش.
  • تنظیمات کلیدی: پورت هدف، مهلت زمانی، تعداد تلاش مجدد، تعداد کانکارنسی ورکرها.
  • بهترین کاربرد: کشف سرویس‌ها، اسکن پورت‌ها و تست فایروال.

اسکن HTTP#

  • پروتکل: HTTP/1.1، HTTP/2 یا HTTP/3 (انتخاب نسخه برای h1,h2 از طریق ALPN انجام می‌شود؛ h3 پروب QUIC جداگانه دارد)
  • کارکرد: برای هر هدف یک درخواست می‌فرستد و پاسخ را ارزیابی می‌کند. پاسخ‌های خارج از accepted_status_codes دور ریخته می‌شوند و فهرست خالی همه را قبول می‌کند.
  • خروجی: زمان پاسخ‌دهی، استاتوس کد، نسخهٔ توافق‌شدهٔ پروتکل و استفاده‌شدن یا نشدن TLS.
  • تنظیمات کلیدی: هاست/پورت هدف، پروتکل (HTTP/HTTPS)، اعتبارسنجی TLS، نسخهٔ HTTP، استاتوس کدهای مجاز، Fingerprint.
  • بهترین کاربرد: تست وب‌سرویس‌ها، کشف اندپوینت‌های API و بررسی لود بالانسرها.

اسکن Xray#

  • پروتکل: پروتکل اختصاصی Xray برای تست اتصال و پهنای باند
  • کارکرد: برای هر هدف یک پروسهٔ موقت Xray با Outbound Template انتخابی اجرا می‌کند و زمان اتصال را از طریق Proxy محلی اندازه‌گیری می‌کند. بسته به connectivity_test_type، تست دانلود، آپلود یا هر دو هم اجرا می‌شود و هدفی که سرعتش از حداقل تعیین‌شده کمتر باشد ناموفق حساب می‌شود.
  • خروجی: زمان اتصال به‌همراه سرعت دانلود و آپلود. اگر فقط اتصال تست شود، هر دو سرعت صفر ثبت می‌شوند.
  • تنظیمات کلیدی: مهلت زمانی، تعداد ورکرها، نوع تست (فقط اتصال/دانلود/آپلود/هر دو)، حداقل سرعت مجاز.
  • بهترین کاربرد: تست کیفیت خروجی شبکه، اندازه‌گیری سرعت و پهنای باند، شناسایی پروکسی‌ها و گلوگاه‌های شبکه.

ریزالور DNS#

  • پروتکل: پرس‌وجوهای DNS (از طریق UDP، TCP یا DNS-over-TLS)
  • کارکرد: هر IP هدف به‌عنوان Resolver استفاده می‌شود. اگر check_dpi فعال باشد، اول یک نام تصادفی .invalid پرسیده می‌شود؛ Resolverی که برای نامی که نمی‌تواند وجود داشته باشد موفقیت اعلام کند، دارد پاسخ ساخت و کنار گذاشته می‌شود. هدف‌های باقی‌مانده با Record typeهای تنظیم‌شده پرسیده می‌شوند تا یکی از آن‌ها کد پاسخ قابل قبول برگرداند.
  • خروجی: زمان پاسخ‌دهی، نوع Record جواب‌داده، تعداد تلاش، کد پاسخ و اجراشدن یا نشدن بررسی DPI.
  • تنظیمات کلیدی: ورکرهای ریزالور، پروتکل، دامین، انواع کوئری، مهلت زمانی، تلاش مجدد، کدهای پاسخ مجاز، بررسی‌های ضد هجکینگ (Anti-hijacking).
  • بهترین کاربرد: پیدا کردن دی‌ان‌اس سرورهای باز و پاسخگو و فیلترکردن Resolverهای هجک‌شده.

تونل DNS#

  • پروتکل: تونل DNS با سه پروتکل DNSTT، VayDNS و Slipstream
  • کارکرد: اول یکی از تونل‌های ذخیره‌شده را از مرورگر Config انتخاب می‌کنید و بعد بررسی می‌شود کدام Resolver می‌تواند آن تونل را عبور دهد. DNSTT و VayDNS تونل را با کتابخانهٔ vaydns داخل خود برنامه اجرا می‌کنند؛ Slipstream به باینری خارجی slipstream-client وابسته است.
  • خروجی: زمان پاسخ‌دهی تونل بعد از برقرارشدن؛ زمان راه‌اندازی تونل حساب نمی‌شود.
  • تنظیمات کلیدی: check_dns_resolver برای اجرای پیش‌اسکن Resolver و adaptive_resolver برای تطبیق خودکار تنظیمات Resolver (روش انتقال، پورت و دامین) با Config تونل.
  • بهترین کاربرد: پیدا کردن Resolverهایی که عبور تونل DNS از آن‌ها ممکن است.

هر پروب تونل برای هر هدف یک پورت محلی SOCKS5 می‌گیرد، پس بسیار کندتر از مرحلهٔ ریزالور است. برای تنظیمات هر پروتکل، تونل DNS را ببینید.

موضوعات مرتبط#