curl parinktis --preproxy prisijungia prie SOCKS tarpinio serverio prieš pasiekdama HTTP arba HTTPS tarpinį serverį. Ji palaiko šią konkrečią grandinę, ne savavališką tarpinių serverių sąrašą.

Kelias: klientas → SOCKS galinis taškas → HTTP tarpinis serveris → paskirtis. Pakeiskite abu dokumentacijos galinius taškus komandoje:

curl --preproxy socks5h://203.0.113.10:1080 --proxy http://203.0.113.20:8080 --noproxy '' --connect-timeout 5 --max-time 20 --verbose https://example.com/

SOCKS paslauga turi pasiekti HTTP tarpinio serverio adresą ir prievadą. Tada HTTP tarpinis serveris turi priimti užklausą į paskirtį. Jei antrasis serveris nurodytas pagrindinio kompiuterio vardu, pirmasis SOCKS režimas lemia, kur šis vardas išsprendžiamas; skaitinis galinis taškas išvengia šios paieškos.

Nesėkmingo žingsnio paieška

Pirmiausia patvirtinkite užklausą per kiekvieną tašką atskirai; HTTP žingsniui naudokite HTTP tarpinio serverio bandymą su laiko ribomis. Net jei abu veikia, bendras kelias gali nepavykti, nes pirmasis serveris nepasiekia antrojo.

Skaitykite išsamią seką ryšių tvarka. SOCKS klaida pasiekiant antrąjį tarpinį serverį įvyksta prieš HTTP serverio sprendimą priimti ar atmesti CONNECT į svetainę. Užrašykite, kuris pasisveikinimas nepavyko.

Kada padeda papildomas žingsnis

Ši sandara gali praversti, kai leidžiamas HTTP tarpinis serveris pasiekiamas SOCKS keliu. Tačiau ji prideda dar vieną paslaugą ir tinklo kelią, kurie gali sugesti ar padidinti delsą. Viešo tarpinių serverių sąrašo taškų jungimas grandine negarantuoja patikimumo ar anonimiškumo ir vis tiek reikalauja pasitikėti ryšį apdorojančiomis šalimis.

--preproxy reikia curl 7.52.0 ar naujesnio; kitos programos gali nepalaikyti tokios sandaros.

Susiję straipsniai