Closed zakuwaki closed 1 year ago
@nekohasekai Full log updated, please check.
猜测和proxyproto有关
准备抽时间review一下go-proxyproto库
proxyprotocol 与 shadowsocks 2022 冲突了。
我认为这是预期的行为,并且似乎没有需要同时启用两者的场景。
cc @nekohasekai
update: 这里写bug了
观测到一个现象,proxyproto返回的错误都是proxyproto.ErrNoProxyProtocol
,这个是符合预期的,因为此时只会Peek而非Read这里的bufReader
然后打印bufReader.Buffered()
时,发现当值为32的时候,会引发shadowsocks bad header的错误
初步分析是和这里有关
当我在L28后插入下列代码时,相关的问题不在复现
_, err = bufReader.Peek(64)
if err != nil {
return nil, err
}
针对sing的设计问题,发起了一个mr https://github.com/SagerNet/sing/pull/23
與shadowsocket衝突
Welcome
Description of the problem
22bf7a9509403f9828037e9d0152d2a965c453fe commit的sing-box shadowsocks server,上述问题不会复现Version of sing-box
Server and client configuration file
server config
Server and client log file
After run
curl -x socks5://127.0.0.1:11080 baidu.com
10 times in client.server log