1.前言
在上一篇博文中,我们已经配置好了需要的VPS,现在需要安装SSR来实现IPv6免流量上网与科学上网。准备一台 VPS,系统为CentOS 8 Stream x64或CentOS 9 Stream x64。如果不清楚的请参考上一个博文进行VPS配置。
2.SSR介绍
要介绍SSR,首先要知道什么是SS,以下解释引自天下数据。
SS全称shadowsocks。SS是一种基于Socks5代理方式的加密传输协议,也可以指实现这个协议的各种开发包。当前包使用Python、C、C++、C#、Go语言等编程语言开发,大部分主要实现(iOS平台的除外)采用Apache许可证、GPL、MIT许可证等多种自由软件许可协议开放源代码,Shadowsocks分为服务器端和客户端,在使用之前,需要先将服务器端程序部署到服务器上面,然后通过客户端连接并创建本地代理。在中国大陆,本工具广泛用于突破防火长城(GFW),以浏览被封锁、遮蔽或干扰的内容。
SSR全称shadowsocks-R。SSR是网名为breakwa11的用户发起的Shadowsocks分支,在Shadowsocks的基础上增加了一些数据混淆方式,称修复了部分安全问题并可以提高QoS优先级。后来贡献者Librehat也为Shadowsocks补上了一些此类特性,甚至增加了类似Tor的可插拔传输层功能。SSR作者声称SS不够隐秘,易于被防火墙监测到,SSR在改善了搞混和协议,更难被防火墙监测到。简易地说,SSR是SS的改良版。
3.SSR服务端
从上面可以知道要先将服务器端程序部署到服务器上面,然后通过客户端连接并创建本地代理。那么第一步当然是将SSR的服务端部署到我们刚买的VPS上了。这里需要用到putty来连接VPS,putty界面中鼠标右键为粘贴,没有这个软件的点击下载安装第一个putty-64bit-0.76-installer.msi就行。然后从Vultr的后台获取服务器的IP地址和root密码,如下图所示。
PS:原来系统生成的非常复杂的root密码最好不要改,因为自己设置的密码容易被破解。
- 打开putty,输入IP Address: 141.164.39.12
- 点击Open,出现以下警告直接点Accept。
- 输入账号(root)和密码,注意密码是隐藏的,复制网站上的密码后右键点击putty界面,然后直接回车就行,出现以下界面就是登录成功了。
- PS:这是我第一次登录这个服务器,但却有94次登录失败的记录,这说明了什么?密码尽量别改啊。
- 复制下面命令安装python。对于所有命令,每一次只能输入执行一条命令。
yum install python38 -y sudo ln -s /usr/bin/python3 /usr/bin/python
- 使用秋水逸冰提供的一键安装脚本,可以一键安装Shadowsocks-Python, ShadowsocksR, Shadowsocks-Go, Shadowsocks-libev 版(四选一)服务端,运行以下命令。
wget --no-check-certificate -O shadowsocks-all.sh https://raw.githubusercontent.com/teddysun/shadowsocks_install/master/shadowsocks-all.sh chmod +x shadowsocks-all.sh
- 如果你的服务器系统是Centos 8+现在进行安装会出现下面错误,如果你的系统是Centos 7就不会,所以按照上一篇教程安装的Centos 8+系统必须按照下面流程修改shadowsocks-all.sh文件。
- PS:为啥Centos 8+需要修改文件,我还要用呢,其实很简单Centos 8+直接带有BBR内核,不用安装BBR,同时Centos 8+BBR速度要比Centos 7+BBR快。
- 这是因为Centos 8+已经不识别 python,需要将shadowsocks-all.sh中几个的python改成 python3。首先将putty窗口放大到全屏,然后输入以下指令打开shadowsocks-all.sh文件。
vi ./shadowsocks-all.sh
- 这时可能会出现红色的ATTENTION界面,这不是报错,直接按回车键就行。
- 正常情况下应该是这个界面。
- 可以直接输入指令/install_dependencies(),然后回车快速搜索install_dependencies函数,也可以按键盘↓键找到该函数。
- 按键盘方向键(↑↓←→)定位到python。然后按键盘A键进入文件编辑模式,界面左下角有INSERT就是编辑模式,否则就是命令模式。编辑模式下可以按Esc键进入命令模式。
- 将下图框起来的6个python改为python3。
- 修改为下图。
- 修改完6个python为python3后按Esc进入命令模式,然后输入:wq保存文件并退出vi编辑器,运行下面的命令(Centos 7可直接到这里不用修改文件)。
./shadowsocks-all.sh 2>&1 | tee shadowsocks-all.log
- 然后会出现以下界面,输入2安装SSR,然后需要进行配置。
- 配置解释。
- 服务器端口:自己设定(如不设定,默认从 9000-19999 之间随机生成)
- 密码:自己设定(如不设定,默认为 teddysun.com)
- 加密方式:自己设定(如不设定,Python 和 libev 版默认为 aes-256-gcm,R 和 Go 版默认为 aes-256-cfb)
- 协议(protocol):自己设定(如不设定,默认为 origin)(仅限 ShadowsocksR 版)
- 混淆(obfs):自己设定(如不设定,默认为 plain,推荐选择6-tls1.2_ticket_auth)(仅限 ShadowsocksR 版)
- 备注:脚本默认创建单用户配置文件,如需配置多用户,请手动修改相应的配置文件后重启即可。
- 配置完了后,输入回车,等待一会,出现以下界面就表示配置完成了,一定要记住你的端口号:11574,密码,加密方式等,最好截个图。
- PS:SSR常用指令。
/etc/init.d/shadowsocks-r status #查看运行状态 /etc/init.d/shadowsocks-r start #启动SSR /etc/init.d/shadowsocks-r restart #重启ssr vi /etc/shadowsocks-r/config.json #编辑配置文件
4.开启BBR加速
什么是BBR?
BBR(Bottleneck Bandwidth and Round-trip propagation time)是谷歌开发的一种加速网络传输协议TCP的新算法,这种算法通过优化传输速度,避免路由堵塞现象的产生。BBR利用瓶颈带宽和往返传播时间,被认为是迄今为止跨越不同路由发送数据的最快方法,当数据路由拥挤时,能够更有效地处理流量。
- Centos 8+自带BBR,输入以下命令开启BBR。
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p
- 然后输入reboot重启VPS,这时putty会与VPS断开连接,请关闭putty,等待两分钟后再打开putty。
- 重新连接VPS,检查BBR是否开启成功,输入以下命令。
sysctl -n net.ipv4.tcp_congestion_control lsmod | grep bbr
- 显示以下信息就表示开启成功,主要看bbr和tcp_bbr。到这一步还没有完事,请继续看下面开放端口。
5.开放端口
- 输入下面命令放行SSR端口,一定要把11574改为你的端口,就是那个随机生成的端口。
firewall-cmd --permanent --add-port=11574/tcp #开放设置的端口,把11574改为你的端口 firewall-cmd --permanent --list-ports #查看防火墙的开放的端口 firewall-cmd --reload #重启防火墙(修改配置后要重启防火墙)
- 重启SSR。
/etc/init.d/shadowsocks-r restart
- 到这里服务端就配置完成了,可以关闭putty了。
6.SSR客户端-Windows
- 点击链接下载ShadowsocksR 的 Windows 客户端。
- 下载完ShadowsocksR-win-4.9.2.zip后解压,打开ShadowsocksR-dotnet4.0.exe
- 右键桌面右下角小飞机图标,点击服务器-添加服务器,输入服务器的IPv6地址(本教程为:2401:c080:1c01:22:5400:03ff:fe98:e7d6),端口,密码等信息,点击确定。如果你是按照教程进行配置的,除了服务器IPv6地址和端口外,其它的配置可以参考下图,默认密码为teddysun.com。
Google搜索结果
Youtube 4K视频
7.SSR客户端-Android
群组名:随便填个就行
配置名称:也是随便填
服务器:填入装好SSR服务端的IPv6地址(本教程为:2401:c080:1c01:22:5400:03ff:fe98:e7d6)
远程端口:填入安装SSR服务端时设置的端口(port)
本地端口:默认即可
密码:填入安装SSR服务端时设置的密码
- 继续往下拉,如下图。
加密方法:与SSR服务端设置的Encryption Method参数保持一致
协议:与服务端设置的Protocol参数保持一致
协议参数:一般无需设置
混淆方式:与服务端设置的obfs参数保持一致
混淆参数:一般无需设置
- 以上各参数设置完成后,点击最上方的小飞机标志开始连接,如果系统提示VPN相关内容,同意确定即可。正常情况下,手机所有流量都会走代理。
8.实现全局代理
好了,现在浏览器和部分软件已经可以免流量了。但是离所有软件都免流量的真全局免流还差最后一步,需要借助全局代理软件实现真全局代理。点击链接下载并安装代理软件Proxifier,并按照链接或者备用链接进行代理设置。如果开启Proxifier后QQ,Tim等软件连接不上网络,可在Proxifier代理规则中将其设置为直连(Direct)。
检查是否免流的方法有两个:
- 最简单的方法:打开任务管理器,查看程序的流量情况。如下图所示,使用epic下载游戏时,只有ssr在跑流量,epic不跑流量说明就免流量了。建议下大文件时检查一下任务管理器,看看是不是ssr在跑流量,这样比较保险。
- 最稳健的方法:下载文件后查看校园网流量消耗情况。
9.无限流量和快速换IP
在配置好SSR后,可以自由上网了,但是可能有的小伙伴觉得1000G/月流量不够。那怎么实现无限流量呢?其实很简单,在流量要用完了之后,只需要对原来配置好的VPS创建一个快照(Snapshot)。然后用这个快照创建一个新的VPS,就又有1000G流量了。记得在SSR里面将地址改为新VPS的IPv6地址,其它的都不用改。所以这个操作也可以快速换IP。在确定新VPS可以科学上网后,记得销毁原来的VPS。因为Vultr是按小时计费的,所以这样并不会收10刀/月,还是5刀。但是要注意的是,快照现在要收费了,0.05/G/月,也不贵,一般一个快照就1-2G,一个月也就不到0.1刀。如果实在舍不得,可以在配置好新VPS后,将快照也销毁了。
- 创建快照。
- 新建vps,找不到入口可以登陆vultr后点这个链接。
- 确定新vps的ip没问题后,可以正常免流量后,销毁原来的vps。
到这里,本教程就差不多结束了,如果你觉得这个教程有用,请去本教程上一部分评论区点个赞吧。
10.Q&A
Q:为什么重启服务器后会报错:/usr/bin/env: ‘python’: No such file or directory
A:因为重启服务器之后python3的到python的软连接可能会消失,不能自动启动服务。重新运行一次sudo ln -s /usr/bin/python3 /usr/bin/python
即可解决。
Q:为什么有的浏览器可以正常访问Google,但有的浏览器却不行(例如:360极速浏览器)?
A:因为有些浏览器不支持IPv6,所以不行,经过测试Chrome,Edge和Firefox浏览器是支持IPv6的。不过你也可以将SSR里面的地址改为IPv4地址,但是这样就不能免校园网流量了。
Q:为什么我ping 不通VPS?
A:需要注意以下几个事项:
- 校园网环境下有可能ping不通,因为一些校园网是禁止ping的,不过不影响使用,可以正常使用VPS进行免流。
- 查看客户端是否开启服务器负载均衡,如开启请关闭。
- 你可以在这个网站ping IPv4(这个网站是ping不通IPv6的)或这个网站ping IPv4或6,如果这些都不行,就需要将原VPS销毁,重开一个VPS。
Q:为什么在SSR客户端无论输入ipv4还是ipv6的地址都不能联网,开启全局模式后是处于完全断网的状态?
A:出现这种情况可能是服务端出了问题,你需要确定以下几个事情:
- 用该网站来确认VPS是否正常;
- 在服务端上用
vi /etc/shadowsocks-r/config.json
命令查看端口号,密码,加密协议等是否和客户端一致; - 服务端是否开启所需的端口号。
Q:为什么QQ,Steam连接不上?
A:建议QQ不走代理,如果这样还不行就可能是VPS位置有问题,有小伙伴反映新加坡的VPS会出现上述情况,可以用快照功能(见9. 无限流量)在新的地方创建一个VPS(推荐日本和韩国)。
11.退款
如果你发现开了VPS之后不能使用,排除了技术上的问题后,建议你马上销毁VPS并申请退款。一般来说,支付宝充值90天内都是可以退款的,不过因为时差问题,可能会需要等一段时间。点这个链接可以了解vultr怎么退款。
亲测好用,点个赞
大佬,我按照教程一步步做完后,SSR在开启全局模式下什么也干不了,ipv6测试也不行,但vps是正常的,请问是什么情况(๑•̀ㅁ•́ฅ)
大佬 我现在按照教程做完之后,在检查ip有没有连接到vps时失败了,甚至在全局模式下网络都不能用,更无法测试我的ipv6,求教导(๑•̀ㅁ•́ฅ)
这就是出现了Q&A中的第三个问题,你应该将SSR切换到直连模式,然后按照第三个回答一一进行排除,如果还不行,请评论。
评论无法放图片,但我已经一一核对没有问题,也不排除是我不懂技术造成疏忽,请大佬指教(´இ皿இ`)
加你QQ了。
感谢大佬的耐心指导 已经用上了 起飞~ヾ(≧∇≦*)ゝ
大佬 我输入ip地址到putty后点open就弹出 黑框 一会就time out怎么办呀
大佬 能加qq指导我一下嘛?(0.0)
已加。
大佬,我们宿舍就一个路由器,我如果设置了这个,不影响他们使用吧。就是我的ipv6,他们各用各自用ipv4这样可以吗
这个客户端是安装在自己的电脑上的,你用IPv6不会影响到室友,他们可以正常使用IPv4,共用一个路由器也没事。
大佬,可以加QQ聊嘛
已加。
都搭好了,但是一开全局模式ipv6的网站就访问不了(检测的那个网站),不开的话用学校本身的倒是可以访问。orz求助
开全局模式如果能访问Ipv4网站,但是不能访问IPv6,可以把负载均衡关了试试。
大佬,可以加QQ指导吗orz
已加。
用了几天发现走的还是校园网的流量,有什么方法吗
首先要确定校园网有IPv6地址 https://www.test-ipv6.com/ 用这个测试,然后SSR客户端里面的IP地址一定要填IPv6地址,然后开两个全局,再用前面的网站测试一下,变成你开的VPS的IPv6地址就不会出问题。
QQ登录不上 按楼主的方法也换了日本的vps 好像还是不行
QQ这个问题我开始也登陆不上,后面就行了,不知道是不是因为开了Proxifier,不过我后面没开这软件也可以登录。
我也去下载了Proxifier 但是看网上的教程配好之后好像不行(是我太菜了),楼主可以出一个proxifier的配置教程吗 或者可以加QQ聊吗?
https://www.hizxc.com/1546.html
这个教程挺好的。
挂了ssr之后不能登录steam和epic啊 就很奇怪 VPS是东京的
可以试一试Proxifier
大佬我复制了那两行安装python的代码之后它没有报错该怎么办
没有报错是正常的,继续按操作走就行。
大佬我已经搭好了也能正常使用了,接下来能在手机上也用上吗 但是我试了一下直接扫码连接好像行不通
我没有在手机上试过,但是网上有教程的,多试几种方法应该就行了。
大佬我感觉除了浏览器外的软件都没有免到流 昨天试了一下百度网盘还是走的校园网流量 开了全局也测过ipv6都是正常的 咋办呀
可以试一试Proxifier,这个是全局代理的。
大佬 是不是rule里面的default 是proxy,localhost和ssr是直连就行了
是的,我的配置就是这个。
还是不行 百度网盘还是下了校园网流量 倒是看chrome一直都是正常不耗的
按道理说不应该啊,你可以试试开了两个全局后重新下百度网盘里面的资源,或者百度网盘走的不是IPv6,可能是p2p。
那应该就是p2p的问题了 谢谢大佬了
不客气的。
大佬,能加qq指导一下吗?
加了。
大佬可以加一下我吗QAQ
已加。
大佬,请问在一键安装脚本那一步的时候,显示no route to host 是什么情况?
不知道具体的指令不好判断,你现在解决问题了吗,没解决我加你QQ。
那个解决了,现在gcc安装不了,也百度了,还是解决不了,大佬加我一下QQ吧
已加。
大佬,我的putty在检查ssr运行情况的时候显示software caused,以及ssr软件解压的时候复制文件出错0x80004005,能qq指导我一下吗
好的。
处理好了但是有两个问题,一个是全局代理之后连不上网,一个是我鼠标悬浮在SSR上的时候端口不是我输入的观点,请指点
重新设置一下端口,全局连不上可能就是端口不对。
现在的情况是qq能正常用,网页全部打不开,莫非是我的ipv6认证出现问题了?值得一提的是我的服务端配置里ipv6一行没有东西,dnsipv6也是false。这是什么问题呢
服务端的IPv6应该是::,服务端IPv6正常的话,控制台会输出IPV6 support。dnsipv6为false是正常的。看你这个情况应该是你的设备没有和服务端建立链接,建议再仔细检查一下服务端和客户端的设置。
应该是这样的,我重启ssr之后发现配置文件的服务器地址变成了0.0.0.0,但是我的ssr运行是正常的。链接服务端与ssr应该是哪一步的问题,在ssr安装后跳出的红字配置还显示了vps的ip啊
服务端地址正常情况如下图:
查看图片
如果这个没问题的话,应该检查其它设置。
求大佬知道,putty报连接超时
可能是连不上这个VPS,建议销毁了换一个,或者开一个其它位置的VPS。
可以QQ指导一下吗?
可以的。
重启SSR的时候报错
/usr/bin/env: ‘python’: Too many levels of symbolic links
Starting ShadowsocksR failed
查了是说要链接绝对路径,这个怎么解决啊?
这个我也不太懂,建议百度。
重启指令:
/etc/init.d/shadowsocks-r restart
感谢,查了这么多还是你这篇最详细,不过感觉还是用新版本SS好一点?
没用过新版的SS,能给个链接吗。
而且感觉好巧啊大佬,我前几周刚好也在研究爬虫和视觉学习?
哈哈,欢迎交流。
答主,现在代理在链接之后,代理可以ping通,但是还是走不了v6.一直显示No connection could be made because th target machine actively machine actively refused it.怎么办啊 服务器防火墙开放了端口啊
我加你QQ看看。
大佬,那个安装脚本我下载不了啊,点进蓝色链接那个网页没有响应
哪个链接,最好能更详细一点。
我搞错了,解决了
大佬,搭好之后微软商店连不上网,有什么办法吗?
使用反馈,重启服务器之后python3的到python的软连接可能会消失,不能自动开机启动服务,报/usr/bin/env: ‘python’: No such file or directory错误,重新运行sudo ln -s /usr/bin/python3 /usr/bin/python可解决
感谢分享。
大佬。前天配置好能上网,今天重新尝试就不行了,尝试了很久,能加q指导一下吗,麻烦了
加个群吧,群里交流一下。
可以用老毛子路由器,配置吗?
啥是老毛子路由器,有IPv6的路由器是可以配置的。
就是一种比较NB的固件,那应该是可以
你可以试一试,要是可以的话,可以回来留个言,感谢分享。
请问大佬,都按步骤做了,运行完全没有问题,ip查了也是ipv6的了,外网也能上,但是就是死活都只走校园网流量,但是服务器的流量也显示在跑,这是怎么回事呢?
可能是没有开全局代理,建议用Proxifier。
倒是小飞机那个运行端口一直是1080,死活改不了
右键小飞机->选项设置里面改一下试试行不行。
是什么情况呀。。python3装了,shadowsocks-all.sh也修改了
解决了
就好了。可能第一次写错了
好的
博主你好,非常感谢你的保姆级教程!我最后Proxifier代理设置那不太成功,那个设置链接挂了。请问代理服务器里的地址和端口是要填什么呢,还有代理规则中的目标主机。我的名称解析里“跳过代理解析主机名称”是灰的,不可选。Σ(っ °Д °;)っ
地址填本地地址:127.0.0.1;端口填SSR本地端口,默认是1080;目标主机不用填;灰的没事,不用管也不用选。
博主,最后proxifier的设置教程挂了
谢谢提醒,我再找一个。
博主您好,在按照步骤配置好后,在测试IP是否链接到了VPS这一步失败了,ip地址还是我原来的地址。vps的ip可以ping通,这是什么原因呀?
右键小飞机,将系统代理模式设置为全局,代理规则为全局 这个做了吗
嗯,都做了,可以加一下qq详细聊一下不,谢谢
可以。
大佬,Proxifier代理规则设置那里填的ssr的ip地址是ipv6的还是ipv4的呀
填127.0.0.1就行。
–2022-03-22 12:44:06– (try: 2) https://github.com/shadowsocksrr/shadowsocksr/archive/3.2.2.tar.gz
Connecting to github.com (github.com)|20.205.243.166|:443… failed: Connection timed out.
Resolving github.com (github.com)… 20.205.243.166
Connecting to github.com (github.com)|20.205.243.166|:443… failed: Connection timed out.
Retrying.
大佬,前面安裝的挺順利的,後面就出現這個問題,下載不了3.2.2.tar.gz這個文件,怎麼辦,您能加我QQ指導一下嗎
这个问题表示vps链接不上github了。如果你的vps是在中国大陆,就有可能会出现这个问题,可以后面再试。如果是在国外,也可以等会再试。我刚才点链接是可以下这个文件的。如果一直不行,推荐换一个vps或者换为v2ray的方案。
配了半年左右了,前几个月突然开始出现断断续续隔一段时间可用一段时间,能不能请大佬加我qq指导一下
目前不能加QQ,可以加TG群(需要科学上网)。
已经在群里辣,坐等极星哥指导
也可以直接在群里面问问群友,大家还是很热心的。
博主你好,请问现在还有支持ipv6的机场推荐吗,之前的那个网站好像g了
目前还没有。
当系统时间与真实时间不同时,开代理会上不去网,校正后修复
好了,日常应用,qq,微信,steam,百度网盘等(除了腾讯视频不行)均实现了免流,谢谢博主的分享!
大佬Proxifier配置的链接挂了 请问还有新的教程吗
已更新链接。
博主你好,请问安装python时出现错误怎么办? Failed to download metadata for repo ‘AppStream’: Cannot prepare internal mirrorlist: No URLs in mirrorlist
重新开一个vps或者百度一下,这个应该是安装源的问题。