全球主机交流论坛

标题: 论TCP/UDP中转、转发的高效方案 [打印本页]

作者: ddane    时间: 2022-2-11 19:45
标题: 论TCP/UDP中转、转发的高效方案
本帖最后由 ddane 于 2022-2-12 21:20 编辑

动手前,打算投个票 收集整理下 服务有同需要的人们。

场景(支持IPV6、域名):
ipv4(1.1.1.1:88)===转发==》ipv6(2409:1111:1111:1111:1111:4dd3:c2cd:88)
或者
ipv4(1.1.1.1:88)===转发==》ipv6(www.91ai.net:88)

在此种场景下发现socat会被封,可能是长连接导致的?

在此种场景下哪个方案最高效?

没有列出的希望大牛们贴上。

2022.2.12更新反馈

感谢各位大佬的建议,经过个人测试结果如下仅供参考:

同机下安装socat和Haproxy

socat 转发910
Haproxy 转发911

结果:Haproxy 速度上占优势




作者: catdrive    时间: 2022-2-11 19:46
nc是啥
作者: hcyme    时间: 2022-2-11 19:47
完全不懂,目前用的v2转发
作者: ddane    时间: 2022-2-11 19:48
catdrive 发表于 2022-2-11 19:46
nc是啥

netcat
作者: sagerking    时间: 2022-2-11 19:52
ipv6不知道,单纯ipv4转发,iptables yyds
作者: 游戏人生超    时间: 2022-2-11 19:53
iptables   万能!YYDS!不接受反驳~~~
作者: ddane    时间: 2022-2-11 19:56
游戏人生超 发表于 2022-2-11 19:53
iptables   万能!YYDS!不接受反驳~~~

iptables 是长连接么
作者: dunce    时间: 2022-2-11 20:04
首先不考虑iptables,它是直接转发报文,不经过内核协议栈

剩下的几个里面除了nginx,用的都是老旧的并发模型,性能感人。而nginx不支持零拷贝(有sendfile,但是没有splice),还是差了点意思
作者: 目白琳庭    时间: 2022-2-11 20:05
你要v4 v6互转iptables就不行啊。iptables6也不能转v4啊。
作者: ddane    时间: 2022-2-11 20:07
dunce 发表于 2022-2-11 20:04
首先不考虑iptables,它是直接转发报文,不经过内核协议栈

剩下的几个里面除了nginx,用的都是老旧的并发 ...

那您觉得用哪个比较高效?推荐个方案 大佬
作者: dunce    时间: 2022-2-11 20:12
ddane 发表于 2022-2-11 20:07
那您觉得用哪个比较高效?推荐个方案 大佬

开启splice option的haproxy,或者realm
作者: netsky    时间: 2022-2-11 20:29
会不会被封
作者: goldharp    时间: 2022-2-11 21:12
tproxy
作者: flyingfly02    时间: 2022-2-11 22:15
用的是 brook, 也不知道好不好,就是一键脚本用起来方便
作者: cangshui    时间: 2022-2-11 22:20
gost
作者: sdqu    时间: 2022-2-11 23:26
iptables其实理论上是最差的,因为用不到bbr

作者: zty123    时间: 2022-2-12 01:17
ipv6转发对我来说是个难题,一直找不到办法还
作者: kokorobeats    时间: 2022-2-12 01:54
怎么没有没有gost?
作者: 诡谲    时间: 2022-2-12 02:00
没有realm,我不投票~
作者: HardDisker    时间: 2022-2-12 03:18
Realm 吧,能开 BBR,还有一键脚本,简单上手,性能强。
作者: flyqie    时间: 2022-2-12 06:08
自己写才是坠符合需求的
作者: sqlemma    时间: 2022-2-12 08:55
简单上手,性能强。

