انواع اسکن#
در منوی اسکن bgscan شش گزینه میبینید. هر گزینه با یک کلید اجرا میشود:
| کلید | نوع اسکن | توضیحات | کاربرد اصلی | فایل پیکربندی |
|---|---|---|---|---|
i | اسکن ICMP | فرستادن درخواست اکو و اندازهگیری زمان رفتوبرگشت | پیدا کردن IPهای فعال | icmp_settings.toml |
t | اسکن TCP | اتصال به یک پورت و اندازهگیری زمان Handshake | بررسی اتصال TCP | tcp_settings.toml |
h | اسکن HTTP | فرستادن یک درخواست HTTP و ثبت وضعیت، نسخه و TLS | بررسی سرویس وب | http_settings.toml |
x | اسکن Xray | عبور دادن ترافیک از Outbound و اندازهگیری آن | بررسی اتصال و سرعت Xray | xray_settings.toml |
r | ریزالور DNS | امتحانکردن هر هدف بهعنوان Resolver و بررسی هجکینگ DPI | پیدا کردن Resolverهای سالم | dns_settings.toml |
d | تونل DNS | بررسی اینکه Resolverها میتوانند تونل DNS را عبور دهند یا نه | تست تونلهای DNSTT، VayDNS، Slipstream، MasterDNS، StormDNS و TheFeed | dns_settings.toml |
ریزالور DNS یک اسکن Resolver مستقل اجرا میکند. هر IP هدف بهعنوان Resolver تست میشود و در صورت فعالبودن، بررسی ضد هجکینگ (Anti-hijacking) هم انجام میشود.
تونل DNS اول مرورگر Configها را باز میکند. قبل از شروع اسکن، یکی از تونلهای ذخیرهشده (DNSTT، VayDNS، Slipstream، MasterDNS، StormDNS یا TheFeed) را انتخاب میکنید. اگر check_dns_resolver در تنظیمات DNS Tunneling فعال باشد، مرحلهٔ تونل یک اسکن Resolver بهعنوان پیشاسکن زنجیر میکند.
اسکن Xray اول میپرسد از کدام Outbound Template استفاده شود. اگر pre_scan_type روی icmp، tcp یا http باشد، آن مرحله قبل از Xray اجرا میشود و هدفها را فیلتر میکند. با none اسکن Xray مستقیم اجرا میشود.

جزئیات اسکنها#
اسکن 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، MasterDNS، StormDNS و TheFeed
- کارکرد: اول یکی از تونلهای ذخیرهشده را از مرورگر Config انتخاب میکنید و بعد بررسی میشود کدام Resolver میتواند آن تونل را عبور دهد. DNSTT و VayDNS تونل را با کتابخانهٔ vaydns داخل خود برنامه اجرا میکنند؛ Slipstream به باینری خارجی
slipstream-clientوابسته است و MasterDNS، StormDNS و TheFeed هم با کتابخانهٔ داخلی خودشان داخل برنامه اجرا میشوند. - خروجی: زمان پاسخدهی تونل بعد از برقرارشدن؛ زمان راهاندازی تونل حساب نمیشود.
- تنظیمات کلیدی:
check_dns_resolverبرای اجرای پیشاسکن Resolver وadaptive_resolverبرای تطبیق خودکار تنظیمات Resolver (روش انتقال، پورت و دامین) با Config تونل. - بهترین کاربرد: پیدا کردن Resolverهایی که عبور تونل DNS از آنها ممکن است.
پروبهای DNSTT، VayDNS و Slipstream برای هر هدف یک پورت محلی SOCKS5 میگیرند، پس بسیار کندتر از مرحلهٔ ریزالور هستند. برای تنظیمات هر پروتکل، تونل DNS را ببینید.