Salta al contenuto
ProxyHub

HTTP o SOCKS5: differenze tra i protocolli proxy e quale usare

Pubblicato il · 3 min di lettura

Quando configuri un proxy ti viene chiesto quasi sempre il tipo: HTTP o SOCKS5. Entrambi funzionano con quasi tutto, ma non sono uguali. Ecco cosa cambia e come scegliere in pochi secondi.

Come funziona un proxy HTTP

Un proxy HTTP parla il linguaggio del web. Il tuo programma gli chiede una pagina e il proxy la richiede al posto tuo. Per i siti in HTTPS, cioè quasi tutti, il programma usa il metodo CONNECT: chiede al proxy di aprire un tunnel verso il sito, poi ci fa passare dentro la connessione cifrata. Da quel momento il proxy inoltra solo byte che non può leggere.

È il tipo più compatibile: lo supportano browser, sistemi operativi, librerie per script e quasi tutti i programmi che hanno un'impostazione "proxy".

Come funziona un proxy SOCKS5

SOCKS5 lavora a un livello più basso: non sa cosa sia una pagina web, inoltra connessioni TCP verso qualsiasi indirizzo e porta. Per questo va bene anche per traffico che non è web, come client di posta, app o protocolli personalizzati. Il protocollo prevede anche il traffico UDP, ma il supporto dipende dal fornitore e dal programma.

Un dettaglio importante è il DNS. Con SOCKS5 il nome del sito può essere risolto dal proxy invece che dal tuo computer: così anche le richieste DNS escono dalla rete mobile e non dalla tua connessione. In cURL e Python si ottiene con lo schema socks5h:// (la «h» sta per hostname).

Confronto

HTTPSOCKS5
LivelloApplicazione (web)Sessione (qualsiasi TCP)
Siti HTTPSSì, tramite tunnel CONNECTSì
Traffico non webNoSì
Risoluzione DNSFatta dal proxy per le richieste via tunnelDal proxy con socks5h, altrimenti locale
CompatibilitàMassimaMolto alta
AutenticazioneUtente e passwordUtente e password

La sicurezza: cosa vede il proxy

Con un sito HTTPS il contenuto delle pagine, le password e i cookie sono cifrati dal tuo programma fino al sito, sia con HTTP sia con SOCKS5. Il proxy vede solo a quale sito ti colleghi e quanto traffico passa.

Con un sito in semplice HTTP (sempre più raro) un proxy HTTP potrebbe leggere e modificare il contenuto. Vale per qualsiasi rete che attraversi, non solo per i proxy: preferisci sempre HTTPS.

Quale scegliere

  • Antidetect browser (AdsPower, Multilogin, GoLogin, Dolphin{anty}): SOCKS5, così anche il DNS passa dal proxy. Vanno bene entrambi, purché il tipo coincida con quello impostato sul proxy.
  • Browser normale: HTTP è il più semplice da configurare; Firefox supporta bene anche SOCKS5 con DNS remoto (vedi la guida per Firefox).
  • Script (cURL, Python, Node.js): entrambi; con SOCKS5 usa socks5h://.
  • App e traffico non web: SOCKS5.
Con ProxyHub cambi il protocollo dall'area clienti, nella pagina del proxy. Il tipo impostato nel programma deve essere uguale, altrimenti la connessione fallisce.

Esempi pratici

cURL
# HTTP
curl -x http://UTENTE:PASSWORD@HOST:PORTA https://api.ipify.org

# SOCKS5 con DNS dal proxy
curl -x socks5h://UTENTE:PASSWORD@HOST:PORTA https://api.ipify.org
Python (requests)
import requests  # per SOCKS5: pip install "requests[socks]"

proxy = "socks5h://UTENTE:PASSWORD@HOST:PORTA"
r = requests.get("https://api.ipify.org", proxies={"http": proxy, "https": proxy}, timeout=30)
print(r.text)

Altri esempi completi sono nelle guide per cURL, Python e Node.js.

Domande frequenti

SOCKS5 è più veloce di HTTP?

La differenza è minima: per siti HTTPS entrambi inoltrano un tunnel cifrato. La velocità dipende soprattutto dalla rete del proxy.

Che cos'è SOCKS4?

Una versione vecchia del protocollo, senza autenticazione con password e senza IPv6. Oggi si usa SOCKS5.

Perché la connessione fallisce con «proxy error»?

Nella maggior parte dei casi il tipo scelto nel programma non coincide con quello del proxy, oppure c'è un errore in utente o password. Controlla i dati nella sezione Connessione del proxy.

Prova un proxy mobile 5G

Smartphone dedicato, traffico illimitato, IP reali di operatori. Attivo in pochi minuti.

Scopri i piani

Leggi anche

Tutti gli articoli