go-gost / gost

GO Simple Tunnel - a simple tunnel written in golang
https://gost.run
MIT License
4.39k stars 528 forks source link

如何实现 支持udp的socks代理 的内网穿透 #525

Closed xwydq closed 5 months ago

xwydq commented 5 months ago

通过rtcp 实现 socks 代理的内网穿透,并不支持udp,请问是配置问题还是本身不支持;如果这种方式不支持 有其他转发方式实现吗?

# 有公网IP(1.2.3.4)的gost
./gost -L socks5://:28443?bind=true&udp=true

# 局域网-设备
./gost -L socks5://:28781?udp=true # 开启socks代理
./gost -L rtcp://:28080/:28781?udp=true -F socks5://1.2.3.4:28443?udp=true # 转发

# 代理穿透正常,但是不支持 udp
curl -x socks5://1.2.3.4:28080 "ipinfo.io"
ginuerzh commented 5 months ago

对于标准socks5,由于每个UDP通道都是监听在随机端口,几乎不太可能内网穿透出去。 可以再起一个前置代理,通过UDP-over-TCP方式进行UDP中转。

gost -L socks5://:1080?udp=true -F socks5://1.2.3.4:28080