مسدود بودن UDP: برای VPN و Hysteria2 شما چه معنایی دارد
چرا برخی شبکهها UDP و QUIC را مسدود میکنند، این موضوع چه تأثیری بر Hysteria2 دارد و Adaptive Connect در Colitu چگونه بدون دخالت شما به انتقالهای TCP بازمیگردد.
بیشتر اینترنت روی دو پروتکل انتقال اجرا میشود. TCP جریانی مطمئن و مرتب تحویل میدهد: صفحههای وب، دانلودها، ایمیل. UDP دیتاگرامهای مستقل بدون تضمین تحویل داخلی میفرستد: DNS، تماسهای صوتی و تصویری، بازیهای آنلاین و، روزبهروز بیشتر، خود وب، زیرا HTTP/3 روی QUIC و QUIC روی UDP اجرا میشود. پروتکل VPN مبتنی بر UDP در هر شبکهای که با آن روبهرو میشود سرنوشت UDP را به ارث میبرد.
چرا برخی شبکهها UDP را مسدود یا محدود میکنند
UDP به این دلیل مسدود نمیشود که «بد» است. شبکهها به چند دلیل عملی آن را محدود میکنند:
- سیاستهای ساده در فایروال. بسیاری از فایروالهای سازمانی، مدرسهها و هتلها فقط ترافیک وب روی TCP بهعلاوهٔ DNS را مجاز میدانند و هر چیز دیگر را رها میکنند.
- دید کمتر. QUIC تقریباً همهٔ سرآیندهای خود را رمزگذاری میکند. تجهیزاتی که ترافیک را بازرسی یا بهینه میکنند نسبت به TCP چیز بسیار کمتری میبینند، بنابراین برخی اپراتورها QUIC را مسدود میکنند چون میدانند مرورگرها به TCP بازمیگردند.
- حفاظت در برابر سوءاستفاده. UDP را میتوان برای حملات تقویتی (amplification) سوءاستفاده کرد، بنابراین برخی شبکهها نرخ UDP را محدود میکنند یا فقط برای سرویسهای شناختهشده اجازه میدهند.
- فیلترینگ. برخی سامانههای فیلترینگ QUIC به مقصدهای ناآشنا را جداگانه رفتار میکنند و آن را کند یا رها میکنند.
- رفتار NAT. روترهای خانگی و NAT در سطح اپراتور نگاشتهای UDP را فقط برای مدتی محدود نگه میدارند؛ جریان UDP بیکار میتواند نگاشت خود را از دست بدهد و از کار بیفتد.
استانداردهای QUIC این را پیشبینی کردهاند: RFC 9308 به برنامهها میگوید ممکن است UDP مسدود باشد و به یک مسیر پشتیبان نیاز دارند.
چگونه مشکل UDP را تشخیص دهیم
- VPN در یک شبکه وصل میشود اما در شبکهٔ دیگر زمان بسیار بیشتری میبرد یا ناموفق است.
- تماسهای تصویری در آن شبکه حتی بدون VPN هم قطعوصل میشوند.
- این اتفاق در نوع مشخصی از شبکه رخ میدهد: Wi-Fi اداره، هتل، یک اپراتور موبایل خاص.
اتصال اولیهٔ کندتر در چنین شبکهای اغلب نشانهٔ قابلمشاهدهٔ بازگشت به مسیر پشتیبان است: برنامه ابتدا انتقال UDP را امتحان کرده، دیده هیچ ترافیکی عبور نمیکند و سراغ گزینهٔ بعدی رفته است.
برای Hysteria2 چه معنایی دارد
Hysteria2 روی QUIC با TLS 1.3 و کنترل ازدحام اختصاصی خود اجرا میشود که سرعتش را در لینکهای دارای افت بسته حفظ میکند. همین باعث میشود سریعترین انتقال Colitu در شبکههای موبایل و مسیرهای طولانی باشد. اما همهٔ اینها به عبور UDP بستگی دارد:
- UDP کاملاً مسدود: Hysteria2 اصلاً نمیتواند وصل شود.
- UDP کندشده: وصل میشود اما کند یا نامنظم کار میکند.
- UDP پس از مدتی رها میشود: چند دقیقه کار میکند، سپس دیگر ترافیکی عبور نمیدهد.
وقتی شبکه عمداً بستهها را دور میریزد، هیچ کنترل ازدحامی کمکی نمیکند. پاسخ، انتقالی دیگر است و Adaptive Connect برای همین ساخته شده است.
Adaptive Connect چگونه به TCP بازمیگردد
هر سرور Colitu پنج انتقال ارائه میکند. Hysteria2 از UDP استفاده میکند؛ چهار انتقال دیگر روی TCP وصل میشوند:
| انتقال | نحوهٔ عبور |
|---|---|
| VLESS Reality | TCP، TLS 1.3 با استتار Reality |
| VLESS XHTTP | TCP، جریانی شبیه HTTP از درخواستهای جداگانهٔ بالارو و پایینرو روی Reality |
| Trojan | TCP، TLS شبیه HTTPS |
| Shadowsocks 2022 | TCP، رمزگذاری AEAD با حفاظت در برابر بازپخش |
Adaptive Connect از طرف شما بین آنها انتخاب میکند؛ تنظیم دستی پروتکل وجود ندارد:
- ترتیب. در اندروید و iOS برنامه ابتدا Hysteria2 و سپس VLESS Reality، VLESS XHTTP، Trojan و Shadowsocks 2022 را امتحان میکند. در Windows و Linux ابتدا Hysteria2 را امتحان میکند، سپس انتقالهای TCP را به ترتیب سرعت باز شدن اتصال TCP به سرور؛ انتقالهای غیرقابلدسترس آخر قرار میگیرند.
- ترافیک واقعی، نه فقط دستدهی. یک انتقال فقط وقتی به حساب میآید که ترافیک واقعی از یک بررسی عبور کند (حدود 12 ثانیه در اندروید، حدود 9 ثانیه در iOS). شبکهای که UDP را مسدود کرده این بررسی را رد میکند و برنامه به سراغ بعدی میرود.
- حافظه. انتقالی که هیچ ترافیکی عبور نداده عقب انداخته میشود: 10 دقیقه در Windows و Linux، در اندروید بهعنوان متوقفشده علامتگذاری میشود و در iOS جریمه میگیرد. اندروید همچنین آخرین انتقال کارآمد را برای هر سرور به خاطر میسپارد.
- نظارت در حین اتصال. برنامهٔ Windows هر دو ثانیه بررسی میکند که تونل هنوز ترافیک عبور میدهد یا نه و اگر متوقف شود دوباره وصل میشود؛ این کار شبکههایی را که پس از مدتی UDP را رها میکنند پوشش میدهد.
برنامهها همچنین بهصورت تجمیعی گزارش میدهند کدام انتقالها کار کردهاند تا پیشفرضها با گذشت زمان بهتر شوند. هرگز لازم نیست چیزی را پیکربندی کنید.
مصالحههای TCP
بازگشت به TCP شما را آنلاین نگه میدارد، اما TCP رفتار متفاوتی دارد. هنگام افت بسته برای بازیابی کند میشود و یک بستهٔ ازدسترفته میتواند همهٔ بستههای پشت سرش را معطل کند. در یک شبکهٔ سالم اداری بهسختی متوجه میشوید؛ با سیگنال ضعیف موبایل، انتقالهای TCP میتوانند کندتر از Hysteria2 در شبکهای که UDP را اجازه میدهد احساس شوند.
چه کاری میتوانید بکنید
- معمولاً هیچ: بهجای لغو و تلاش دوباره، منتظر بمانید تا برنامه اتصال را کامل کند.
- اگر سرعت مهم است و انتخاب دارید، از شبکهای استفاده کنید که UDP را عبور میدهد، مثلاً اینترنت خانه بهجای Wi-Fi هتل.
- در شبکهٔ محل کار یا مدرسه، از قواعد فناوری اطلاعات سازمان پیروی کنید؛ صاحب شبکه تعیین میکند چه چیزی مجاز است.
- اگر هیچ انتقالی در یک شبکه وصل نمیشود، مکان دیگری را امتحان کنید، سپس با ذکر نوع شبکه و منطقهٔ خود به پشتیبانی بنویسید. بررسیهای بیشتر در مرکز راهنما: مشکلات اتصال و بهینهسازی سرعت.
مطالب مرتبط: VPN روی Wi-Fi کار میکند اما روی دادههای تلفن همراه نه و VPN مسدود شده توسط DPI.
منابع
- RFC 768: User Datagram Protocol
- RFC 9000: QUIC, a UDP-based multiplexed and secure transport
- RFC 9114: HTTP/3
- RFC 9308: Applicability of the QUIC transport protocol
- RFC 9312: Manageability of the QUIC transport protocol
- CISA: UDP-based amplification attacks
- Hysteria 2 documentation
- Project X (Xray) documentation