GoProxy is a high-performance proxy server implemented in Go that supports HTTP, HTTPS, SOCKS5, WebSocket, TCP, and UDP protocols.
The tool addresses the need for flexible network proxying and traffic routing across multiple protocols. It works by accepting connections on configurable ports and forwarding traffic according to user-defined rules, supporting both forward and reverse proxy modes. The implementation emphasizes performance through Go's concurrency model and offers protocol conversion, allowing clients using one protocol to connect through proxies using another.
Organizations should choose this tool if they need multi-protocol proxy capabilities in a single binary, particularly for scenarios involving NAT traversal, internal network exposure, or protocol bridging. It suits projects requiring transparent proxying, port forwarding, or chain-style proxy configurations where traffic passes through multiple proxy hops. The tool includes rate limiting, connection limits, and authentication mechanisms for operational control. The README does not name alternative projects for direct comparison.
The project maintains a substantial user base, with almost all open issues raised by outside users rather than the core team. Maintainers typically respond to new issues and pull requests within a day. Work in the issue tracker is dominated by enhancement requests, TODO items, and helpful discussions.