SOCKS5 UDP-associaties met het socks-pakket van Node
Gebruik een SOCKS5-associatie en datagram-framing wanneer een Node-applicatie UDP via een proxy nodig heeft.
Het Node-pakket socks gebruikt een SocksClient-instantie met command: 'associate' voor UDP. De handige fabriek SocksClient.createConnection() verwerkt in plaats daarvan TCP CONNECT.
Het associatievoorbeeld van het project combineert de SOCKS-client met een aparte lokale UDP-socket:
- Stel UDP ASSOCIATE in en houd de TCP-besturingsverbinding vast.
- Lees de relayhost en -poort die de server teruggeeft.
- Gebruik
createUDPFrame()om uitgaande payloads met hun bestemmingsadres te framen. - Stuur de datagrammen naar de relay en gebruik daarna
parseUDPFrame()op inkomende relayframes voordat je payloads aan de applicatie aflevert.
De dgram-socket van Node levert UDP-transport; hij interpreteert geen SOCKS-URL. De associatie en framing leveren het proxyprotocol rond die datagrammen.
De server moet UDP ondersteunen en het relay-eindpunt moet bereikbaar zijn. Een geslaagde TCP-verbinding naar de oorspronkelijke proxy-poort test dat pad niet. Sluit de besturings- en UDP-resources wanneer de associatie niet meer nodig is.