VPN və TURN relay: WebRTC zəngini əslində hansı daşıyır?
Tunel ICE-in gördüyü yolu dəyişir; lakin relay ayırmır və siqnalizasiya təmin etmir. VPN çıxışının və TURN serverinin nə verdiyini müqayisə edin.
Səhifə VPN üzərindən yüklənir, zəng heç vaxt qoşulmur: eyni ünvan sətrini daşıyan iki fərqli nasazlıq. Tunel brauzerin istifadə etdiyi yolu dəyişdi; o, siqnalizasiya xidmətinə, STUN serverinə və ya relay-ə çevrilmədi və ICE-in hansı namizəd cütünü seçəcəyini həll etmir. Hər komponentin yerinə yetirdiyi işi ayırmaq qeyri-müəyyən “WebRTC bloklanıb” ifadəsini konkret nasazlığa çevirir.
Dörd vəzifə, tunelin toxunduğu yalnız biri
Tətbiq sessiya məlumatını hansısa siqnalizasiya quruluşu ilə mübadilə edir və bu birinci vəzifədir. ICE namizəd ünvanları toplayır və biri işləyənə qədər cütləri sınayır, bu ikincidir. STUN qarşı tərəfə trafikinin kənardan necə göründüyünü öyrənməyə imkan verir, TURN isə birbaşa yol olmadığı hallar üçün relay ayırır. Bu dörd rol bir-birindən fərqlidir və VPN onların qarşılaşdığı ünvanlara və filtrasiyaya təsir edir, onlardan heç birini təmin etmir.
Buna görə uğurlu giriş media yolu haqqında heç nə demir. Siqnalizasiya adətən səhifənin artıq istifadə etdiyi HTTPS ilə, 443 portunda gedir, media isə tamam başqa hədəfə UDP ilə gedə bilər.
Şəxsi ünvanlama qarışıqlığı daha da artırır. Tunel ünvanı qarşı tərəf üçün yalnız o tərəfin ora qayıdan nəzərdə tutulmuş yolu olduqda faydalıdır; şəxsi olmaq qarşılıqlı əlçatanlığın sübutu deyil və brauzerlər yoxlana bilməyən namizədləri atarkən bunu belə qəbul etmir. Sizə yerli görünən namizəd digər tərəfdən yoxlanıla bilməyə də bilər. Tunelin medianı atdığı qənaətinə gəlməzdən əvvəl bu boşluğu istisna etməyə dəyər.
VPN çıxışını TURN relay ilə müqayisə edin
Hər ikisi paketləri ötürür, buna görə qarışdırılır və yuxarıdakı müqayisə cədvəlini xüsusiyyətlər siyahısı kimi deyil, sütun-sütun oxumağa dəyər. Relay ayrılması autentifikasiya olunmuş sorğu ilə yaradılan sessiya başına obyektdir; tunel isə marşrutdur. Birinin müddəti bitən etimad məlumatları var, digərinin isə ya əlçatan, ya da olmayan qarşı tərəf ünvanı.
| Component | What it contributes | What it needs to work | What it cannot do |
|---|---|---|---|
| VPN exit | Changes the observed mapping and the route packets take | A working tunnel and a policy that permits the media transport | Allocate a relay or supply signaling |
| STUN server | Reports the mapped address a peer appears to use | Reachability from the client, on its configured transport | Carry media when a direct path fails |
| TURN server | Relays media through an authenticated allocation | Valid credentials, an allowed transport and sufficient capacity | Fix a missing ICE policy or an unauthorized client |
| Signaling channel | Carries offers, answers and candidate lists | Both peers reaching the same application endpoint | Establish connectivity by itself |
Port nömrələri fərqi konkretləşdirir. TURN standart olaraq UDP və TCP üçün 3478-də, TLS üçün 5349-da dinləyir və 443-ə icazə verib o portları atan şəbəkə relay zənglərini uğursuz edəcək, brauzinq isə normal davam edəcək. VPN-in portunu dəyişmək bunların heç birini konfiqurasiya etmir, çünki vacib portlar tunelə deyil, relay xidmətinə aiddir.
Diaqnostikanı oxuyun, sonra zəngi sınayın
Brauzerlər lazım olan məlumatı paket tutmadan təqdim edir. Brauzeriniz üçün WebRTC diaqnostika səhifəsini açın, zəng edin və toplanmış siyahı yerinə seçilmiş namizəd cütünü oxuyun: hansı yerli və uzaq namizəd növlərinin seçildiyini, hansı transport və ünvan ailəsi üzərindən, yolun birbaşa yoxsa relay vasitəsilə olduğunu.
İki oxunuşu əvvəlcədən bilməyə dəyər. Seçilmiş cüt şəxsi ünvanlarda host-hostdursa, media üzərində düşünə biləcəyiniz yolda qalır; relay-relaydırsa, zəng relay tutumunu sərf edir və həmin xidmətin mövcudluğundan asılıdır. “Yoxlanılır” mərhələsində seçilmiş cüt olmadan dayanan nasazlıq namizədlərin toplandığını, lakin heç birinin qoşulma yoxlamalarından keçmədiyini bildirir.
Sonra yalnız bir təsdiqlənmiş şərti dəyişərək eyni iki son nöqtəni eyni zəngdə müqayisə edin və nəticəni “qoşuldu” göstəricisinə deyil, ikitərəfli media və ya dataya görə qəbul edin. Namizəd toplama bir dənə də audio kadrı daşımayan bir çox halda uğur qazanır. Zəngi dəyişikliyin digər tərəfində təkrarlayın və hər iki diaqnostik qeydi saxlayın, çünki iki qaçışı müqayisə etmək hər hansı birini tək oxumaqdan daha məlumatlıdır. Eyni son nöqtələr, eyni kodek, bir dəyişən dəyişdirilib.
ICE transport siyasətini qəsdən relay-ə qoyan tətbiq yalnız relay namizədləri istəyir. Bu ayar relay yaratmır və çatışmayan etimad məlumatlarını bərpa etmir; tələbi açıq edir, bu da kimsə saytın seçdiyi siyasətə görə VPN-i günahlandırdıqda faydalıdır.
Məxfilik iddiasını sübutlar qədər dar saxlayın
Namizədin ifşası yalnız tunel statusundan deyil, brauzer və tətbiq siyasətindən asılıdır və W3C-nin qarşı tərəf bağlantısı spesifikasiyası IP ilə davranışı öz məsələsi kimi qəbul edir. Buna görə qoşulmuş VPN zəngin yalnız bir seçilmiş ünvanı açdığına dair söz vermək üçün zəif əsasdır. Hətta eyni tunelin arxasındakı iki qarşı tərəf hostu heç tərk etməyən yol seçə bilər ki, bu da eyni anda həm məxfilik yaxşılaşması, həm də qoşulma məhdudiyyətidir.
Dəqiq deyə biləcəyiniz daha dardır və daha faydalıdır: hansı namizəd cütünün seçildiyi, onu hansı transportun daşıdığı və o yolun tunelin içində qalıb-qalmadığı. Bu üç faktı işləyən və uğursuz zəng üçün qeyd edin, fərq adətən düzəldilməli komponenti adlandırır.
Qoşulma işləyəndən sonra performansı əlçatanlıqdan ayırın. İtki, gecikmə, növbə və MTU düzgün namizəd cütünün aşağı axınında yerləşir və kəsik-kəsik zəngi qoşulma nasazlığı kimi qəbul etmək sizi səbəbsiz yerə namizəd siyahısına qaytarır.