写了一个使用 WebSocket 的 Tcp 隧道代理

2021-05-11 11:34:12 +08:00
 zanjie1999

https://github.com/zanjie1999/tcp-over-websocket

本工具能 使用 WebSocket 创建隧道,实现 TCP 流量的端口转发

具体能干嘛,可以发挥你自己的小宇宙~
相当于使用只能提供 http Websocket 服务的 CDN 实现 TCP 流量代理

用 golang 写的
请合法使用

4680 次点击
所在节点    程序员
20 条回复
kennylam777
2021-05-11 12:15:43 +08:00
v2ray websocket 模式可以了解一下
lostberryzz
2021-05-11 12:22:56 +08:00
xray websocket 0rtt 了解一下,楼上的强化版
zanjie1999
2021-05-11 12:29:04 +08:00
@kennylam777 @lostberryzz
这对于我的环境并不合适,因为我只需要端口转发(举个🌰转发个 ssh )
(需要 socks 只需要 ssh -D 再转出来即可)
araaaa
2021-05-11 12:34:41 +08:00
@zanjie1999 #3 iptables
chenqh
2021-05-11 12:53:24 +08:00
99 年,NB
NSAgold
2021-05-11 13:16:04 +08:00
其实有现成的 chisel 可以用,我前几天还在折腾。支持直接开个 socks,或者其他的 tcp/udp 端口。
不过 chisel 的资料确实少,不止中文,英文资料也少,我最后还是靠一个日语博客搞定的😂
但是 chisel 可以通过 ws/wss 传输 udp 数据,还是挺骚的。
NSAgold
2021-05-11 13:18:04 +08:00
@NSAgold 顺带一提,我的用法是用 chisel,通过 cf 的 cdn,走 wss 传输原先走 tcp 的、会暴露服务器 ip 的 serverstatus 探针的数据。
Ehco1996
2021-05-11 13:23:07 +08:00
欢迎试试我的 @NSAgold

https://github.com/Ehco1996/ehco

---

@zanjie1999

很棒哟,有个小建议,build 好的文件不要放在 repo 里
比较常见的做饭是放到 release 里
NSAgold
2021-05-11 13:26:50 +08:00
@Ehco1996 谢谢 但是目前已经在用 https://github.com/jpillora/chisel 了,短时间内没有折腾的欲望😂😂
sunny352787
2021-05-11 13:36:59 +08:00
mian...强迫症血压上升了...
zanjie1999
2021-05-11 13:42:40 +08:00
@araaaa iptables 并不行,因为中间有高防,只会转发 http 流量(就像 nginx 的 proxy )
要是直接多级端口转发出来的可以直接 iptables -t nat -A PREROUTING 指定来源 ip 来复用端口
https://cupinkie.com/iptables-useful-command.html
zanjie1999
2021-05-11 14:21:51 +08:00
@sunny352787 使用 main 做文件名是为了 go (run|build) 的时候可以不输文件名,至于其他规范嘛没了解过 XD,请多多指教
zanjie1999
2021-05-11 14:29:43 +08:00
@Ehco1996 #8
看了下感觉好棒,我好像又做了多余的工程了

另外编译输出的二进制文件确实是在 release 里,看到的 7z.exe 确确实实只是一个 7zip-Windows 而已,是为了在编译的同时生成用来骗防火墙,假装自己是图片的 zip 合成文件 tcp2ws-zip-linux.png
sunny352787
2021-05-11 17:04:45 +08:00
@zanjie1999 你文件名拼写错误...
shansing
2021-05-11 17:13:36 +08:00
v2ray-plugin 是可以独立使用的。
catsoul
2021-05-11 17:32:05 +08:00
@zanjie1999 人家的意思是应该拼写为 main,你写成了 mian 。这种 typo 应该直接处理掉再提交了,因为现代化的 IDE 都会提示
zanjie1999
2021-05-12 10:08:19 +08:00
@catsoul 欸我自己都没发现
abersheeran
2021-05-12 10:37:11 +08:00
你让我想到了我写的 [websocks]( https://github.com/abersheeran/websocks)……比起 v2ray-over-websocket 没有别的优势,只是配置简单、协议简单,用起来方便。
zanjie1999
2021-05-12 17:02:53 +08:00
@abersheeran 看了下 wiki 确实简单,star+1
zbinlin
2021-05-16 22:05:58 +08:00
我用 websocat

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/776197

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX