Shadowsocks IPV4&IPV6服务器端配置

这次来到UCAS才有机会用到IPV6的网络,成功配置了IPV6的Shadowsocks(以下简称SS),之前几年都没成功过…真的可以说是终于了了几年的遗憾。
这次想到使用SS的IPV6代理是因为网络流量不够用,并且还不能够充值。但是有一点就是IPV6的流量不收取费用,于是希望通过SS的IPV6代理转换流量,让流量全走IPV6。6box和6kuaibo等一些软件,都可以实现6to4,并且6box还可以4to6但是速度都只有10M,并且这些软件中有些是收费的,因此只有SS是最经济实用的一个方案。
在多次尝试中只有CentOS 6 x64Ubuntu 14.04 i386 32bit版本系统可以完美支持SS的ipv6,但是都不支持锐速,这样速度得不到保障,需要更改内核,安装锐速,提升速度。

安装系统

1.安装CentOS 6 64bit
不用配置IPV6就可以使用,vultr已经配置好了,如果无法使用再按照官方教程配置。不过在之前的一些试验中,系统不支持的话改了配置也没有用。锐速和SS会有冲突,发现安装完锐速之后无法安装Python版的SS,只能安装libeve版本的,推荐安装Python版的SS,感觉Python版的对IPV6相性好。
2.更新系统
yum update

安装Python版的SS

1.使用一键安装脚本安装Python版的SS

1
2
3
wget --no-check-certificate https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks.sh
chmod +x shadowsocks.sh
./shadowsocks.sh 2>&1 | tee shadowsocks.log

中间需要输入SS服务的密码和端口号

2.停止Shadowsocks服务
/etc/init.d/shadowsocks stop

3.安装vim
yum install vim -y
4.修改配置文件
vim /etc/shadowsocks.json

配置:
单账号配置

1
2
3
4
5
6
7
8
9
10
{
"server":"0.0.0.0",
"server_port":8989,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"yourpassword",
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}

多用户多端口配置文件 Sample

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"server":"0.0.0.0",
"local_address":"127.0.0.1",
"local_port":1080,
"port_password":{
"8989":"password0",
"9001":"password1",
"9002":"password2",
"9003":"password3",
"9004":"password4"
},
"timeout":300,
"method":"aes-256-cfb",
"fast_open": false
}

如果这里多账户配置失败有可能是防火墙端口没开
打开配置文件
vi /etc/sysconfig/iptables
添加开放的端口
-A INPUT -p udp -m state --state NEW -m udp --dport 8989 -j ACCEPT
其中修改udp tcp还有端口号
最后还需要重启防火墙
/etc/init.d/iptables restart

说明
配置文件路径:/etc/shadowsocks.json
启动:/etc/init.d/shadowsocks start
停止:/etc/init.d/shadowsocks stop
重启:/etc/init.d/shadowsocks restart
状态:/etc/init.d/shadowsocks status
查看开放端口
/etc/init.d/iptables status
关闭防火墙
/etc/init.d/iptables stop

注意:
0.0.0.0改为:: 就可以让代理同时可以访问IPV4和IPV6

最后底行模式:wq保存

5.开启Shadowsocks服务
/etc/init.d/shadowsocks start

修改内核

1.将CentOS6内核更换为2.6.32-573.1.1.el6.x86_64即可运行锐速
命令:
rpm -ivh http://dl.iforday.com/kernel/kernel-2.6.32-573.1.1.el6.x86_64.rpm --force

2.查看内核是否安装成功
rpm -qa | grep kernel
如果显示里面有对应的内核就对了。
kernel3.10

参考了这篇文章Centos内核降级(升级)的方法
我发现可能跟操作系统无关,自己当时就奔着换3.10内核去了,centos6当然换不上。
Centos6下可用锐速内核
rpm -ivh http://dl.iforday.com/kernel/kernel-2.6.32-573.1.1.el6.x86_64.rpm --force
Centos7下可用锐速内核
rpm -ivh http://dl.iforday.com/kernel/kernel-3.10.0-229.1.2.el7.x86_64.rpm --force

3.重启,查看内核是否更换成功。
reboot
uname -r

安装锐速破解版

1.现在可以安装锐速破解版了不过带宽上限20M…
wget -N --no-check-certificate https://raw.githubusercontent.com/91yun/serverspeeder/master/serverspeeder-all.sh && bash serverspeeder-all.sh

锐速破解版卸载方法:
chattr -i /serverspeeder/etc/apx* && /serverspeeder/bin/serverSpeeder.sh uninstall -f

后续优化配置

如果你安装没有效果,编辑一下命令
vim /serverspeeder/etc/config

然后rsc和maxmode设置参数修改为1.然后在进行重启
/serverspeeder/bin/serverSpeeder.sh restart

常用命令
启动锐速:
/serverspeeder/bin/serverSpeeder.sh start
停止锐速:
/serverspeeder/bin/serverSpeeder.sh stop
查看锐速是否正常运行,检查是否有appex0模块:
service serverSpeeder status

如果你对速度还不爽,还可以做下优化,比如改进下TCP算法:hybla。 或者安装锐速.
TCP算法代码:
加载tcp_hybla模块(OpenVZ在这一步就会报错):
/sbin/modprobe tcp_hybla

然后查看是否已经正常加载:
lsmod |grep hybla

如果你的内核版本较新,比如CentOS 6.x的2.6.32,则可以用下列命令查看当前可用的拥堵算法,里面应该有hybla了:
sysctl net.ipv4.tcp_available_congestion_control
sysctl net.ipv4.tcp_congestion_control=hybla

编辑
vim /etc/sysctl.conf

在文档末行增加
net.ipv4.tcp_congestion_control= hybla

保存加载:
sysctl -p

全局SS

要想实现全局流量走SS服务器,需要使用Proxifier,配置文件中设置代理服务器和代理规则,如果懒的话改好代理地址和端口就好了其他默认

UT中屏蔽IPV4流量设置

设置 高级设置ipfilter.enable 改成true
ipfilter

SSR

最后想起一个增加了混淆协议等功能的非常好用的客户端ShadowsocksR,但是没有配置成功。

流量前后对比

past
after

文章目录
  1. 1. 安装系统
  2. 2. 安装Python版的SS
  • 修改内核
    1. 1. 安装锐速破解版
    2. 2. 后续优化配置
    3. 3. 全局SS
    4. 4. UT中屏蔽IPV4流量设置
    5. 5. SSR
    6. 6. 流量前后对比
  • |