argyle
A basic SOCKS5 server library written for node.js.
Features/Limitations
argyle supports the most basic features of SOCKS and not a whole lot more, namely:
- 'No authentication' auth mode only
- CONNECT commmand only
In the future I may add support for more auth modes and commands, but currently this implementation works well for my main use case (sitting between a local browser and server).
Usage
Example: "Normal" proxy server
var argyle = ; var server = ;server;
node-throttled-stream
Example: Throttled proxy server usingvar argyle = throttle = kbpsUp = 32 kbpsDown = 128; var server = ;server;
Methods
argyle([port = 8080], [host = 127.0.0.1], [debug = false])
Sets up a new SOCKS server on the specified port and host. If debug is specified, the server will output messages about the status of connections.
Events
'connected'
A new client connected to the server and the socket to their requested destination is now open. Handlers for this event are passed a request
socket, corresponding to the client that made the request from the server, and a destination
socket, corresponding to the server that they requested to connect to.
Installation
With npm:
npm install argyle
License
WTFPL