Možnost --preproxy v curlu se poveže s posrednikom SOCKS, preden doseže posrednik HTTP ali HTTPS. Podpira to konkretno verigo, ne poljubnega seznama posredniških strežnikov.

Pot je odjemalec → končna točka SOCKS → posrednik HTTP → cilj. Zamenjajte obe dokumentacijski končni točki v ukazu:

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/

Storitev SOCKS mora doseči naslov in vrata posrednika HTTP. Nato mora posrednik HTTP sprejeti zahtevo do cilja. Če drugi posrednik uporablja ime gostitelja, prvi način SOCKS določa, kje se to ime razreši; številčna končna točka se izogne temu iskanju.

Iskanje neuspešnega koraka

Najprej potrdite zahtevo skozi vsako končno točko posebej; za korak HTTP uporabite časovno omejen preizkus posrednika HTTP. Tudi če oba delujeta, lahko združena pot odpove, ker prvi posrednik ne doseže drugega.

Podrobno sled berite v vrstnem redu povezav. Napaka SOCKS pri doseganju drugega posrednika nastane pred odločitvijo posrednika HTTP, da sprejme ali zavrne CONNECT do spletnega mesta. Zapišite, katero rokovanje je spodletelo.

Kdaj dodatni korak pomaga

Ta postavitev je lahko uporabna, kadar je dovoljeni posrednik HTTP dosegljiv skozi pot SOCKS. Doda pa še storitev in omrežno pot, ki lahko odpovesta ali povečata zakasnitev. Veriženje točk z javnega seznama posrednikov ne zagotavlja zanesljivosti ali anonimnosti in še vedno zahteva zaupanje stranem, ki obdelujejo povezavo.

--preproxy zahteva curl 7.52.0 ali novejši; druge aplikacije morda ne podpirajo enake postavitve.

Sorodni članki