# آموزش استفاده از وارپ روی هیدیفای‌اپ
وارپ یکی از سرویس‌های بر مبنای وایرگارد است که توسط کلاودفلر ارائه می‌شود. با استفاده از این پروتکل می‌توان از طریق ایجاد یک پروکسی سیستم فیلترینگ را دور زد. هیدیفای‌اپ نیز از این پروتکل پشتیبانی می‌کند که در ادامه به توضیحاتی در خصوص تنظیمات این پروتکل و نحوه استفاده از آن ارائه می‌شود.

## پارامترهای وارپ
در هیدیفای‌اپ پارامترهای مختلفی می‌توان تعیین نمود که به ترتیب توضیح داده می‌شوند.

### مدهای مختلف:
۶ مد اصلی وجود دارد و ۲ مد پیشرفته که با استفاده از آن‌ها یک هدر (نویز) برای وارپ ایجاد می‌شود تا به کمک آن از فیلترینگ عبور کند.

- m1: در این مد هدر به صورت تصادفی ایجاد می‌شود.
- m2: در این مد هدر به صورت تصادفی و بدون تغییر ایجاد می‌شود و هیچ اثری از وایرگارد و وارپ در هدر نیست.
- m3: در این مد از پروتکل QUIC برای ایجاد هدر استفاده می‌شود.
- m4: در این مد از QUIC استفاده می‌شود و غیر قابل تغییر است و هیچ اثری از وایرگارد و وارپ در هدر نیست.
- m5: این مد از LQUIC استفاده می‌کند.
- m6: این مد از LQUIC استفاده می‌کند و بدون تغییر است و هیچ اثری از وایرگارد و وارپ در هدر نیست.
- gHEX: این مد که حالت پیشرفته است از یک عدد HEX برای هدر وارپ استفاده می‌کند تا نویز را ایجاد نماید.
- hHEX: این مد نیز که پیشرفه است از همان عدد HEX برای هدر وارپ استفاده می‌کند ولی تغییرات ندارد و هیچ اثری از وایرگارد و وارپ در هدر نیست.

این هدرها با پارامتر IFPM در وارپ تعریف می‌شود. مقلا: `ifpm=m4` یا `ifpm=h04ad5d` یا `ifpm=g04ad5d`

!!! tip "نکته!"
    مد پیشنهادی `m4` است.

### تعداد، سایز و دیلی پکت نویز
این پارامترها به این شکل هستند:

- تعداد بسته‌های نویز: تعداد بسته‌های مربوط به نویز را با استفاده از `ifp` می‌توان در وارپ تعریف نمود که به صورت یک بازه تعریف می‌شود و هر بار به صورت تصادفی یک عدد بین این بازه انتخاب می‌شود. مثلا:`ifp=40-80` یعنی بین ۴۰ تا ۸۰ عدد بسته برای نویز به صورت تصادفی ایجاد می‌شوند.
- سایز بسته‌های نویز: سایز بسته‌ها را با استفاده از پارامتر `ifps` می‌توان تعریف نمود که این نیز به صورت یک بازه تعریف می‌شود و هر بار به صورت تصادفی یک سایز در این بازه انتخاب می‌شود. مثلا: `ifps=40-100` یعنی هر بار یک بسته نویز با سایز تصادفی بین بازه ۴۰ تا ۱۰۰ بیت ساخته می‌شود.
- تاخیر ارسال بسته‌های نویز: تاخیر با استفاده از پارامتر `ifpd` تعریف می‌شود که این مورد نیز به صورت بازه تعریف می‌شود و هر بار بسته‌ها با یک تاخیر تصادفی بین این بازه ارسال می‌شوند. مثلا: `ifpd=4-8` یعنی بسته‌ها با تخیری بین ۴ تا ۸ ثانیه به صورت تصادفی ارسال می‌شوند. بدیهی است که هرچه این بازه کمتر باشد بهتر است.

### تنظیمات آیپی
تنظیمات آیپی کانفیگ‌ها به چند شکل انجام می‌شود:

