UDP a Tor SOCKS portján keresztül: mi nem megy át
A Tor SOCKS felülete stream kapcsolatokat fogad, nem tetszőleges datagramokat. Futtassa az ellenőrzést sorrendben, majd válasszon olyan átvitelt, amelyet az alkalmazás valóban támogat.
Egy alkalmazás SOCKS portra irányítása működik böngészőnél és meghiúsul játéknál, és az ok nem a konfiguráció. A SOCKS5 több parancsot határoz meg, és egy implementáció szabadon csak néhányat támogathat közülük; a Tor felülete stream kapcsolatokat és névfeloldást fogad, nem tetszőleges datagramtovábbítást. Az az ügyfél, amely UDP-t küld, és azt várja, hogy a proxy továbbítsa, olyan parancsot kér, amelyet a kiszolgáló nem valósít meg. Az alábbi útmutató ezt néhány perc alatt ellenőrzi, majd olyan átvitelt választ, amely valóban működhet.
Ellenőrizze, mit küld valójában az alkalmazás
Kezdje az átvitel azonosításával, ne a protokoll nevével. Egy hangügyfél bejelentkezhet HTTPS-en, majd UDP-n szállíthatja a médiát; egy játék TCP-n hitelesíthet és UDP-n játszhat; egy fájlátvitel TCP-t használhat vezérlésre és UDP-t felderítésre. Az első két viselkedés azonosnak látszik, amíg a bejelentkezés sikerül és a hívás még mindig meghiúsul, ezért a „csatlakozott” nem bizonyítja, hogy az egész alkalmazás működik. Egyes ügyfelek maguktól is visszaesnek UDP-ről TCP-re, amitől egy részben működő munkamenet instabil hálózatnak tűnik blokkolt átvitel helyett.
Jegyezze fel a célportot és az átvitelt ahhoz a részhez, amely meghiúsul. Az az egy sor dönti el, hogy egy proxy egyáltalán segíthet-e.
Mit fogad el a Tor SOCKS felülete
A Tor megvalósítja a SOCKS5 CONNECT parancsot stream kapcsolatokhoz és kiterjesztési parancsokat a nevek feloldásához, ezért egy böngésző változtatás nélkül működik rajta keresztül. A UDP ASSOCIATE, az a parancs, amely lehetővé tenné, hogy az ügyfél datagramokat adjon át a proxynak továbbításra, nem része annak, amit a Tor kínál. A kiterjesztések dokumentációja a projekt SOCKS kiterjesztési specifikációjában található, és rövid. A datagramparancs hiánya szándékos: tetszőleges UDP továbbítása olyan továbbító szerepet adna a hálózatnak, amelyre soha nem tervezték.
Ez a válasz a WireGuard esetében is, amely tervezésénél fogva UDP, és nincs TCP tartalékútvonala. Nincs támogatott útvonal, amely a WireGuardot SOCKS portra irányítaná, és bármi, ami ennek ellenkezőjét állítja, saját bizalmi és karbantartási történettel rendelkező burkoló, nem a két eszköz valamelyikének funkciója.
OpenVPN a részleges kivétel, mert beállítható TCP-n keresztüli alagutazásra, és érti a SOCKS proxy beállítást. Ez továbbra is TCP-re beállított kiszolgálót és a teljesítményre, valamint az ujjlenyomatra gyakorolt hatásokról szóló tudatos döntést igényel, tehát tervezési választás, nem kompatibilitási javítás.
Futtassa az ellenőrzést sorrendben
Először erősítse meg, hogy a proxy működik streamekhez, hogy egy későbbi hiba ne egy elérhetetlen portra legyen fogható. Utána erősítse meg az alkalmazás saját forgalmát, és figyelje, mely socketeket nyitja meg valójában.
curl --socks5-hostname 127.0.0.1:9050 -sS https://check.torproject.org/api/ip
ss -tupn | grep 9050
ss -aun | grep -E ':(3478|5060|27015)\b'
Egy sikeres első parancs és a második sorban létrejött stream azt mutatja, hogy a proxy útvonala a tervezésnek megfelelően működik. A harmadik parancs az alkalmazáshoz tartozó helyi datagram socketeket keresi; ha az ügyfél megnyit egyet, és közvetlenül egy távoli címre küld, soha nem kérdezte meg a proxyt, és ezen egyetlen proxybeállítás sem változtat. Ha már az első lépésben meghiúsul, álljon meg, és javítsa a proxy útvonalát, mielőtt az alkalmazást vizsgálná, mert két hiba egyszerre olyan jelentést ad, amellyel senki nem tud mit kezdeni.
Tekerje vissza, és válassza a megfelelő eszközt
Távolítson el minden proxy környezeti változót vagy alkalmazásonkénti proxybeállítást, amely az UDP ügyfelet a SOCKS portra irányította; ezek meghagyása kétértelművé teszi a későbbi teszteket. Állítsa vissza az előző konfigurációt egy másolatból, indítsa újra az alkalmazást, és erősítse meg, hogy az eredeti viselkedés visszatér, hogy az összehasonlítás tiszta legyen. Az ellenőrizetlen visszaállítás csak remény arra, hogy az állapot megváltozott.
Egy olyan átvitelhez, amelynek UDP-nek kell maradnia, a VPN általában jobban illik: szállítja az alkalmazás csomagjait anélkül, hogy proxy protokollt kérne tőle, cserébe teljesen más anonimitási tulajdonságokért. Minden eszközt arra használjon, amit dokumentál, és a köztük lévő bármely hidat külön rendszerként kezelje, amely saját felülvizsgálatot igényel. Jegyezze fel a zárójelentésben, melyik réteg melyik átvitelt szállítja, hogy a következő ember ne fedezze fel újra ugyanezt a határt egy másik alkalmazással.