Associazioni UDP SOCKS5 con il pacchetto socks di Node
Usate un'associazione SOCKS5 e l'incorniciatura dei datagrammi quando un'applicazione Node ha bisogno di UDP tramite un proxy.
Il pacchetto socks di Node usa un'istanza SocksClient con command: 'associate' per UDP. La sua comoda factory SocksClient.createConnection() gestisce invece TCP CONNECT.
L'esempio di associazione del progetto combina il client SOCKS con un socket UDP locale separato:
- Stabilite UDP ASSOCIATE e mantenete la sua connessione di controllo TCP.
- Leggete l'host e la porta del relay restituiti dal server.
- Usate
createUDPFrame()per incorniciare i payload in uscita con il loro indirizzo di destinazione. - Inviate i datagrammi al relay, poi usate
parseUDPFrame()sui frame in ingresso del relay prima di consegnare i payload all'applicazione.
Il socket dgram di Node fornisce il trasporto UDP; non interpreta un URL SOCKS. L'associazione e l'incorniciatura forniscono il protocollo del proxy attorno a quei datagrammi.
Il server deve supportare UDP e l'endpoint del relay deve essere raggiungibile. Una connessione TCP riuscita alla porta iniziale del proxy non verifica quel percorso. Chiudete le risorse di controllo e UDP quando l'associazione non serve più.