Xray-core
Xray-core copied to clipboard
V2RayN连接Xray进行代理,大流量并发下载一段时间,连接中断,下载0KB的情况,对策方向其一
源址: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确认):
知道这一点后,对策就简单了许多: 调整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 使修改生效