翻墙入口,Telegram上最大的免费科学上网解决方案提供者,
致力于维护互联网世界普世自由价值、建立翻墙行业新秩序。

Shadowsocks利用 HaProxy 实现中继(中转/端口转发)加速

中继加速(也叫中转,因为国内VPS效果最好所以一般都叫国内中转),是一种技术难度低,但是颇费钱的一种方法。而且要选好的服务器,加速效果才明显。

HaProxy是其中的方法之一,使用方便,但是只支持TCP转发,

其他的优化方案:https://doub.io/ss-jc26/#三、优化Shadowsocks

其他的端口转发教程https://doub.io/ss-jc26/#服务器中继(国内中转)

HaProxy便捷管理脚本:『原创』Shadowsocks HaProxy中继(中转) 便捷管理脚本

Socat:

优点:支持 TCP/UDP 转发。缺点:不支持端口段(多个端口需要开启多个转发)

HaProxy:

优点:支持 TCP 转发,支持 端口段 转发。缺点:不支持 UDP 转发。

iptables:

优点:支持 TCP/UDP 转发,支持 端口段 转发。缺点:配置麻烦,容易莫名其妙出错。

安装步骤

说他难度低也不是没有理由,看完下面的教程就知道多简单了!

以下教程,我是用的日本和美国服务器,我的Shadowsocks服务端安装在美国VPS上。

链接原理:SSR客户端 <=> 国内VPS <=> 美国VPS

安装HaProxy

  1. # Debian/Ubuntu系统:
  2. aptget y install haproxy
  3. # Centos系统:
  4. yum y install haproxy

安装完之后就是配置HaProxy的配置文件了。

配置文件

打开 /etc/haproxy/haproxy.cfg 文件。

  1. vi /etc/haproxy/haproxy.cfg
  2.  
  3. # 如果提示没有vi这个命令,请安装:
  4. # Debian/Ubuntu系统:apt-get -y install vim
  5. # Centos系统:yum -y install vim

打开后把里面的内容全部删除,换成下面的内容。

  1. global
  2.  
  3. defaults
  4. log global
  5. mode tcp
  6. option dontlognull
  7. timeout connect 5000
  8. timeout client 50000
  9. timeout server 50000
  10.  
  11. frontend ssin
  12. bind *:6666
  13. default_backend ssout
  14.  
  15. backend ssout
  16. server server1 233.233.233.233 maxconn 20480

其中 12 行的,把 6666 改成你被中转的VPS上面Shadowsocks服务端的端口,这个端口是你要转发的端口。

然后修改一下 16 行(最后一行),把 233.233.233.233 改成你要中转(被中转/远程服务器)的 VPS IP ,(不是很懂这里的先对照下面的客户端配置,在考虑如何修改),其他的都不要动!

还有,你的中转端口被中转端口是一致的,你的中转端口和被中转端口都是 6666 

多端口配置

如果你需要中转多个端口,那你修改 bind 配置项为 *:端口段 格式。

也就是把连接中转VPS的 10000-30000 端口TCP数据转发到 233.233.233.233  10000-30000 端口上面。

  1. frontend ssin
  2. bind *:1000030000
  3. default_backend ssout
  4.  
  5. backend ssout
  6. server server1 233.233.233.233 maxconn 20480
HaProxy 1.5版本后也支持了ipv6,把这里的 233.233.233.233 换成 ipv6地址 就行了。

然后按 Exc键 退出vi编辑模式,输入 :wq 保存并退出,并执行下面代码运行HaProxy。

  1. # 启动haproxy
  2. /etc/init.d/haproxy start
  3. # 停止haproxy
  4. /etc/init.d/haproxy stop
  5.  
  6. # 如果你是 CentOS 7 系统,那么用这些命令:
  7. # 启动haproxy
  8. systemctl start haproxy.service
  9. # 启动haproxy
  10. systemctl stop haproxy.service

执行之后不会出现任何提示,就不需要管了,可以关闭ssh软件了。

客户端配置

假设我的国内中转VPS IP是 110.110.110.110 ,我的国外被中转的VPS IP是 233.233.233.233 ,我的国外VPS上的Shadowsocks服务端 端口是 6666 ,我设置的中继账号端口是 6666 ,那么我在Shadowsocks客户端就是如上图所填。其中密码和加密方式都是和你国外VPS上的Shadowsocks账号配置一样,你只需要改一下 服务器 IP  服务器端口 就好了!

如果无法连接,先确认你的原Shadowsocks账号能否正常使用,然后查看防火墙规则(iptables -L -n)是否有问题。
还有需要注意的是HaProxy中继只支持TCP,也就是不支持需要UDP转发的游戏!

卸载方法

  1. # Debian/Ubuntu 系统:
  2. aptget y remove haproxy
  3.  
  4. # CentOS 系统:
  5. yum y remove haproxy

然后删掉haproxy的配置文件目录

  1. rm rf /etc/haproxy

使用命令

  1. 启动:/etc/init.d/haproxy start
  2. 停止:/etc/init.d/haproxy stop
  3. 重启:/etc/init.d/haproxy restart
  4. 重载:/etc/init.d/haproxy reload
  5. 状态:/etc/init.d/haproxy status
  6.  
  7. # 如果你是 CentOS 7 系统,那么用这些命令:
  8. 启动:systemctl start haproxy.service
  9. 停止:systemctl stop haproxy.service
  10. 重启:systemctl restart haproxy.service
  11. 状态:systemctl status haproxy.service

效果测试

上图是直接用美国VPS上的Shadowsocks账号的速度,下图是用国内中转服务器加速后的Shadowsocks账号速度,可以看出提升明显!

对了,如果你再用了其他优化方法,速度提升就更明显了!传送门

其他的端口转发教程https://doub.io/ss-jc26/#服务器中继(国内中转)

HaProxy便捷管理脚本:『原创』Shadowsocks HaProxy中继(中转) 便捷管理脚本

其他的优化方案:https://doub.io/ss-jc26/#三、优化Shadowsocks

赞(0)
未经允许不得转载:翻墙党 » Shadowsocks利用 HaProxy 实现中继(中转/端口转发)加速
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址