You will implement a SOCKS4a proxy server in PURE Ruby with no external libraries or gems other than those included with Ruby.
The server MUST be able to handle multiple client simultaneously.
The server MUST be able to handle multiple client requests simultaneously (so that, for example, a browser can make concurrent asset requests).
The server MUST support the entire SOCKS4a implementation such that DNS queries can be made on behalf of the client by the server (to be tested in Firefox).
If this project goes well there will be extra to extend the implementation to support SOCKS 4, 4a and 5 (including authentication).