作者: nrbs    时间: 2022-2-12 09:45
iptables  最好 没有之一
作者: txjcv    时间: 2022-2-12 11:17
还忘记了一个redir
作者: biggedogs    时间: 2022-2-12 11:26
gost
作者: whoistop    时间: 2022-2-12 18:47
不需要udp的话haproxy吧
作者: ddane    时间: 2022-2-12 18:48
whoistop 发表于 2022-2-12 18:47
不需要udp的话haproxy吧

谢谢
作者: ddane    时间: 2022-2-12 18:51
ddane 发表于 2022-2-12 18:48
谢谢

haproxy 支持转到到域名吗比如:123.com:88
作者: whoistop    时间: 2022-2-12 19:08
ddane 发表于 2022-2-12 18:51
haproxy 支持转到到域名吗比如:123.com:88

支持
作者: ddane    时间: 2022-2-12 21:20
结果已更新
作者: micms    时间: 2022-2-12 23:16
iptables 应该最多人用了吧
作者: openos    时间: 2022-2-12 23:59
HAProxy不支持UDP啊
作者: yangyzp    时间: 2022-2-13 08:37
没有
作者: yangyzp    时间: 2022-2-13 08:38
没有nftables吗?iptables的升级版
作者: suichang    时间: 2022-2-13 10:22
dunce 发表于 2022-2-11 20:12
开启splice option的haproxy,或者realm


haproxy不支持udp后端,话说开启splice的haproxy tcp也没golang 的copy快。
作者: suichang    时间: 2022-2-13 10:24
推荐nginx,虽然速度不是最好。
作者: alsas    时间: 2022-2-13 13:47
haproxy C语言编写 性能极强
作者: dunce    时间: 2022-2-13 15:20
suichang 发表于 2022-2-13 10:22
haproxy不支持udp后端,话说开启splice的haproxy tcp也没golang 的copy快。

haproxy确实不支持L4的udp,它只支持基于udp的quic和dns

golang的io.Copy断言出TcpConn以后用的也是splice,我猜可能是haproxy开的pipe比较小。

golang的问题在于1v1的并发模型,等连接数多了以后调度成本会很高
作者: sytta    时间: 2022-2-13 20:20
iptables 支持TCP跟UDP转发吗 我上次转发s5不通
作者: hcyme    时间: 2022-2-14 00:05
Haproxy转发倒是可以试试看看,谢谢分享
作者: nebulabox    时间: 2022-2-14 09:36
yangyzp 发表于 2022-2-13 08:38
没有nftables吗?iptables的升级版

nftables 相比较 iptables 功能有减少(至少我没找到),而且配置起来和 iptables 一样的麻烦,文档还少的可怜。
作者: kvmgo    时间: 2022-2-14 15:17
haproxy不支持udp 这个是无解的吧
作者: Chappako    时间: 2022-2-15 17:39
realm
不解事
作者: terrytw    时间: 2022-2-15 18:15
iptables性能稀烂
brook>rinetd>socat
haproxy不支持UDP
作者: lsin    时间: 2022-2-16 15:34
本帖最后由 lsin 于 2022-2-16 15:36 编辑
dunce 发表于 2022-2-11 20:12
开启splice option的haproxy,或者realm


realm用上了,感觉很强,就是版本号怎么从1.40-rc3跳到1.50,然后1.50又出RC
作者: dunce    时间: 2022-2-16 15:41
lsin 发表于 2022-2-16 15:34
realm用上了,感觉很强,就是版本号怎么从1.40-rc3跳到1.50,然后1.50又出RC

版本号跟上游最新版本保持一致,上游不更新的话,我新发布都只用rc
作者: 月の天使    时间: 2022-2-17 18:11
netsh interface portproxy add v6tov4
作者: zgsh5000    时间: 2022-2-18 08:22
进来学习
作者: shuang76    时间: 2022-2-18 11:33
iptables yyds
作者: syouko    时间: 2022-2-25 09:24
lsin 发表于 2022/2/16周三 下午3:34:55
dunce 发表于 2022-2-11 20:12
开启splice option的haproxy,或者realm


