Proxy SOCKS5 ou HTTP: diferenças e qual usar

O proxy HTTP cuida do tráfego web; o SOCKS5 repassa qualquer conexão TCP e pode levar UDP. Veja como funcionam, as diferenças e qual escolher.

ComparaçõesPublicado em 26 de out. de 20267 min de leitura

Nesta página

Resposta rápida: o proxy HTTP entende o tráfego da web: lê requisições HTTP comuns e abre túneis para sites HTTPS. O proxy SOCKS5 trabalha um nível abaixo, repassa qualquer conexão TCP sem ler o conteúdo e também pode levar UDP. Use HTTP(S) em navegadores, navegadores antidetect, scrapers e clientes de API, que todos aceitam. Use SOCKS5 em apps de desktop sem opção de proxy HTTP e quando o tráfego precisa de UDP, como chamadas, jogos e DNS. Os proxies ISP da NanoIP aceitam os dois em todos os IPs, com o mesmo usuário e senha.

Tabela: páginas web e sites HTTPS funcionam nos dois tipos de proxy; outros apps TCP funcionam no SOCKS5, mas no proxy HTTP só se o app tiver opção de proxy HTTP; tráfego UDP não passa pelo proxy HTTP e passa pelo SOCKS5 se o provedor ativar
O proxy HTTP foi feito para a web; o SOCKS5 repassa qualquer conexão e, quando suportado, UDP.

Como funciona o proxy HTTP

O proxy HTTP fala HTTP, o protocolo da web. O que ele faz depende do site:

  • Sites http:// comuns: o app manda a requisição inteira para o proxy, com o endereço completo, e o proxy lê e repassa para o site. Como lê a requisição, um proxy HTTP pode fazer cache, filtrar ou incluir cabeçalhos, que é como funcionam os proxies de empresas e escolas.
  • Sites https://: o app pede ao proxy que abra um túnel com uma requisição CONNECT, informando o site e a porta. O proxy conecta, responde 200 Connection established e, daí em diante, só repassa bytes criptografados que não consegue ler.

Hoje quase todos os sites são HTTPS, então na prática o proxy HTTP é um construtor de túneis. O usuário e a senha vão no cabeçalho Proxy-Authorization da primeira requisição.

Proxy HTTP x proxy HTTPS

"Proxy HTTPS" pode significar duas coisas, e os provedores usam as duas:

  1. Um proxy HTTP que abre túneis para sites HTTPS, o que todo proxy HTTP moderno faz.
  2. Um proxy que você acessa por uma conexão criptografada: a conexão até o próprio proxy, incluindo usuário e senha, é protegida com TLS antes de o túnel abrir.

O gateway dos proxies residenciais e móveis da NanoIP é do segundo tipo: você conecta em https://gateway.nanoip.net:1111, e tudo entre o seu dispositivo e o gateway é criptografado.

Como funciona o proxy SOCKS5

O SOCKS5 não se importa com o tipo de tráfego. O app e o proxy fazem um handshake curto: o app informa os métodos de login que aceita, envia usuário e senha e diz qual host e porta quer acessar. O proxy abre essa conexão e repassa os bytes nos dois sentidos.

À esquerda, o proxy HTTP recebe CONNECT shop.example:443 com o cabeçalho Proxy-Authorization, responde 200 Connection established e depois repassa um túnel criptografado que não consegue ler; páginas http não usam túnel. À direita, o SOCKS5 faz o handshake com método de senha, usuário e senha, CONNECT shop.example:443 e sucesso, e depois repassa qualquer dado TCP, ou UDP com UDP ASSOCIATE
O proxy HTTP abre o túnel com uma requisição; o SOCKS5 faz um handshake curto e repassa qualquer conexão.

Duas características fazem do SOCKS5 o protocolo mais geral:

  • Qualquer conexão TCP. Clientes de e-mail, apps de desktop, launchers de jogos e programas próprios podem usar, desde que aceitem configurar um proxy SOCKS5.
  • UDP. O comando UDP ASSOCIATE cria um repasse para pacotes UDP, que o proxy HTTP não consegue levar. Nem todo provedor ativa esse recurso.

Onde o DNS é resolvido

Com SOCKS5, o app pode resolver o endereço do site sozinho e mandar um IP para o proxy, ou mandar o nome do site e deixar o proxy resolver. No curl e no Python, socks5:// resolve no seu computador e socks5h:// deixa o proxy resolver. Testamos com um proxy local: com socks5:// o proxy recebeu um endereço IP; com socks5h://, recebeu o nome do site. Use socks5h:// quando a consulta de DNS também deve acontecer no país do proxy: a resolução local pode devolver servidores escolhidos para a sua região e mostra ao seu provedor de DNS quais sites você acessa. O proxy HTTP sempre recebe o nome do site, então é ele quem resolve.

SOCKS5 x HTTP: comparação

Proxy HTTP(S)Proxy SOCKS5
CamadaAplicação: entende HTTPSessão: repassa conexões
TráfegoWeb: requisições HTTP e túneis HTTPSQualquer conexão TCP, e UDP quando suportado
UDP (chamadas, jogos, DNS, HTTP/3)NãoSim, com UDP ASSOCIATE
Resolução de DNSFeita pelo proxyPelo app ou pelo proxy (socks5h)
LoginCabeçalho Proxy-AuthorizationEtapa de usuário e senha no handshake
CriptografiaNenhuma sozinho; o proxy HTTPS criptografa o trecho até o proxyNenhuma sozinho
CompatibilidadeQuase todos os navegadores, ferramentas e bibliotecasA maioria das ferramentas; algumas precisam de um pacote extra

