SOCKS5 ar SOCKS5h: kur vyksta DNS vardų nustatymas
Palyginkite vietinį ir tarpinio serverio atliekamą DNS vardų nustatymą su curl, raskite klaidų priežastis ir supraskite socks5h apsaugos ribas.
Programoje curl rinkitės socks5h://, kai paskirties vardą turi nustatyti tarpinis serveris. Rinkitės socks5://, kai curl turi jį nustatyti vietoje ir nusiųsti adresą tarpiniam serveriui. Abu režimai naudoja SOCKS5; galinė h yra kliento URL užrašo susitarimas.
Palyginkite režimus vietoj vietinio klausytuvo įrašę savo SOCKS5 galinį tašką:
curl --noproxy '' --proxy socks5://127.0.0.1:1080 --connect-timeout 5 --max-time 15 --verbose https://example.com/
curl --noproxy '' --proxy socks5h://127.0.0.1:1080 --connect-timeout 5 --max-time 15 --verbose https://example.com/Keičiasi tik vardų nustatymo režimas. --noproxy '' pašalina šių kreipinių tarpinio serverio apėjimo taisykles, o laiko ribos apriboja palyginimo trukmę. Atitinkamos atskiros parinktys yra --socks5 ir --socks5-hostname. Kaip tikslą naudokite serverio vardą: tiesiogiai nurodytam IP adresui paskirties vardo paieškos nereikia, todėl jis šio skirtumo neparodys.
Vardas gali būti žinomas tik vienoje pusėje
Tarkime, tarpinis serveris veikia kūrimo tinkle, kurio DNS žino vidinės paslaugos vardą. Nešiojamajam kompiuteriui gali nepavykti jo nustatyti socks5 režimu, o socks5h leidžia tai atlikti tarpiniam serveriui. Priešingu atveju, kai vardas aprašytas tik kompiuterio hosts faile, gali nepavykti būtent nuotolinė paieška.
Viešasis DNS irgi gali pateikti skirtingus adresus iš skirtingų tinklų. Skirtingi rezultatai yra priežastis palyginti pasirinktus adresus ir jų pasiekiamumą, o ne iškart keisti tarpinį serverį.
- Nepavyksta nustatyti tarpinio serverio vardo: nė vienas režimas negali pradėti veikti. Klientas vis tiek nustato
proxy.examplevardą išsocks5h://proxy.example:1080. - Nepavyksta vietinė paskirties vardo paieška: tikrinkite kliento vardų nustatymo priemonę arba palyginkite režimą, perduodantį vardą tarpiniam serveriui.
- SOCKS serveris atmeta paskirtį: tikrinkite atsakymą ir jo taisykles. Sėkminga vietinė paieška neįrodo pasiekiamumo iš nuotolinės pusės.
- Tunelis veikia, bet sertifikato patikra nepavyksta: nagrinėkite paskirties TLS; kito DNS režimo pasirinkimas nėra bendras pasitikėjimo problemų sprendimas.
Jūsų valdomas bandymo vardas ir serverio žurnalai gali patvirtinti, kokio tipo adresas pasiekė jūsų administruojamą tarpinį serverį. Išorinį IP rodantis tinklalapis to negali: jis praneša apie išeinantį ryšį, o ne apie DNS vardų nustatymo vietą.
Privatumo nauda turi konkrečią apimtį
Paieška tarpiniame serveryje leidžia išvengti šios užklausos paskirties vietinės vardų paieškos. Ji nešifruoja SOCKS, neįrodo, kad tarpinis serveris naudoja šifruotą DNS, ir nenukreipia kitų programų ar naršyklės išankstinio parsiuntimo srauto. Requests su SOCKS palaikymu taip pat skiria vietinį ir tarpinio serverio atliekamą vardų nustatymą; kiti klientai vietoj curl URL rašybos gali turėti nustatymą. Pasirinkite programos palaikomą protokolą prieš kopijuodami galinį tašką iš SOCKS5 tarpinių serverių sąrašo.