realm用上了,感觉很强,就是版本号怎么从1.40-rc3跳到1.50,然后1.50又出RC

我记得是粉丝用爱发的PR
作者: 小菜逼    时间: 2022-3-2 23:19
完全不懂,目前用的v2转发
作者: 渡渡鸦    时间: 2022-3-3 09:00
gost不错
作者: comet    时间: 2022-3-16 01:40
Haproxy
作者: 镜子里的我    时间: 2022-3-16 21:56
我觉得我有必要收藏下这个贴
作者: lightout    时间: 2022-3-17 08:50
Iptables我按照教程从来没成功过
作者: skywing    时间: 2022-3-17 08:53
为什么没有gost,在用,觉得方便灵活
作者: keylows    时间: 2022-3-19 17:34
iptables效率极差
作者: hcyme    时间: 2022-3-19 17:34
弄个翻案啊,我复制粘贴一下,haproxy一直都用在路由器负载均衡,转发的试了试,总是不行,现在还用的v2内置转发,方便是方便,就怕性能有损伤
作者: imswing    时间: 2022-3-20 20:40
realm秒这里面所有
作者: chinni    时间: 2022-3-20 20:41
github 搜索 portfwd 纯c 实现
作者: sunshao86    时间: 2022-3-25 10:51
关键还是要找一个好的落地节点~ 否则再转发也没用~
作者: rocky1015    时间: 2022-3-30 20:36
一般转发,我都跑个软路由来做端口映射。。。性能好像最好
作者: xcpan710    时间: 2022-3-30 23:07
windows自带转发
作者: wj8809119    时间: 2022-3-31 15:10
不太懂 有没有大佬给个方案
作者: xixi3    时间: 2022-4-17 00:14
果然这才是互联网的正确提问方式嘛……收割一大波好用的转发工具。
作者: Factory    时间: 2022-5-9 04:12
提示: 作者被禁止或删除 内容自动屏蔽
作者: thaizxj    时间: 2022-5-9 08:32
nginx不行嘛?
作者: hoopan    时间: 2022-5-9 08:37
用的nginx
作者: zgs    时间: 2022-5-15 20:04
iptables yyds
作者: abc.xyz    时间: 2022-5-15 20:07
用坛子里某大佬的realm,主要是配置简单,适合我这种小白。。。
作者: mfch666    时间: 2022-5-15 20:28
固定的用  iptables  经常变动的 nginx
作者: hcw1588    时间: 2022-5-23 06:18
nftables 配合 flowtable 配置进行 OFFLOAD
作者: imswing    时间: 2022-5-23 08:38
realm或者gost
作者: gzelvis    时间: 2022-5-27 12:58
haproxy
作者: xiaomifan    时间: 2022-5-28 10:16
不错
支持发更多技术帖子
作者: lanlandezei    时间: 2022-5-28 10:20
用了
Realm 还不错
作者: Zy143L    时间: 2022-5-30 10:17
你们为啥没人用brook啊..
文档完善 参数简单 还支持socks5转换
作者: aru    时间: 2022-5-30 10:18
iptables / haproxy / nginx
后面两个都挺方便的
作者: batsom    时间: 2022-5-30 10:18
iptables   万能!YYDS!不接受反驳~~~
作者: woshixp    时间: 2022-5-30 10:24
gost转发IPV6的时候转发是IPV6地址的时候记得带括号[IPV6],haproxy转发的时候在配置文件内(bind :::转发端口)。
作者: minota    时间: 2022-5-30 19:24
iptables yyds
作者: yuone    时间: 2022-5-30 19:46
Socat简单
作者: h202    时间: 2022-6-3 08:25
https://www.91ai.net/thread-904964-1-1.html  看了一下我好像有4转6 6转6的帖子




欢迎光临 全球主机交流论坛 (https://www.91ai.net/) Powered by Discuz! X3.4