无法连接到 shadowsocks 客户端

Failed to connect to shadowsocks client

我通过 运行 在 VPS 上设置 ss-server 并在我的客户端机器上设置 ss-local 来配置 shadowsocks 系统。 然后我制作了一个简单的 SOCKS5 客户端,它连接到 ss-local 并使用 C 解析 SOCKS 请求。 一切正常,当我 运行 ss-tunnel 而不是 ss-local 时,我的 SOCKS5 客户端无法连接到 ss-tunnel。

TCP 连接一建立就终止。 我不确定什么是正确的原因。

ss-tunnel -c config.json -L <destaddr:port>

但是当我 运行 ss-local 时它会。

ss-local -c config.json

下面是我的配置文件。

{
    "server":"xxx.xxx.xxx.xxx",
    "server_port":443,
    "local_address": "127.0.0.1",
    "local_port":10800,
    "password":"xxxxxxxxxx",
    "timeout":60,
    "method":"chacha20-ietf-poly1305",
    "workers":8,
    "plugin":"obfs-local",
    "plugin_opts":"obfs=tls;obfs-host=www.google.com"
}

ss-local和ss-tunnel的协议有区别吗?我知道这是错误的,但无论如何无法理解他们是如何出错的。 谢谢

ss-tunnel 与 ss-server 建立了一个完整的隧道,所有到 ss-tunnel 的流量都直接中继到 ss-server,没有任何 SOCKS request/resolve 进程。 在我的客户端程序中删除 SOCKS 握手后,它工作正常。