国内中转就是,你在国内买一个VPS,然后让他去连接国外VPS上面的Shadowsocks服务,然后你去链接国内这个VPS,这样子就相当于,用国内VPS的优秀线路和宽度去链接国外的Shadowsocks服务,这样子你去链接国内的VPS延迟必然降低了,稳定性也提高不少!
原理:SS客户端 <=> 国内VPS <=> 美国VPS
安装HaProxy
1 2 3 4 | # Debian/Ubuntu系统: apt-get -y install haproxy # Centos系统: yum -y install haproxy |
配置文件
打开 /etc/haproxy/haproxy.cfg
文件。
打开后把里面的内容全部删除,换成下面的内容。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | global defaults log global mode tcp option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 frontend ss-in bind *:6666 default_backend ss-out backend ss-out server server1 233.233.233.233 maxconn 20480 |
把6666
改成你被中转的VPS上面Shadowsocks服务端的端口,这个端口是你要转发的端口。
把 233.233.233.233
改成你要中转(被中转/远程服务器)的 VPS IP
。
还有,你的中转端口和被中转端口是一致的,你的中转端口和被中转端口都是 6666
。
多端口配置
如果你需要中转多个端口,那你修改bind
配置项为 *:端口段
格式。
也就是把连接中转VPS的 10000-30000
端口TCP数据转发到 233.233.233.233
的 10000-30000
端口上面。
1 2 3 4 5 6 7 | frontend ss-in bind *:10000-30000 default_backend ss-out backend ss-out server server1 233.233.233.233 maxconn 20480 |
HaProxy 1.5版本后也支持了ipv6,把这里的 233.233.233.233 换成 ipv6地址 就行了。
启动服务
1 2 3 | systemctl start haproxy systemctl enable haproxy |
不同端口转发配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | global ulimit-n 51200 defaults log global mode tcp option dontlognull timeout connect 5000 timeout client 50000 timeout server 50000 frontend ss-in bind *:relay_server_port default_backend ss-out backend ss-out server server1 proxy_server_ip:proxy_server_port maxconn 20480 |
指定一个端口为relay_server_port
,如8100
等,这个端口将会之后用于客户端与国内VPS的连接。将proxy_server_ip
替换为美国VPS的IP地址,proxy_server_port
设置为美国VPS的监听端口。
客户端配置
假设我的国内中转VPS IP是 110.110.110.110
,我的国外被中转的VPS IP是 233.233.233.233
,我的国外VPS上的Shadowsocks服务端 端口是6666
,我设置的中继账号端口是 6666
,那么我在Shadowsocks客户端就是110.110.110.110
。其中密码和加密方式都是和你国外VPS上的Shadowsocks账号配置一样,你只需要改一下 服务器 IP
和 服务器端口
就好了!
转自简书作者:
0 条评论