Skip to content

Netty client: support SOCKS proxies #1573

Closed

Description

@jlouvel

Problem

The Netty client connector only supports HTTP proxies (absolute-form forwarding and CONNECT tunnels). Some environments only provide a SOCKS proxy, for example SSH dynamic port forwarding (ssh -D) or certain corporate setups.

Proposed feature

  • Add a proxyType connector parameter (HTTP by default, SOCKS5, maybe SOCKS4), and fall back to the socksProxyHost / socksProxyPort system properties.
  • For SOCKS, add Netty's Socks5ProxyHandler (optionally with username/password) at the head of the pipeline for both HTTP and HTTPS. Requests then use origin-form request lines (no absolute-form forwarding), and the proxy resolves the host names.
  • Netty's netty-handler-proxy is already a dependency, so this needs no new library.
  • Add tests with a minimal SOCKS5 test proxy.

Activity

  1. added 4 commits that reference this issue on Oct 31, 2026
    26f5055
    979173a
    7c5fd1d
    3e638c5
  2. jlouvel commented on Nov 5, 2026

    @jlouvel
    CollaboratorAuthor

    Fixed by #1579: SOCKS5 proxies via the socksProxyHost / socksProxyPort / socksProxyUsername / socksProxyPassword parameters, falling back to the socksProxyHost, socksProxyPort, java.net.socks.username and java.net.socks.password system properties, rather than a proxyType parameter. Netty's Socks5ProxyHandler heads the pipeline for HTTP and HTTPS, and SocksProxyTestCase uses a test SOCKS5 proxy.

    🤖 Generated with Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions