Proxies SOCKS5 e HTTP
Dois protocolos que o navegador usa para passar por um intermediário. A diferença está em em que nível o intermediário trabalha.
Um proxy HTTP entende requisições web: ele vê para onde você vai e pode processá-las. Para conexões seguras (https://) ele abre um túnel de passagem e, a partir daí, não vê mais o conteúdo — só o endereço do destino.
O SOCKS5 não entende nada e não quer entender: ele simplesmente carrega bytes entre você e o destino. Por isso, através dele passa não só a web, mas qualquer outro protocolo.
| HTTP | SOCKS5 | |
|---|---|---|
| Nível | requisições web | a conexão inteira |
| O que vê | o endereço de destino, cabeçalhos (para http://) | nada além do endereço e da porta |
| Protocolos não web | não | sim |
| Login e senha | sim | sim |
| De quem é o DNS | geralmente do proxy | depende da configuração — importa |
O que disso importa na prática
Primeiro — o DNS. Se o seu computador resolve o nome do site em vez do proxy, a busca do nome sai por fora do túnel e o seu provedor vê para onde você vai. Isso não mostra o seu endereço ao site diretamente, mas é um vazamento. No SOCKS5 o comportamento depende da configuração, então é preciso verificar o resultado, não o nome do protocolo.
Segundo — a autorização. Um proxy com login e senha é mais complexo de configurar no navegador do que um sem eles, e é aí que mais costuma quebrar alguma coisa.
O que isso NÃO é
A escolha do protocolo quase nunca é a causa de um captcha. Verificamos isso diretamente, durante uma semana caçando uma verificação em loop: testamos, entre outras coisas, HTTP contra SOCKS. Não houve diferença — o problema estava, na verdade, na reputação do próprio endereço.
Então a ordem da investigação é: primeiro que tipo de endereço (de servidor ou doméstico), depois de onde ele realmente sai, e só então o protocolo.
O que escolher
Se o vendedor oferece os dois, pegue qualquer um — você não vai notar a diferença no navegador. O SOCKS5 é mais conveniente quando o mesmo proxy é necessário para mais do que só o navegador. O HTTP é um pouco mais simples de configurar onde é preciso autorização.
O que importa mais: verificar cada endereço quanto a estar vivo e de onde sai antes de atribuí-lo a uma conta, não depois.
