Associações UDP SOCKS5 com o pacote socks do Node
Use uma associação SOCKS5 e o enquadramento de datagramas quando um aplicativo Node precisar de UDP por meio de um proxy.
O pacote socks do Node usa uma instância SocksClient com command: 'associate' para UDP. Sua fábrica conveniente SocksClient.createConnection() trata TCP CONNECT em vez disso.
O exemplo de associação do projeto combina o cliente SOCKS com um soquete UDP local separado:
- Estabeleça UDP ASSOCIATE e mantenha sua conexão de controle TCP.
- Leia o host e a porta do relé retornados pelo servidor.
- Use
createUDPFrame()para enquadrar os payloads de saída com o endereço de destino. - Envie os datagramas ao relé e, em seguida, use
parseUDPFrame()nos quadros de entrada do relé antes de entregar os payloads ao aplicativo.
O soquete dgram do Node fornece o transporte UDP; ele não interpreta uma URL SOCKS. A associação e o enquadramento fornecem o protocolo do proxy em torno desses datagramas.
O servidor deve suportar UDP, e o endpoint do relé deve ser alcançável. Uma conexão TCP bem-sucedida à porta inicial do proxy não testa esse caminho. Feche os recursos de controle e UDP quando a associação não for mais necessária.