Skip to content

ssmanager with ipv6_first option doesn't work as expected #1101

Closed
@ntzyz

Description

@ntzyz

For example, with the following configuration:

{
  "servers": [{
    "address": "::",
    "port": 34156,
    "password": "redacted",
    "method": "aes-256-gcm"
  }],
  "dns": "2001:4860:4860::8888",
  "mode": "tcp_and_udp",
  "manager_address": "127.0.0.1",
  "manager_port": 55001,
  "ipv6_first": true
}

The server will always establish connections using IPv4 unless the website is IPv6 only:

$ all_proxy=127.0.0.1:6152 curl -s cloudflare.com/cdn-cgi/trace | grep ip
ip=103.152.<redacted>.<redacted>
$ all_proxy=127.0.0.1:6152 curl -s ipv6.ip.sb
2406:4440:<redacted>::<redacted>

However, there is no such issue when using this same configuration with ssserver.

$ all_proxy=127.0.0.1:6152 curl -s cloudflare.com/cdn-cgi/trace | grep ip
ip=2406:4440:<redacted>::<redacted>

An attempt to fix the issue was made in this commit: ntzyz@f51769c. Please let me know if the patch is acceptable, I'd like to create a pull request if it's okay.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions