Xray-core icon indicating copy to clipboard operation
Xray-core copied to clipboard

V2RayN连接Xray进行代理,大流量并发下载一段时间,连接中断,下载0KB的情况,对策方向其一

Open zuilintan opened this issue 2 years ago • 0 comments

源址:https://github.com/v2ray/v2ray-core/issues/2198#issuecomment-1975009158

我遇到了类似的情况(我的VPS系统为CentOS7),经过调查,最终发现问题出在Linux的 conntrack 身上。

conntrack是Linux的一个连接跟踪器,可以对连接(TCP与UDP等)记录并跟踪, 它自身存在记录上限(可通过sysctl net.netfilter.nf_conntrack_max确认。我这台VPS的conntrack_max只给了8192), 当当前连接数达到了该上限(可通过sysctl net.netfilter.nf_conntrack_count确认), 后续的新连接将会被drop(可通过查看/var/log/messages确认): image

知道这一点后,对策就简单了许多: 调整onntrack_max相关参数的大小 vi /etc/sysctl.conf 添加: net.nf_conntrack_max = 65536 # 正常应该视内存上限,换算一个合理的值(e.g. 32G内存可以设置1048576),但个人实测大流量下载使net.netfilter.nf_conntrack_count到了10000+,内存占用并无显著上升,故选择默认65536 net.netfilter.nf_conntrack_max = 65536 #同上 net.netfilter.nf_conntrack_buckets = 16384 # 建议为conntrack_max的四分之一

保存退出后,执行: sysctl -p 使修改生效

zuilintan avatar Mar 03 '24 03:03 zuilintan