اسکنر فرگمنت
Batch Fragment Scanner
مقدمه
میدونیم که ابزار فرگمنت در حال حاضر بهترین روش برای دور زدن محدودیتی هست که روی دامنه های مرتبط با کلادفلیر اعمال شده، اما با توجه به این که مقادیر دائما از سمت اپراتورها در حال تغییر هست و پیدا کردن مقادیر جوابگو زمان بره، این اسکنر رو که در حال حاضربر پایه پاورشل هست و روی ویندوز 10 تست شده طراحی کردیم.
پیش نیازها:
- هسته Xray
- کانفیگ JSON
- اسکریپت PowerShell
مراحل:
1. دانلود هسته Xray
از لینک زیر هسته Xray رو دانلود کنید، فایل zip رو extract کنید.
https://github.com/XTLS/Xray-core/releases/download/v1.8.23/Xray-windows-64.zip
فایل xray (یا همون xray.exe) رو تو پوشه ای که میخواید اسکنر رو اجرا کنید، کپی کنید.
2. ساخت کانفیگ فرگمنت با فرمت json
به سایت زیر برید و یک کانفیگ سالم Vmess یا Vless یا Trojan رو وارد کنید. ترجیحا از نوع WS+TLS یا gRPC+TLS باشه.
https://fragment.github1.cloud/



پس از اینکه کانفیگ شناسایی شد، گزینه تبدیل به فرگمنت رو بزنید. بعد از ساخته شدن کانفیگ گزینه دانلود JSON رو بزنید و با اسم config.json ذخیره کنید.
3. دانلود و اجرای اسکریپت پاورشل
از لینک زیر، اسکریپت پاورشل رو دانلود کنید و در پوشه محیط کار بذارید.
https://github.com/Surfboardv2ray/batch-fragment-scanner/releases/download/3.3/batch-fragment-test.ps1
دو نکته مهم قبل اجرای اسکریپت پاورشل:
- دقت کنید که هر سه فایل config.json و xray.exe و فایل اسکریپت پاورشل batch-fragment-test.ps1 باید توی یه فولدر باشن.
- برای جلوگیری از تداخل، مطمئن شید که اپ v2rayN و اپ های مشابه بسته باشن.
حالا روی فایل اسکریپت پاورشل راست کلیک کنید و Run with PowerShell رو بزنید.

اینجا چهارتا سوال ازتون میپرسه:
- برای مورد اول y رو تایپ کنید و اینتر رو بزنید تا اجازه اجرای اسکریپت داده بشه.
- مورد دوم، میتونید تعداد راند های اسکن رو تغییر بدید. پیش فرض 10 هست، ینی 10 ترکیب تصادفی با مقادیر وارد شده رو قراره تست کنه.
- مورد سوم، میتونید زمان تایم اوت برای تست های پینگ تعیین کنید.
- مورد چهارم، فقط در صورتی که Listening port داخل config.json رو تغییر دادین، اینجا هم تغییر رو اعمال کنید. اگه نه این مورد رو هم با اینتر رد کنید.
در مراحل 2 تا 4، با زدن enter مقدار پیش فرض وارد میشه.

صبر کنید تا اسکن تموم شه. بعد اتمام، سه تا از بهترین پینگ ها رو بهتون نمایش میده و در فایل pings.txt، گزارش همه تست های انجام شده رو ذخیره میکنه.

ویدیو آموزش استفاده از اسکریپت
https://www.youtube.com/watch?v=wL3-bRxM_2o
رفع مشکلات و عیب یابی
- اگر از ویندوز 11 استفاده میکنید، آخرین نسخه اسکریپت رو امتحان کنید.
- اگر همچنان در ابتدای اجرای اسکریپت به مشکل برمیخورید، آخرین نسخه پاورشل رو دانلود کنید.
- تاکید مجدد بر اینکه v2rayN رو حتما قبل از اجرای اسکریپت ببندید.
- اگر حتی با وجود تعداد instance و مقدار timeout بالا همچنان پینگ های نامعتبر دریافت میکنید، پس از اتمام فرآیند اسکریپت، فایل xraylogs.txt رو جهت بررسی مشکلی به غیر از جواب نبودن مقادیر فرگمنت (مشکل از اجرا شدن هسته xray، متناسب نبودن نسخه xray با نسخه ویندوز، باز بودن فایل های گزارشات یا کانفیگ در حین اجرای اسکریپت، اشغال بودن http listening port) چک کنید.
گزارش تغییرات
نسخه 3.3:
- رفع مشکل در اجرای هسته Xray به دنبال کاراکتر "فاصله" در مسیر اسکریپت
- جلوگیری از ست های تکراری مقادیر تصادفی فرگمنت
- درخواست مجدد ورودی در صورت بیشتر بودن Instances از حالت های ممکن تصادفی.
نسخه 3.2:
- رفع مشکل اجرای مستقیم اسکریپت روی ویندوز 11.
- امکان تغییر تعداد درخواست (پینگ) در هربار تست
- جایگزین کردن tlshello با 1-1 در مقادیر پیش فرض packets
- محاسبه میانگین پینگ پس از ارسال اولین درخواست (رفع مشکل پینگ صفر)
نکات پایانی:
- تعداد حالت های تصادفی برای تست مثل مسائل ریاضی، حاصلضرب تعداد حالتها برای packets و length و interval هست؛ مثلا اگر سه حالت برای packets، ده حالت برای length و ده حالت برای interval داشته باشیم، در مجموع 300 حالت تصادفی وجود داره. عددی که برای تعداد راند های تصادفی انتخاب میکنید باید کمتر مساوی این حاصل ضرب باشه.
- برای این سه متغیر، مقادیر پیش فرض تعیین شده. در صورت تمایل میتونید فایل ps1 رو ادیت کنید و در قسمت Arrays of possible values for packets, length, and interval مقادیری که میخواید رو جایگزین یا اضافه کنید.
- با تشکر فراوان از گروه IRCF Space
- با تشکر از v2rayirani جهت ویدیو آموزشی
- batch-fragment-scanner