功能类似于dlundquist/sniproxy
推荐 OpenResty 加上 stream 模块和 ngx_stream_lua_module 模块。在 1.9.15.1 上测试通过。
测了一下比 nginx 的 stream 模块直接转发 443 速度低 20%。转发的部分现在还很 low ,需要读 TLS 的头取得包长度,然后一次性读完之后给对面。不知道各位有啥好的建议不。
1
ericFork 2016-06-06 06:04:52 +08:00
excited. +1s
|
2
fcicq 2016-06-06 06:24:04 +08:00
赞.
``` wait( spawn(_upl, self), spawn(_dwn, self) ) ``` 能不能直接换成 port forwarding? |
3
49 2016-06-06 06:53:31 +08:00 via iPhone
绝赞!
|
4
fcicq 2016-06-06 06:56:30 +08:00
好像没有这个能力. 只能去求一个类似 nodejs 的 xxx.pipe(yyy) 的 api 了, 直接挂在 read_event_handler 和 write_event_handler 上.
在这个 api 没有做出来之前可以把 send 和 receive 的字节数都去掉, 收到多少发多少. |
11
fffonion OP @fcicq 这种我觉得要么是头上带长度然后 receive(length),要么有分隔符的 receiveuntil(分隔符)?个人感觉 openresty 的 socket 得用同步的思想来写
|
12
mengskysama 2016-06-06 13:10:07 +08:00 via iPhone
春哥说正则有 jo 参数(
|
13
fffonion OP @mengskysama 好我去加一个
|
14
wujunze 2016-06-06 14:24:54 +08:00
mark
|
15
shanliang 2016-06-06 23:58:18 +08:00
mark
|
16
fengjianxinghun 2016-08-13 20:46:07 +08:00 via iPhone
自己改源码包装个 ioctl 出来得 fd buf 长度
|