cnbatch / kcptube

同时支持传送TCP与UDP的KCP通道,附带端口跳跃的功能,以及FEC,自带中继服务器支持
BSD 3-Clause "New" or "Revised" License
116 stars 15 forks source link

[feature request]能否考虑在同一个客户端配置文件增加多个端口转发 #9

Closed egg1234 closed 11 months ago

egg1234 commented 12 months ago

如果大佬有精力,能否考虑在同一个客户端配置文件增加多个端口转发,类似下面的配置方式,而且这样也可以不需要在服务器定义转发目的地端口,全部由客户端配置文件决定

"forward": { "127.0.0.1:12322": "127.0.0.1:22", "0.0.0.0:5201/tcp": "127.0.0.1:5201", "0.0.0.0:5353/udp": "8.8.8.8:53" }

或者

"relay_tcps": [ { "listen": "127.0.0.1:2222", // TCP 转发监听地址 "remote": "123.123.123.123:22", // TCP 转发目标地址 "timeout": 300 // TCP 超时秒数 }, { "listen": "127.0.0.1:13389", // TCP 转发监听地址 "remote": "124.124.124.124:3389", // TCP 转发目标地址 "timeout": 300 // TCP 超时秒数 } ], "relay_udps": [ { "listen": "127.0.0.1:5333", // UDP 转发监听地址 "remote": "8.8.8.8:53", // UDP 转发目标地址 "timeout": 60 // UDP 超时秒数 }, { "listen": "127.0.0.1:11080", // UDP 转发监听地址 "remote": "9.9.9.9.9:1080", // UDP 转发目标地址 "timeout": 60 // UDP 超时秒数 } ],

谢谢!

cnbatch commented 11 months ago

新版本提供了这个功能,只不过并不使用json格式,具体用法在这里:自定义映射模式

超时秒数没办法单独设置,因为在 mux tunnel 模式下是统一管理的。如果专门为不使用 mux tunnel 的模式增加设置的话,那就会增加配置文件的复杂程度。所以“单独设置超时”就只能放弃了。

egg1234 commented 11 months ago

已经验证配置为20231021版的客户端自定义端口转发格式,并且同一linux客户端同时转发tcp及udp的端口,即同时转发gost的socks5(tcp)及kcp(udp),并且另外两个windows客户端同时分别使用这两个gost代理播放4k视频,暂时没有发现任何卡顿,并发的转发性能应该没有问题

另外想请教一下,是否dport_refresh的动态端口切换秒数与udp_timeout超时秒数应该没有关联的?

谢谢!

cnbatch commented 11 months ago

都是相互独立的 dport_refresh 的有效范围是客户端与服务器之间的连接路径,而 udp_timeout 是指 UDP 应用程序 ↔ kcptube 之间的超时设置

egg1234 commented 11 months ago

明白了,谢谢!