Skip to content

A simple SOCKS v4a proxy server written in C# (.NET Standard 2.0) which forwards all traffic to a SOCKS v5 server.

License

Notifications You must be signed in to change notification settings

OutisNemo/SocksRelayServer

Repository files navigation

SocksRelayServer

About the project

Build Status Codacy Badge

A simple SOCKS v4a proxy server written in .NET Standard 2.0 which forwards all traffic to a SOCKS v5 server. The proxy server does not support authentication however it can connect to a SOCKS v5 server using username and password. UDP and Bind commands are not supported. It also provides an interface for custom DNS resolving and a default DNS resolver as well. It can also use the upstream proxy for resolving the hostnames.

How to install

You can easily install this package to your project using NuGet.

See the NuGet page

How to use

You can find detailed usage examples in the tests/SocksRelayServerTests.csproj project.

How to write a custom DNS resolver

All you need to do is implement the IDnsResolver interface and pass your implementation to the SocksRelayServer instance using it's DnsResolver property. You can see a working example in the tests/SocksRelayServerTests.cs file.

License

See the LICENSE file in this repository.