自建V2Ray网速慢得像蜗牛?这些优化技巧让我速度翻倍
上周我兴冲冲地搭建了自己的V2Ray服务器,结果发现网速慢得连看个720p视频都卡成PPT。作为一个”绝不认输”的技术宅,我花了三天时间折腾各种优化方案,终于把速度从50kbps提升到了5Mbps。今天就把这些实战经验分享给大家。
第一步:先确认是不是服务器本身的问题
我犯的第一个错误就是直接开始调优,结果发现其实是服务器带宽被邻居占满了。建议先用以下命令做个基础测试:
# 测试服务器到本地的下载速度
wget -O /dev/null http://speedtest.tele2.net/100MB.zip
# 测试服务器本身的网络质量
ping 8.8.8.8
mtr 8.8.8.8
如果服务器本身速度就很慢,那问题可能出在:
- VPS提供商限速(特别是便宜的小厂商)
- 服务器所在地区网络拥堵
- 你的宽带运营商限制国际出口
第二步:V2Ray配置优化
我的服务器是2核2G的配置,默认配置下CPU占用经常飙到80%。修改config.json
这几个参数后效果显著:
{
"inbounds": [...],
"outbounds": [
{
"protocol": "freedom",
"settings": {
"domainStrategy": "UseIP" // 强制使用IP连接
},
"streamSettings": {
"sockopt": {
"tcpFastOpen": true // 启用TCP快速打开
}
}
}
],
"routing": {
"domainStrategy": "IPOnDemand" // 按需DNS解析
}
}
特别提醒:如果你的服务器在国内,一定要把domainStrategy
设为"UseIP"
,能避免DNS污染导致的连接延迟。
第三步:传输协议的选择很重要
我测试了各种组合后发现:
- WS+TLS:最稳定但速度一般(适合严格审查环境)
- TCP+XTLS:速度最快但可能被QoS
- mKCP:抗丢包但耗流量
我的最终方案是白天用TCP+XTLS,晚上高峰期切到WS+TLS。分享我的mKCP配置(适合游戏加速):
"streamSettings": {
"network": "kcp",
"kcpSettings": {
"mtu": 1350,
"tti": 20,
"uplinkCapacity": 50,
"downlinkCapacity": 100,
"congestion": true,
"readBufferSize": 2,
"writeBufferSize": 2,
"header": {
"type": "wechat-video"
}
}
}
第四步:容易被忽视的系统调优
这几个Linux系统参数调整让我的延迟降低了30%:
# 增大TCP窗口大小
echo "net.ipv4.tcp_window_scaling = 1" >> /etc/sysctl.conf
echo "net.core.rmem_max = 16777216" >> /etc/sysctl.conf
echo "net.core.wmem_max = 16777216" >> /etc/sysctl.conf
# 启用BBR(实测比CUBIC快2-3倍)
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
注意:OpenVZ架构的VPS无法启用BBR,建议换KVM架构。
最后的忠告
经过这一轮折腾,我总结出几个血泪教训:
- 别贪便宜买年付$20的VPS,网络质量真的不行
- 亚洲服务器不一定比欧美快,我最后用的德国服务器反而最稳定
- 定期用
v2ray stats
监控流量,有次我忘了关更新导致一晚上跑了50G流量
如果这些方法都试过了还是慢,可能要考虑换个ISP了(某动说的就是你)。大家有什么独家优化技巧,欢迎在评论区交流!
感谢分享!我之前也遇到过类似问题,试了你的方法后速度确实快了不少 👍
小白表示看完还是有点懵,有没有更简单点的教程啊?这命令行看得我头大
实测TCP+XTLS确实快,但为啥我用德国服务器延迟200+?是不是被运营商限速了