- auto4: یک IPv4 خودکار توسط کلادفلر به کانفیگ تخصیص داده می‌شود.
- auto6: یک IPv6 خودکار توسط کلادفلر به کانفیگ تخصیص داده می‌شود.
- auto: هر دو رنج IPv4 و Ipv6 توسط کلادفلر به کانفیگ تخصیص داده می‌شود.
- IPv4 تمیز: آیپی ورزن ۴ را می‌توان به صورت مستقیم وارد کانفیگ کرد. مثلا:
  `188.114.97.170`
  
- IPv6 تمیز: آیپی ورژن ۶ را بایستی با استفاده از `[]` وارد کانفیگ نمود. مثلا: `[2a01:4ef:f0:10a5::1]`


!!! tip "نکته!"
    برای یافتن آیپی‌های تمیز می‌توان از اسکنرهای مختلف استفاده نمود. مثلا این اسکنرها: [1](https://github.com/MortezaBashsiz/CFScanner) ، [2](https://github.com/azavaxhuman/Quick_Warp_on_Warp) ، [3](https://github.com/Ptechgithub/warp)

### نام نمایشی کانفیگ:
برای ایجاد نام نمایشی یا ریمارک نمودن کانفیگ می‌توان در انتهای کانفیگ از یک `#‍` استفاده نمود و اسم مورد نظر را اضافه نمود. دقت شود که اسم باید به صورت یک تکه باشد. مثلا:
<div dir=ltr markdown=1>
    
`warp://auto#NAME`
</div>
 ### وارپ در وارپ
 با استفاده از این قابلیت می‌توان از دو وارپ مختلف استفاده نمود و یکی را در انتهای دیگری قرار داد. بدین ترتیب فرضا شما با وارپ اول متصل می‌شوید سپس از آنجا به وارپ دوم متصل می‌شوید و آیپی نهایی، آیپی وارپ دوم می‌شود. برای استفاده از این قابلیت باید از پارامتر `detour` استفاده نمود و ان را با `&&` در انتهای وارپ اول قرار داد و سپس وارپ دوم را اضافه نمود. مثلا:

<div dir=ltr markdown=1>
    
`warp://auto&&detour=warp://auto`
</div>

### فرمول کلی کانفیگ وارپ:
کانفیگ وارپ را می‌توان با استفاده از این فرمول ساخت. در این حالت یک کانفیگ ثابت در نرم‌افزار ایمپورت می‌شود.
<div dir=ltr markdown=1>
    
`warp://License@IP:port?ifp=n1-n2&ifps=s1-s2&ifpd=d1-d2&ifpm=mode#name`
</div>

مثال:

<div dir=ltr markdown=1>
    
`warp://auto?ifp=40-80&ifps=40-100&ifpd=4-8&ifpm=m4#m4`
</div>

در این حالت یک کانفیگ وارپ با نام نمایشی `m4` در نرم‌افزار ایمپورت می‌شود.

همچنین می‌توان دو وارپ را detour نمود. مثلا:

<div dir=ltr markdown=1>
    
`warp://auto?ifp=40-80&ifps=40-100&ifpd=4-8&ifpm=m4#m4&&detour=warp://188.114.97.170:894?ifp=40-80&ifps=40-100&ifpd=4-8&ifpm=m3#m3`
</div>

در این حالت یک کانفیگ با نام `m4` و یک کانفیگ detour شده برای وارپ در وارپ (WoW) با نام `m3` در نرم‌افزار ایجاد می‌شود.

در نهایت توصیه می‌شود نمونه کانفیگ‌های وارپ از [اینجا](کانفیگ‌های نمونه برای وارپ (https://raw.githubusercontent.com/hiddify/hiddify-next/main/test.configs/warp)) و [اینجا](https://raw.githubusercontent.com/hiddify/hiddify-next/main/test.configs/warp2) ملاحظه شوند.

!!! tip "نکته پایانی!"
    - برای رسیدن به کانفیگ مناسب باید با استفاده از اسکنرهای بالا آیپی تمیز مناسب شبکه خود را پیدا کنید و سپس مطابق با فرمول وارپ کانفیگ را بسازید. 
    - همچنین رنج پارامترها را دستکاری کنید تا به نتیجه مطلوب برسید. 
