RsConnection — WhatsApp Connection Failure (Agosto 2026)
Resumo do Problema
RsConnection (Baileys) não consegue conectar ao WhatsApp na VPS 31.97.243.106. Todas as instâncias apresentam Connection Failure após QR scan.
Sintomas
Log mostra padrão consistente:
`
connected to WA ✓ (TCP handshake OK)
logging in... ✓ (WebSocket estabelecido)
Connection Failure ✗ ( handshake rejeitado )
`
- - TCP conecta normalmente
- - WhatsApp aceita a conexão WebSocket
- - Rejeita durante autenticação/handshake (CB:failure, reason=0)
- - Não é ban de IP — todas as instâncias afetadas, incluindo números novos
- - WhatsApp Web funciona normalmente nessa VPS (HTTP 200 OK)
- - VPS: 31.97.243.106
- - Serviço: rsconnection (wazapi) na porta 3005
- - Processo: node server.js (PID 478118)
- - Log: /tmp/wazapi.log
- - Instâncias: 10 cadastradas, 0 online
- - Credenciais limpas (estado 5fac75cf foi removido para teste)
- - Criar SOCKS5 em servidor com IP diferente
- - Configurar via variável
BAILEYS_SOCKS_PROXY=socks5://host:port - - Reiniciar serviço
- - O Baileys conectaria via proxy — WhatsApp veria IP do proxy
- - Baileys rods local, conexão sai do IP residencial
- - Não depende da VPS
- - Mas: não é automatizado, depende da máquina
- - Criar VPS nova (Hostinger/Hetzner/Contabo) com IP diferente
- - Instalar RsConnection lá
- - Migrar instâncias
- - Custo adicional
- - Parar todas as tentativas de conexão por 24-48h
- - Deixar IP "descansar"
- - Testar novamente
- - Não há garantia de funcionar
- -
/var/www/wazapi/server.js— servidor principal (linha 1602 browser identity) - -
/tmp/wazapi.log— logs de conexão - -
/var/www/wazapi/instances/— estado de cada instância - -
/var/www/wazapi/package.json— baileys ^6.7.24
O que foi testado
Rede
| Teste | Resultado |
| --- | --- |
| HTTP GET web.whatsapp.com | 200 OK |
| WSS web.whatsapp.com | 404 (esperado — requer curl handshake) |
| TCP connect IPv4 :443 | OK |
| TCP connect IPv6 :443 | OK |
| DNS web.whatsapp.com | Resolve para mmx-ds.cdn.whatsapp.net |
| IP público VPS | 31.97.243.106 |
| Tentativa | Resultado |
| --- | --- |
| Mudar browser identity Chrome→Firefox | Mesmo erro |
| Limpar creds.json (forçar re-pair) | Mesmo erro |
| Reiniciar processo | Mesmo erro |
| Baileys version | 6.7.24 (única instalada) |
| Solução | Funciona? |
| --- | --- |
| Cloudflared tunnel | Sobe túnel mas não ajuda — cloudflared é túnel HTTP, não proxy SOCKS5 |
| IPv6 direto | Não resolve — problema é no handshake, não na rede |
| Limpar estado da instância | Não resolve — rejeição é antes da autenticação |
Diagnóstico
O problema é específico do handshake criptográfico (Noise Protocol) do Baileys sendo rejeitado pelo WhatsApp.
Hipótese principal: o WhatsApp está bloqueando conexões Baileys originadas do IP 31.97.243.106 — não por ban tradicional, mas por rate-limit ou fingerprinting do protocolo.
Possíveis causas:
1. IP da VPS está em lista de bloqueio/suspeita do WhatsApp
2. Características do protocolo Baileys sendo identificadas como bot
3. Volume de tentativas de conexão (várias instâncias, vários retries)
4. Fingerprint do TLS/Noise diferente do WhatsApp Web normal
Estado atual
Soluções possíveis
1. SOCKS5 com IP limpo (mais provável de funcionar)
Requisito: servidor externo com IP não bloqueado
2. Rodar Baileys local (na máquina do usuário)
3. Outra VPS com IP limpo
4. Investigar se o problema é reversível
Para configurar SOCKS5
O servidor já tem suporte pronto:
`javascript
// server.js linha 141-154
const { SocksProxyAgent } = require('socks-proxy-agent');
const PROXY_URL = process.env.BAILEYS_SOCKS_PROXY || '';
// Se BAILEYS_SOCKS_PROXY=socks5://host:port, usa proxy
`
Passos quando tiver proxy:
`bash
export BAILEYS_SOCKS_PROXY=socks5://IP_CLEAN:PORT
reiniciar processo rsconnection
`
Ações pendentes
1. [ ] Encontrar servidor para criar SOCKS5 (IP limpo)
2. [ ] Testar conexão via proxy SOCKS5
3. [ ] Se funcionar, documentar como criar proxy para futuras crises
Arquivos relevantes
Atualizado em
2026-08-14 22:40 BRT