پروکسی و ویپیان (zev proxy، zev vpn)
وقتی Zaryn یا سایتهای دیگر بستهاند، سرورهای VLESS، VMess، Trojan، Shadowsocks، Hysteria2 یا WireGuard خود را برای zev، همهٔ برنامهها یا کل رایانه (ویپیان) به کار ببرید.
دنبال فرمانی برای اجرا بگردید…
وقتی Zaryn یا سایتهای دیگر بستهاند، سرورهای VLESS، VMess، Trojan، Shadowsocks، Hysteria2 یا WireGuard خود را برای zev، همهٔ برنامهها یا کل رایانه (ویپیان) به کار ببرید.
بعضی شبکهها راه Zaryn، گیتهاب و خیلی چیزهای دیگر را میبندند یا کند میکنند. اگر سرور پروکسیای دارید که روی آن شبکه کار میکند (VLESS، VMess، Trojan، Shadowsocks، Hysteria2، WireGuard، SOCKS5 یا HTTP)، zev در سطحی که انتخاب میکنید از آن استفاده میکند:
| چه چیزی از پروکسی میگذرد | چطور | |
|---|---|---|
| فقط zev (پیشفرض) | اتصالهای خود zev: ورود، clone، push، pull، zev self update، شبکههای خصوصی | zev proxy use <name> |
| هر برنامهای که به آن بفرستید | هر چیزی که پروکسی SOCKS5 یا HTTP را بلد است: مرورگرها، git، SSH، pip، npm، cargo، apt… | zev proxy share on (پورت 10808)، سپس zev proxy system on و zev proxy ssh |
| کل رایانه | همهٔ برنامهها، DNS و IPv6 آنها، بدون هیچ تنظیمی در خودشان | sudo zev vpn on (لینوکس) |
zev هرگز از پروکسیای که انتخاب نکردهاید استفاده نمیکند و وقتی پروکسی کار نکند هرگز به اتصال مستقیم برنمیگردد. با اینها جای برنامههایی مثل v2rayN، NekoRay یا Hiddify را میگیرد: کوچ از v2rayN یک دقیقه طول میکشد.
zev proxy start # بار اول لینک سرورتان را میپرسدzev proxy stopzev proxy start همه کار را میکند: سرور را ذخیره میکند، اگر لازم باشد موتور را نصب میکند، پورت اشتراکی 127.0.0.1:10808 را برای همهٔ برنامهها باز میکند، پروکسی میزکارتان را تنظیم میکند و بعد نشان میدهد از کجا دیده میشوید. پس از راهاندازی دوبارهٔ رایانه هم روشن میماند. zev proxy stop همهٔ آن را دوباره خاموش میکند.
zev proxy start 'vless://…' # با یک سرور تازه (نقلقولها را نگه دارید)zev proxy start --tun # کل رایانه: یک ویپیان (رمز sudo را میپرسد)zev proxy start --tun --kill-switch # ... و اگر بایستد هیچ چیز مستقیم بیرون نمیرودzev proxy # روشن است؟ از کدام سرور؟بقیهٔ این صفحه هر بخش را توضیح میدهد، برای وقتی که کنترل بیشتری میخواهید.
zev proxy در همهٔ طرحها رایگان است: پروکسی مال خودتان است و هیچ ترافیکی از آن از Zaryn نمیگذرد. شبکههای خصوصی بخشی از Premium هستند، پس استفاده از آنها از راه پروکسی هم همینطور است.
در ادامه: لینکهایی که zev میشناسد، سپس چگونگی افزودن لینک خودتان.
zev لینکهای اشتراکگذاری برنامههای VPN (v2rayN، v2rayNG، Hiddify، Nekoray، Shadowrocket) و لینکهای اشتراکی که فروشندهها میدهند را میشناسد:
| لینک | چیست | لازم دارد |
|---|---|---|
vless://… | VLESS: با TLS یا REALITY، XTLS Vision، رمزنگاری VLESS (مثل mlkem768x25519plus)، و انتقالهای tcp، ws، grpc، xhttp و httpupgrade | موتور Xray |
vmess://… | VMess (قالب v2rayN)، با همان TLS و انتقالها | موتور Xray |
trojan://… | Trojan، روی TLS یا REALITY، با همان انتقالها | موتور Xray |
ss://… | Shadowsocks: رمزهای ۲۰۲۲ (2022-blake3-…) و aes-128-gcm، aes-256-gcm، chacha20-poly1305 | موتور Xray |
hysteria2://… یا hy2://… | Hysteria2 روی QUIC، با پنهانسازی Salamander (obfs=salamander) | موتور Xray |
wireguard://… یا wg://… | WireGuard، از جمله Cloudflare WARP (reserved=)؛ بدون نیاز به root | موتور Xray |
socks5://user:pass@host:port | پروکسی SOCKS5 | هیچ |
http://… یا https://… | پروکسی HTTP | هیچ |
| نشانی اشتراک | فهرستی از هر کدام از اینها، از فروشندهتان: اشتراکها را ببینید |
zev آنچه امن نیست یا کار نمیکند را از اول نمیپذیرد، نه اینکه بعداً خطا بدهد: رمزهای قدیمی جریانی Shadowsocks (aes-256-cfb، rc4-md5)، افزونههای Shadowsocks، و انتقالهایی که Xray کنار گذاشته (h2، kcp، quic). insecure=1 یا allowInsecure در لینک هرگز بررسی گواهی را خاموش نمیکند؛ اگر سرورتان گواهی خودش را دارد، آن را با pcs= (یا برای Hysteria2 با pinSHA256=) سنجاق کنید، همانطور که برنامهٔ فروشندهتان میکند.
آن را با نامی که خودتان انتخاب میکنید ذخیره کنید. لینک شامل اطلاعات حساب شماست؛ برای اینکه در تاریخچهٔ ترمینال نماند، آن را ننویسید و وقتی پرسیده شد بچسبانید:
zev proxy add work --usePaste the link, then press Enter:vless://…✓ Saved work: vless proxy.example.com:443 tcp+tls xtls-rprx-vision mlkem768x25519plus fp=firefox sni=… pinned--use آن را پروکسیای هم میکند که zev از این به بعد استفاده میکند. لینکهای ذخیرهشده در ~/.config/zev/proxies هستند و فقط خودتان میتوانید آن را بخوانید. zev proxy ls آنها را بدون بخشهای محرمانهشان نشان میدهد.
اگر فروشندهتان یک نشانی اشتراک داده (یک لینک که سرورهای زیادی را فهرست میکند و وقتی عوض میشوند بهروز میشود)، یک بار اضافهاش کنید:
zev proxy sub add myvpn https://provider.example/sub/abc123✓ myvpn: 24 servers (12 vless, 6 trojan, 4 shadowsocks, 2 hysteria2), named myvpn-1 … myvpn-24 Pick one: zev proxy use myvpn-1 (zev proxy test myvpn-1 tries it first)zev آن را از راه پروکسیای که الان استفاده میکنید دانلود میکند (میزبان اشتراکها هم اغلب بسته است)، و اگر نشد، مستقیم. سرورهایی که قابل استفاده نیستند با دلیلشان فهرست میشوند و بقیه ذخیره میشوند.
| فرمان | چه میکند |
|---|---|
zev proxy sub update [<نام>] | دوباره دانلودش میکند: سرورهایش با فهرست تازه جایگزین میشوند. اگر سروری که استفاده میکنید حذف شده باشد، zev میگوید و مستقیم وصل میشود |
zev proxy sub ls | اشتراکها و تعداد سرورهای هر کدام |
zev proxy sub rm <نام> | فراموش کردن اشتراک و سرورهایش |
قالب معمول base64 و فهرست سادهی لینکها هر دو کار میکنند. فایلهای Clash (proxies:) و sing-box (JSON) لینک اشتراکگذاری نیستند: از فروشندهتان قالب v2ray / لینک اشتراک همان اشتراک را بخواهید.
همه چیز بهجز SOCKS5 و HTTP را Xray-core صحبت میکند که zev خودش روی همین رایانه اجرایش میکند. یک بار نصبش کنید:
zev proxy engine installzev همان نسخهای از Xray را که با آن آزموده شده دانلود میکند و پیش از باز کردن، SHA-256 آن را بررسی میکند. اگر GitHub بسته است، فایل zip مخصوص سیستمتان را از راه دیگری بگیرید و zev proxy engine install --from Xray-linux-64.zip را اجرا کنید (همان بررسی انجام میشود). Xrayای که از قبل دارید هم کار میکند: zev در PATH میگردد، یا ZEV_XRAY=/path/to/xray را تنظیم کنید.
zev proxy testwork: vless proxy.example.com:443 tcp+tls xtls-rprx-vision … engine ✓ Xray on 127.0.0.1:41377 (48 ms) Zaryn ✓ 200 in 310 ms internet ✓ 204 in 290 mszev proxy test <نام> یک پروکسی ذخیرهشده را بدون رفتن روی آن امتحان میکند. اگر بررسیای ناموفق باشد، آخرین خطهای گزارش Xray زیرش نمایش داده میشود.
برای دیدن اینکه zev دقیقاً با یک لینک چه میکند، zev proxy config <نام> پیکربندی Xrayای را که اجرا میکند چاپ میکند (رمزهای پروکسی در آن هست، پس با کسی به اشتراک نگذاریدش).
zev proxy doctor پیدا میکند چه چیزی بین شما و Zaryn ایستاده، آنچه را zev خودش میتواند درست کند درست میکند، و هر درمان را پیش از نگه داشتن با یک درخواست واقعی امتحان میکند:
zev proxy doctorChecking the way to Zaryn through work: vless proxy.example.com:443 tcp+tls fp=chrome …Network: wlan0 via 192.168.1.1; fixes in force: nonework vless proxy.example.com:443 … ✗ DNS lies: this network answers 10.10.34.36 for proxy.example.com, DNS over HTTPS 203.0.113.9 (only that one accepts connections) fix: look names up with DNS over HTTPS (https://1.1.1.1/dns-query) ✓ TCP: 203.0.113.9:443 connects in 84 ms ✗ SNI filtering: TLS naming proxy.example.com is reset, naming www.example.com goes through · the reset comes from 3 routers away, near you: in your provider's network (the server is 14 away)Finding a way through 8 ways at once · as it is: no way through · ClientHello in pieces (split: 10-20 byte pieces): 231 ms … ✓ kept: ClientHello in pieces (split: 10-20 byte pieces) (the cheapest that works, and proven again)Result ✓ api.zaryn.xyz answers through the proxy (200 in 310 ms) ✓ saved for wlan0 via 192.168.1.1: every zev command here uses them, and zev picks them up again when you're back on this networkدنبال چه میگردد و چه میکند:
| مشکل | zev از کجا میفهمد | zev چه میکند |
|---|---|---|
| DNS دروغگو | پاسخ شبکه برای نام پروکسی در برابر DNS روی HTTPS (که مستقیم با نشانی IP پرسیده میشود)؛ پاسخ متفاوتی که هیچ اتصالی نمیپذیرد، یا نشانی خود فیلتر (10.10.34.x)، دروغ است | از آن به بعد نامها را با DNS روی HTTPS پیدا میکند، هم zev و هم Xray |
| فیلتر SNI | TCP وصل میشود، ولی دستدادن TLS که نام سرور را میبرد قطع میشود، در حالی که با نام سایتی دیگر رد میشود | راههای دور زدنش را مسابقه میدهد (پایینتر) |
| فیلتر کجاست | دستدادن دوباره با TTL برابر ۱، ۲، ۳ … فرستاده میشود: پس از همان تعداد روتر از بین میرود، پس اولین فاصلهای که reset میگیرد جای فیلتر است | میگوید فیلتر در شبکهٔ سرویسدهندهٔ شماست یا نزدیک سرور |
| IPv6 خراب | نشانی IPv6 نام به مهلت تمامشده میخورد در حالی که IPv4 وصل میشود (هر اتصال اول منتظر IPv6 میماند) | فقط IPv4 |
| درگاه بسته | درگاه پروکسی جواب نمیدهد در حالی که درگاههای دیگر همان نشانی جواب میدهند | میگوید کدام درگاهها جواب میدهند: از گردانندهٔ سرور لینکی روی یکی از آنها بخواهید |
| نشانی بسته | هیچ درگاهی از آن نشانی جواب نمیدهد | همین را میگوید: سروری دیگر، یا لینکی پشت CDN |
| یخزدگی | درخواستهای کوچک کار میکنند ولی دانلود پس از ۱۵ تا ۲۰ کیلوبایت میایستد و دیگر ادامه نمییابد (فیلترها اتصالهایی را که نمیشناسند گرسنه نگه میدارند) | همین را میگوید: لینک REALITY یا XHTTP، یا سروری دیگر، معمولاً از آن در امان است |
| کندسازی | دانلودها میخزند | همین را با سرعت میگوید |
| ساعت | سرآیند Date سرور Zaryn در برابر ساعت شما: VMess اتصالهای بیش از ۲ دقیقه اختلاف را رد میکند، و با چند روز اختلاف گواهیها منقضی به نظر میرسند | میگوید چطور تنظیمش کنید (به دسترسی مدیر نیاز دارد) |
| شنود TLS | گواهی Zaryn در مسیر مستقیم معتبر نیست: چیزی به جای آن جواب میدهد (یا صفحهٔ ورود Wi-Fi) | هرگز بررسی گواهی را خاموش نمیکند؛ لینکی با گواهی پینشده از آن عبور میکند |
وقتی راه کار نمیکند، doctor مجبورتان نمیکند تنظیمات را حدس بزنید. همه را همزمان در یک Xray امتحان میکند، هر کدام راهی جدا به سرور:
split ۱۰ تا ۲۰ بایت، large ۱۰۰ تا ۲۰۰ بایت، tiny ۱ تا ۵ بایت)، تا فیلتری که نام سرور را میخواند هرگز آن را یکجا در یک بسته نبیند؛زمان هر راه اندازه گرفته میشود و ارزانترینی که کار میکند برنده است (کمی زمان اضافه به حساب تکههای ریز گذاشته میشود که هر اتصال را کند میکنند). سپس برنده باید در موتوری که zev واقعاً اجرا میکند، با یک درخواست واقعی، دوباره کار کند؛ راهی که فقط یک بار رد شده کنار گذاشته میشود و نوبت بعدی است. تا این امتحان قبول نشود چیزی ذخیره نمیشود.
درمانها برای شبکهای که رویش هستید ذخیره میشوند، که zev آن را از روی روترش میشناسد (هشی از نشانی و نشانی سختافزاری روتر؛ روی لینوکس). خانه، محل کار و هاتاسپات گوشی هر کدام درمانهای خودشان را دارند، و وقتی برمیگردید zev خودش دوباره سراغشان میرود. جاهای دیگر، درمانهایی که دستی تنظیم کردهاید اعمال میشوند.
zev proxy set # این شبکه، درمانهایش، و شبکههایی که zev به یاد داردzev proxy set forget # فراموش کردن آنچه doctor اینجا پیدا کردzev proxy set fragment split # تنظیم دستی، برای همهٔ شبکهها (dns <url>، ipv4 on، fp <name> … ، یا off)zev proxy doctor --no-fix # فقط نگاه کن، چیزی را عوض نکنzev proxy doctor home # بررسی پروکسی ذخیرهشدهٔ دیگریzev proxy doctor --json کل گزارش را به شکل JSON چاپ میکند: هر یافته با راهنماییاش، درمانها، اینکه ذخیره شدند یا نه، و فاصلهٔ فیلتر. هرگز لینک یا رمزهایش در آن نیست، پس میشود آن را در درخواست پشتیبانی چسباند یا به یک دستیار داد.
وقتی پروکسیای انتخاب شد کار دیگری لازم نیست: همهٔ فرمانهای zev از راه آن میروند. موتور با اولین فرمانی که وصل میشود روشن میشود و برای فرمانهای بعدی روشن میماند.
zev proxy status # کدام پروکسی، و اینکه موتور روشن است یا نهzev proxy use home # رفتن روی پروکسی ذخیرهشدهٔ دیگریzev proxy off # دوباره اتصال مستقیمzev proxy stop # خاموش کردن همه چیز (پورت اشتراکی، میزکار، ویپیان)zev proxy rm old # فراموش کردن یک پروکسیبرای یک فرمان، یا در اسکریپتها و CI، ZEV_PROXY انتخاب را عوض میکند: یک نام ذخیرهشده، یک لینک، یا off.
ZEV_PROXY=off zev pullZEV_PROXY=home zev pushzev proxy share onاز آن به بعد 127.0.0.1:10808 پورت پروکسیای است که هر برنامهای میتواند به کار ببرد؛ SOCKS5 و HTTP روی یک پورت (10808 همان پورتی است که v2rayN به کار میبرد، پس تنظیماتی که برای آن کردهاید کار میکنند). در پسزمینه اجرا میشود، با ورودتان دوباره شروع میشود، و:
zev proxy use other عوضش میکند، یک گروه سرور خودش به سریعترین سرور سالم میرود، و اصلاحهایی که zev proxy doctor برای شبکهای که در آن هستید پیدا کرده، وقتی بین شبکهها جابهجا میشوید همراهتان میآیند؛zev proxy off) پورت بسته میشود، به جای اینکه ترافیک مستقیم بیرون برود (خودش درست میشود بیشتر میگوید).zev proxy share status # در حال اشتراک؟ از کدام سرور، از کیzev proxy share on --port 1080zev proxy share offدستگاههای دیگر شبکهتان (گوشی، لپتاپ دوم): zev proxy share on --lan پورت را پشت یک رمز به شبکهٔ محلی باز میکند که zev چاپش میکند. پروکسی دستگاه را روی نشانی این رایانه، پورت 10808، کاربر zev و همان رمز بگذارید. zev proxy share on --local دوباره آن را به روی شبکه میبندد.
نشانیهای شبکهٔ خودتان (LAN، 10.0.0.0/8، 192.168.0.0/16 و مانند آنها) مستقیم میروند، نه از پروکسی.
zev proxy system on # تنظیم پروکسی GNOME یا KDE → پورت اشتراکی؛ ترمینالهای تازه http_proxy و all_proxy… میگیرندzev proxy system offمرورگرها و بیشتر برنامههای میزکار از تنظیم سیستم پیروی میکنند. ترمینالهایی که پس از ورود تازه باز میشوند http_proxy، https_proxy و all_proxy را میگیرند (از ~/.config/environment.d/90-zev-proxy.conf).
zev proxy ssh # GitHub، GitLab و Codeberg از راه پروکسیzev proxy ssh github.com myserver # یا میزبانهایی که نام میبریدzev proxy ssh offzev یک بخش با علامت روشن در بالای ~/.ssh/config میگذارد با ProxyCommand zev proxy connect %h %p؛ از آن به بعد git push به گیتهاب از پروکسی میرود و چیز دیگری در فایل عوض نمیشود. zev proxy connect <host> <port> هر جا ProxyCommand کار کند کار میکند و نه nc لازم دارد نه پورت اشتراکی (وقتی اشتراک خاموش است از موتور خود zev استفاده میکند).
zev proxy run git pushzev proxy run pip install requestszev proxy run -- curl https://example.comدستور، http_proxy، https_proxy، all_proxy و یک GIT_SSH_COMMAND میگیرد که از پروکسی میگذرد؛ پس HTTP، SOCKS و git از راه SSH همه از آن استفاده میکنند. کد خروجش همان کد خروج zev است.
روی لینوکس، zev میتواند همه چیز را ببرد: همهٔ برنامهها، بدون هیچ تنظیم پروکسی در خودشان، بهاضافهٔ جستوجوهای DNS و IPv6 آنها.
sudo zev vpn onsudo zev vpn on --kill-switchsudo zev vpn on --exclude example.ir,192.0.2.0/24zev vpn statussudo zev vpn offzev proxy use انتخاب کردهاید (بهعنوان خودتان؛ sudo فقط شبکه را راه میاندازد)، و وقتی عوضش کنید دنبالش میآید.--exclude بعضی سایتها یا نشانیها را مستقیم میفرستد (نام، نشانی IP، بازهٔ CIDR). zev proxy route iran سایتهای ایران را در همهٔ حالتها مستقیم میفرستد.--kill-switch: اگر ویپیان به هر دلیل بایستد، هیچ چیز مستقیم بیرون نمیرود؛ فقط شبکهٔ محلی کار میکند تا ویپیان برگردد یا sudo zev vpn off را اجرا کنید.چطور کار میکند: zev یک رابط شبکه (zev0) میسازد که موتور Xray آن را میخواند، و همه چیز را به آن میفرستد جز آنچه مسیر دقیقتری دارد و اتصالهای خود موتور (که یک علامت دیوارهٔ آتش دارند تا دور نزنند). sudo zev vpn off رابط، مسیرها، قاعدهها و جدول دیوارهٔ آتش را برمیدارد؛ چیزی جا نمیماند.
روی macOS و ویندوز فعلاً zev proxy share on را با zev proxy system on به کار ببرید.
پورت اشتراکی و ویپیان هر ۳۰ ثانیه بررسی میکنند که ترافیک واقعاً میگذرد. وقتی سه بررسی پشت سر هم ناموفق باشد:
zev proxy doctor را اجرا میکند، حداکثر هر ۱۰ دقیقه یک بار. پیدا میکند چه چیزی در این شبکه راه را بسته (DNS دروغگو، پورت بسته، فیلتر SNI، ساعت نادرست) و اصلاحی برای همین شبکه ذخیره میکند.در یک گروه سرور، سرور از کار افتاده در این میان کنار گذاشته میشود. وقتی کیلسوییچ ویپیان روشن است، zev ویپیان را برای doctor متوقف نمیکند و فقط موتور را دوباره راه میاندازد.
$ zev proxy checkWhere you appear from through zev 203.0.113.9 (DE) without zev 5.160.12.34 (IR)Leaks ✓ every app goes through the VPN (they appear from the proxy's address) ✓ DNS goes through the tunnel ✓ no IPv6 way out (nothing to leak)نشانی و کشوری را نشان میدهد که سایتها از راه پروکسی و بدون آن میبینند، و وقتی ویپیان روشن است، اینکه آیا همهٔ برنامهها، DNS و IPv6 واقعاً از آن میگذرند.
zev proxy topترافیک زندهٔ پورت اشتراکی یا ویپیان: هر بخش در کل و همین حالا چقدر فرستاده و گرفته (خود zev، پورت اشتراکی، ویپیان، هر سرور یک گروه، آنچه مستقیم رفته). --once یک بار چاپش میکند.
vless://…) بدهند یا نشانی اشتراک را.zev proxy engine install # یک بار: موتور Xrayzev proxy add home 'vless://…' --use # یک سرور، یا:zev proxy sub add work https://… # یک اشتراکzev proxy use work # همهٔ سرورهایش بهعنوان یک گروه: سریعترین، با جایگزینی خودکارzev proxy share on # همان پورت 10808: تنظیم SSH و برنامههایتان کار میکنندzev proxy system on # مرورگرها و میزکارsudo zev vpn on.آنچه علاوه بر آن میگیرید: جایگزینی خودکار بین سرورها بر اساس سرعتی که اندازه گرفته میشود، خوددرمانی روی شبکههایی که فیلتر میکنند، اصلاحهای هر شبکه که همراهتان میآیند، بررسی نشتی، و همان تنظیمات برای اتصالهای خود zev.
روی شبکههای فیلترشده سرورها میآیند و میروند: یکی صبح سریع است و تا شب بسته میشود. چند سرور به zev بدهید تا از بهترینشان استفاده کند، و وقتی یکی دیگر جواب نداد خودش سراغ دیگری برود:
zev proxy use myvpn # همهٔ سرورهای یک اشتراکzev proxy use auto # همهٔ پروکسیهایی که ذخیره کردهایدzev proxy use work,home,backup # همینهاzev همهٔ سرورها را همزمان میسنجد (یک درخواست کوچک از راه هر کدام)، سه تای بهتر را روشن نگه میدارد، و Xray هر اتصال را از سریعترینی که جواب میدهد میفرستد و هر ۳۰ ثانیه دوباره بررسیشان میکند. وقتی سرور در حال استفاده از کار بیفتد، اتصال بعدی از سرور دیگری میرود؛ لازم نیست کاری بکنید. هر ۳۰ دقیقه، فرمان بعدی zev همهٔ فهرست را دوباره میسنجد تا سروری که بهتر شده برگردد.
برای دیدن رتبهبندی، یا رتبهبندی همین الان:
zev proxy probeProbing 4 servers at once (https://www.gstatic.com/generate_204)… server now expected answers ● work 92 ms 95+-12 100% vless proxy.example.com:443 … ● home 140 ms 151+-20 100% trojan home.example:443 … ● backup 410 ms 388+-61 83% shadowsocks 203.0.113.9:8388 … old down - 0% vmess old.example:443 …● in use (the best 3 by expected latency and answers; Xray switches between them)چرا «expected» و نه فقط «now»؟ یک درخواست چیز زیادی نمیگوید: یک پاسخ کند DNS یا یک بستهٔ گمشده میتواند یک بار سرور خوبی را بد نشان دهد. zev برای هر سرور تخمینی پیوسته نگه میدارد (فیلتر کالمن): نویز را صاف میکند، یک جهش تکی را نادیده میگیرد، سروری را که واقعاً کند شده دنبال میکند، و به اندازهگیری قدیمی کمتر از تازه اعتماد میکند. سروری که زیاد جواب نمیدهد پایینتر از سرور پایدار قرار میگیرد، حتی اگر آن یکی کمی کندتر باشد. اندازهگیریها در
~/.cache/zev/proxy/health.jsonنگه داشته میشوند، با هش هر لینک، هرگز خود لینک.
zev proxy probe <نام>، zev proxy probe auto یا zev proxy probe a,b,c سرورهای دیگر را بدون رفتن رویشان رتبهبندی میکنند. zev proxy status نشان میدهد موتور الان کدام سرورها را اجرا میکند.
زنجیره به آخرین سرورش از راه سرورهای قبلی میرسد. وقتی سروری که میخواهید از آن بیرون بیایید از شبکهٔ شما بسته است ولی از سرور دیگری در دسترس است، از زنجیره استفاده کنید:
zev proxy chain out home work # zev → home → work → Zarynzev proxy use outhome فقط میبیند که به work وصل میشوید؛ Zaryn نشانی work را میبیند. هر حلقه یک پروکسی ذخیرهشده است، از هر نوعی که بالاتر آمد. Hysteria2 و WireGuard روی UDP کار میکنند، پس در زنجیره فقط میتوانند حلقهٔ اول باشند. zev proxy ls زنجیرهها را با حلقههایشان نشان میدهد و zev proxy rm out یکی را فراموش میکند (پروکسیای که حلقهٔ یک زنجیره است تا وقتی زنجیره هست پاک نمیشود).
بعضی جاها بدون پروکسی سریعترند، یا فقط بدون آن کار میکنند: سروری در کشور خودتان، آینهٔ داخلی شرکت، سایتهایی که اتصال از خارج را رد میکنند. مسیرها اینها را مستقیم میفرستند و بقیه را از راه پروکسی:
zev proxy route iran # سایتها و نشانیهای ایران مستقیمzev proxy route direct git.company.example 10.20.0.0/16zev proxy route proxy blocked.example.ir # از راه پروکسی، هر چه مسیر مستقیم بگویدzev proxy route # فهرستشانzev proxy route rm git.company.examplezev proxy route clear| مسیر | چه چیزی را میگیرد |
|---|---|
example.com | همین نام و همهٔ نامهای زیرش (api.example.com) |
.ir | همهٔ نامهایی که به .ir ختم میشوند |
full:host.example | فقط همین نام |
5.160.0.0/16، 2a01:5ec0::/29، 203.0.113.7 | نشانیها |
geoip:ir | همهٔ نشانیهای یک کشور (هر کد دوحرفی کشور) |
geosite:category-ir | فهرست سایتهای یک کشور یا یک سرویس، که پروژهٔ Xray نگه میدارد |
iran | .ir، geosite:category-ir و geoip:ir با هم |
مسیرها از فرمان بعدی zev روی همهٔ پروکسیها اعمال میشوند: سرور تکی، چند سرور و زنجیره. geoip: و geosite: از دادههای مسیریابی Xray استفاده میکنند که zev proxy engine install کنار Xray میگذارد؛ اگر موتور را پیش از آمدن این مسیرها نصب کردهاید، یک بار دیگر اجرایش کنید. با مسیری روی نشانیها، Xray نامها را روی همین رایانه پیدا میکند تا مقایسهشان کند؛ نامهایی که فقط از راه پروکسی پیدا میشوند همچنان از راه آن میروند.
sudo zev net up پروکسیای را که استفاده میکنید برمیدارد و همراه شبکه ذخیره میکند، تا سرویس پسزمینهٔ شبکه هم از راه آن به Zaryn و رله برسد. ترافیک رله هم داخل پروکسی میرود؛ به همین خاطر دستگاهی که پشت شبکهای است که همه چیز دیگر را میبندد باز هم به تیمش وصل میشود. در این حالت zev net status عبارت through the proxy … را نشان میدهد.
sudo zev net up your-name/office # با پروکسیای که استفاده میکنیدsudo zev net up your-name/office --proxy home # با پروکسی ذخیرهشدهٔ دیگری (چند سرور یا زنجیره هم میشود)sudo zev net up your-name/office --no-proxy # مستقیمسرویس نسخهٔ خودش از Xray را از /var/lib/zev/net اجرا میکند (فقط root)، هرگز نسخهای از پوشهٔ خانهٔ شما را. دستگاههای پشت پروکسی از راه رله با بقیه حرف میزنند. ترافیکشان از این سر تا آن سر رمزنگاریشده میماند؛ پروکسی و رله فقط بستههای رمزشدهٔ WireGuard را میبینند.
نشانیهای روی رایانهٔ خودتان، شبکهٔ محلی و شبکههای خصوصی: localhost، 127.0.0.0/8، 10.0.0.0/8، 172.16.0.0/12، 192.168.0.0/16، 100.64.0.0/10 (شبکههای خصوصی)، fc00::/7 و *.zaryn.internal. برای عوض کردن این فهرست، ZEV_NO_PROXY را به شکل --noproxy در curl تنظیم کنید (نامها، .domainها، بازههای CIDR).
zev proxy off مستقیم وصل شوید.pcs= یا pinSHA256=) و zev آن را به Xray میدهد. zev گزینهٔ allowInsecure را در لینکها نادیده میگیرد: لینکی که کسی به شما میدهد نباید بتواند بررسی گواهی را خاموش کند.zev proxy share on فقط روی 127.0.0.1 گوش میدهد؛ --lan آن را فقط پشت یک رمز به شبکه باز میکند.sudo zev vpn on موتور Xray را در /var/lib/zev/vpn و با مالکیت root کپی میکند، تا سرویس root هرگز فایلی را اجرا نکند که حساب کاربریتان بتواند عوضش کند.127.0.0.1 و پشت یک رمز تصادفی گوش میدهد. curl آن رمز را از فایلی میگیرد که فقط شما میتوانید بخوانید، نه از خط فرمانش؛ پس کاربران دیگر رایانه نمیتوانند از پروکسیتان استفاده کنند یا آن را ببینند.