JAVA SOCKS Server

It is a SOCKS server written entirely in Java, which supports both SOCKS4 and SOCKS5 protocols. This software is distributed under GNU Lesser General Public License, meaning that both binary and source code are freely available and can be modified an distributed.

I would not bother you with long list of things I'm not responsible for. Let me just say, that you are using this program on your own risk, and it is not me to blame if anything doesn't work as you expected. I tried my best, but it is up to you to check if it works as you wish it to, the source code is there, so you can correct whatever you don't like.

Update Information

Current version is 1.01. Proxy have been rewised and there are some changes to the Socks Library. New features have been added to the proxy server itself, well at least one Some bug fixes have been done, it is now possible to use ICQ with this proxy server.

How to download

Source code pre compiled class files an documentation are all available for download. All of them are compressed using jar utility, which is part of the standard JDK distribution from SUN. The format is compatible with the one used by pkzip and Winzip programs, so you can use those programs to decompress these files.
Pre compiled class files - class files, configuration and batch files to run proxy server.
Source code - Complete source code for SOCKS proxy and some other programs which use socks package.
Socks documentation - Documentation for socks package, for those who want to use it.
Online Documentation - Online version of the SOCKS documentation.

What this Server is good for?

Well, it is a not a commercial proxy server. It does not have plenty of features like address caching. Authentication scheme is rather simplistic, but can be extended, if you know how to program in Java. It is java application after all, which gives platform independence but at the cost of performance. But it is simple to install and use.

It is assumed that the socks library itself is more useful to most developers, rather than a simple server which uses the library. If you are a developer and want your applications to have support for SOCKSv5 protocol, you might find useful visiting Socks Library page.

SocksEcho

SocksEcho is another application which uses socks package. It is GUI echo client, which is SOCKS aware, you can make and accept connections through the proxy using this client. You can also send datagrams through SOCKS5 proxy. I have used it a lot for testing. This application is also included.

How to Install

First download pre compiled class files, and unzip the socks_bin.zip this will create a directory called socks. See README.html in this directory for further instructions.

Requirements

In order to run these application you will need Java Virtual Machine which supports Java 1.1 or higher. I have tested it with jdk1.1.6 and jdk1.2.2 under Windows95 and on jdk1.1.5 under Solaris. Server application might be able to run even under java 1.0, but I haven't tested this.
 

Acknowledgments

I would like to thank people at SourceForge for the great services they provide to open source community.