O SOCKS5 é mais rápido?

Um pouco, em teoria: ele não interpreta as requisições, então há menos trabalho por conexão. Na prática, essa diferença some diante da distância entre você, o proxy e o site, e da qualidade do IP de saída. Escolha o protocolo pelo que o app e o tráfego precisam, não pela promessa de velocidade.

O SOCKS5 é mais seguro?

Não. Nenhum dos dois criptografa o tráfego, e o usuário e a senha do SOCKS5 vão sem criptografia. O que protege os seus dados é o HTTPS do próprio site, que continua criptografado de ponta a ponta com qualquer um dos dois. Se você também quer criptografar a conexão até o proxy, use um proxy HTTPS, como o gateway da NanoIP.

Qual usar

Três perguntas em ordem: se chamadas, jogos ou outro tráfego UDP precisam sair pelo proxy, use SOCKS5 com UDP; se é um app de desktop sem opção de proxy HTTP, use SOCKS5; se é navegador, scraper ou cliente de API, use HTTP(S), o mais compatível; na dúvida, comece com HTTP(S)
Quem decide é o app e o tráfego; na dúvida, comece com HTTP(S).
  • Escolha HTTP(S) para navegadores, navegadores antidetect, bibliotecas de scraping, frameworks de automação e clientes de API. Todos aceitam, e para tráfego web ele faz tudo o que você precisa.
  • Escolha SOCKS5 quando o app não tem opção de proxy HTTP, usa outros protocolos além de HTTP ou quando você quer que o proxy resolva o DNS.
  • Escolha SOCKS5 com UDP para chamadas de voz e vídeo, jogos online, WebRTC e qualquer coisa que use UDP, para que esse tráfego também saia pelo IP do proxy.

Quais protocolos os proxies da NanoIP aceitam

ProdutoComo conectarProtocolos
Proxies ISPCada IP tem host e porta própriosHTTP, HTTPS e SOCKS5, com UDP via SOCKS5
Proxies residenciaisGateway HTTPS gateway.nanoip.net:1111HTTPS
Proxies móveisGateway HTTPS gateway.nanoip.net:1111HTTPS

Todo IP ISP aceita os três protocolos com o mesmo usuário e senha, então você pode usar HTTP num navegador antidetect e SOCKS5 num app de desktop com o mesmo IP. A autenticação é sempre por usuário e senha; não existe lista de IPs liberados. Os proxies do Brasil incluem IPs ISP estáticos no país, e o guia de primeiros passos mostra onde ver os dados de cada IP.

Como escrever o endereço do proxy

A maioria das ferramentas tem um campo de protocolo ao lado de host, porta, usuário e senha. Bibliotecas e ferramentas de linha de comando recebem os mesmos dados numa única URL, em que o começo define o protocolo:

text
http://USERNAME:PASSWORD@HOST:PORT
socks5h://USERNAME:PASSWORD@HOST:PORT
https://USERNAME:PASSWORD@gateway.nanoip.net:1111

As duas primeiras linhas são um IP ISP via HTTP e via SOCKS5, com o proxy resolvendo o DNS. A terceira é o gateway residencial e móvel. O requests do Python precisa do pacote extra requests[socks] para aceitar endereços socks5h://. Se a senha tiver caracteres como @ ou :, codifique-os na URL (%40, %3A); senão, a ferramenta separa o endereço no lugar errado. No nosso teste, a senha p@ss:word sem codificação fez o curl recusar o endereço.

Perguntas frequentes

Um mesmo IP de proxy pode aceitar HTTP e SOCKS5?

Pode, se o provedor configurar assim. Todo IP ISP da NanoIP aceita HTTP, HTTPS e SOCKS5 com o mesmo login; alguns provedores vendem os protocolos separados ou pedem para escolher um por IP na compra.

Preciso de SOCKS5 no navegador antidetect?

Não. Navegadores antidetect aceitam proxies HTTP, HTTPS e SOCKS5. Use HTTP(S), a não ser que queira que chamadas, WebRTC ou outro tráfego UDP desse perfil também passem pelo proxy; aí use SOCKS5 num IP com suporte a UDP.

Ainda se usa SOCKS4?

Raramente. O SOCKS4 não tem login com usuário e senha nem UDP, por isso os provedores oferecem SOCKS5.

Escrito por NanoIP Team · Proxy infrastructure and customer support team

Artigos relacionados

Comparações

Proxy ISP ou residencial: qual a diferença?

O proxy ISP mantém um IP fixo durante todo o plano; o residencial gira por um grande pool de IPs domésticos. Veja como funcionam, a cobrança e quando usar.

6 min de leitura

Comparações

Proxy 4G (móvel) ou residencial: como escolher

O proxy 4G/5G sai pela rede de uma operadora; o residencial, pela banda larga. Veja as diferenças em IPs, segmentação e preço e quando cada um vale a pena.

6 min de leitura

Precisa de ajuda com a configuração?

Nossa equipe de suporte pode revisar a configuração do proxy com você.