This is an alpha version of my tunnelling software that comprises the following features:
First, be aware this software is not guaranteed to work, it's in a development
state, and may end up crashing, taking 100% CPU, etc. The previous (more stable) version
of the tunnel is located here.
Please
report all bugs to me.
Download binary tunnel.jar (191KB) (Download this if you're not sure!)
Download cubehub source and associated libraries (1.1MB)
New! Users have noted a few ms higher pings whilst playing online games using this tunnel over any previous versions. Therefore, I have made a completely stripped down version, completely free of any logging. If you are CERTAIN the previous tunnel works for you, then you can try this but be warned: IT IS IMPOSSIBLE FOR ME TO DEBUG THIS!!. Please let me know how you get on, thanks!
Download optimised log-free tunnel.jar (78KB)
SOCKS 4 and 5 are protocols that are supposed to allow users to send data through a firewall. However, they only work like this if the SOCKS server is on the firewall itself. Whilst TCP/IP traffic is frequently permitted through firewalls, UDP/IP (required by most online games) is often blocked. When a SOCKS 5 server relays UDP data (SOCKS 4 does not support UDP), the packets are simply relayed, there is no tunnelling involved.
This application provides a solution, tunnelling the data being relayed by a SOCKS server over one or (for better gaming performance) multiple TCP connections to help applications and games to work from behind a restrictive firewall.
The following message will be output if you type:
Where the arguments are as follows:
| --server | If specified, will act as a tunnel server. If omitted, will act as a tunnel client. |
| -t <tunnelIP> | If we're running as a client, this tells which tunnel server to connect to. If we're running as a server, this tells which local IP to listen on (use 0.0.0.0 for all IP addresses). The default port number is 6667. If this is not specified, 127.0.0.1:6667 will be used. |
| -s <SOCKSIP> | Client only. This tells which local IP to listen on for SOCKS connections (use 0.0.0.0 for all IP addresses). The default port number is 1080. If this is not specified, 127.0.0.1:1080 will be used. |
| -n <connections> | How many simultaneous (multiplexed) TCP connections to open to the tunnel server. 25 tunnels has been known to work the best for games such as Quake. If other good values are found, let me know! |
Please report all bugs, or send questions to me, Chris Pearson (echinus).