e1732a364fed

Results 129 comments of e1732a364fed

关于该漏洞的解决也是不难的,因为又不是必须要循环才能探测到23 3 3. 我们直接探测数据头部就行吧。 在我的新项目 https://github.com/e1732a364fed/v2ray_simple 中实现了 新版的 非魔改tls 的 splice,就是使用的新的tls探测方式,无需循环。 然而,verysimple的splice依然会遇到 一些 alert方面的问题,所以 这种 对拷直连的问题依然是不安全的,还是参考 issue12 和 16; 看起来似乎issue12只要不使用origin就行,但是issue16就不知了。总之 我还是要再学习一下tls 的alert问题,才能对alert的issue进行继续讨论; 不过本issue的话总之解决是不难的。删掉循环即可。

此功能有用、好实现,即将被实现。

最新代码实现了,你可以试试。

> > 最新代码实现了,你可以试试。 > > 测试失败了,服务启动时说: ERROR can not create outClient: {"error": " [ parse sendthrough ip failed , Detail: address 1.1.1.1: missing port in address ] "} 是必须添加端口吗? 啊,我注释写错了。应该是要加一个...

这个错误应该是读取错误,也就是listen部分的问题,和dial没关系,因为还没开始拨号。你可以自行在main.go 里搜索这段错误的位置。

你在 sendThrough配置中,具体是用的 “127.0.0.1:0”,“0.0.0.0", 还是 “111.222.333.444:0" 呢? 如果是前两种,golang应该也是会自动用ipv6的。

你要是直接贴上你配置文件就省事多了,省的我一句一句问。 你是不是在trojan上设置的sendthrough? direct也需要设sendThrough的,否则直连的链接是不会通过你trojan设置的sendThrough拨号的。 你的vps如果是在国外,那么一般都是直接direct链接国外网址的,对吧,那你就要在direct上配置sendThrough

如果不是这个问题的话,那么我猜还有一种可能。因为日志里显示似乎所有的请求都是dns解析之前的。也许被解析成ipv6之后,sendThrough的配置就失灵了?(谁知道golang内部搞什么鬼) 如果直接访问一个ipv6的 ip地址呢?

实在搞不懂啊,为什么你的 "connid" 都是 251049, 而 handler 却显示为 tcp+tls+trojan,不应该再加上 +smux+simplesocks吗。 如果不是多路复用的话,为什么所有连接的connid都是一个值呢。 难道你用正则把所有connid都改了?