Pachetul socks din Node folosește o instanță SocksClient cu command: 'associate' pentru UDP. Fabrica sa comodă SocksClient.createConnection() se ocupă în schimb de TCP CONNECT.

Exemplul de asociere al proiectului combină clientul SOCKS cu un socket UDP local separat:

  1. Stabiliți UDP ASSOCIATE și păstrați conexiunea de control TCP.
  2. Citiți gazda și portul releului returnate de server.
  3. Folosiți createUDPFrame() pentru a încadra sarcinile utile de ieșire cu adresa lor de destinație.
  4. Trimiteți datagramele la releu, apoi folosiți parseUDPFrame() pe cadrele de releu primite înainte de a livra sarcinile utile aplicației.

Socketul dgram din Node asigură transportul UDP; nu interpretează un URL SOCKS. Asocierea și încadrarea asigură protocolul proxy în jurul acelor datagrame.

Serverul trebuie să accepte UDP, iar punctul final al releului trebuie să fie accesibil. O conexiune TCP reușită la portul inițial al proxy-ului nu testează acea cale. Închideți resursele de control și UDP când asocierea nu mai este necesară.

Articole similare