用树莓派为局域网提供FinalSpeed服务

如果你有闲置的树莓派,那么可以利用起来,为局域网内的机器提供finalspeed服务。finalspeed就不具体介绍了,简单说来就是比锐速还暴力的东西。

推荐2代或者3代树莓派,1代CPU太弱,严重制约java执行效率。这里以raspbian系统为例。raspbian已经默认安装了jdk1.8,所以我们只需要安装libpcap即可。

以下命令全部以root用户执行。同时默认你已经安装了FS的服务器端。

1. 安装libpcap:
apt-get -y install libpcap-dev

2. 下载命令行客户端程序:
wget https://github.com/zqhong/finalspeed/releases/download/v1.0/FinalSpeed_Client_CLI.zip

3. 解压:
unzip FinalSpeed_Client_CLI.zip

4. 编辑client_config.json:
vim client_config.json
修改其中的”download_speed”(本地下载带宽。以字节为单位,比如30M带宽就是3932160)、”protocal”(和服务器端一致,tcp或udp)、”server_address”(FS服务器的IP)、”upload_speed”(本地上传带宽,格式同下载带宽)。

5. 编辑port_map.json:
vim port_map.json
加速ss的话,一般把第一个”dst_port”值改成服务器端ss的监听端口,第一个”listen_port”改成树莓派提供FS服务的端口即可。其他不用动。

6. 运行客户端
nohup java -jar client.jar >/dev/null 2>&1 &
如果java没启起来,可以尝试输入export DISPLAY=””后重新执行上述命令。

OK,大功告成。本人路由器用的是koolshare的改版merlin固件,直接选择”大陆白名单”模式,ss服务器ip填树莓派ip,端口填上面”listen_port”里指定的端口号,密码是你的ss密码,就可以让局域网内的设备智能翻墙了!

注意事项:
远程ss服务器那边的监听IP要指定为0.0.0.0,即”server”:”0.0.0.0″,而不是vps的IP。否则连不上的。
另外,现在FS还不稳定,经常出现断流的情况。想稳定翻墙加速的,还是暂时先用锐速吧!

本文为悠然居(https://wordpress.youran.me/)的原创文章,转载请注明出处!

24 thoughts on “用树莓派为局域网提供FinalSpeed服务”

  1. 注意事项:
    远程ss服务器那边的监听IP要指定为0.0.0.0,即”server”:”0.0.0.0″,而不是vps的IP。这句话的意思是吧vps 里ss配置文件 ip 改为0.0.0.0??

    Google Chrome 49.0.2623.110 Google Chrome 49.0.2623.110 Windows 10 x64 Edition Windows 10 x64 Edition
  2. 在室外,不能使用FinalSpeed的时候速度太慢,能否通过ddns为外网设备提供FinalSpeed?

    Google Chrome 49.0.2623.112 Google Chrome 49.0.2623.112 Windows 10 x64 Edition Windows 10 x64 Edition
    1. @ShienPro
      这个没试过,理论上应该可以,不过效果取决于你家庭网络的上行带宽,估计不会很高。

      Google Chrome 50.0.2661.86 Google Chrome 50.0.2661.86 Mac OS X  10.9.5 Mac OS X 10.9.5
    1. @RebelliousWhiz
      在树莓派终端执行pkill java
      然后执行ps -e|grep java,如果没有结果那就干掉fs客户端进程了。

      服务器那边用sh /fs/stop.sh关闭

      Firefox 46.0 Firefox 46.0 Windows 7 x64 Edition Windows 7 x64 Edition
  3. 您好,想请教一下,在海外家中的树莓派3代上已经配置了 SS 服务器,不知道可否同时在上面同时部署 finalspeed 服务端?很努力的查了很多资料,发现只有爱树莓派上面部署客户端的,但本人 linux 基础还没有到灵活运用的程度,希望可以帮忙引路,谢谢您

    Firefox 47.0 Firefox 47.0 Windows 10 x64 Edition Windows 10 x64 Edition
    1. @Unlocker-ROC
      服务器端应该可以的吧,和在VPS上部署没区别。不过树莓派那个cpu,不要指望有多好的效果。

      Google Chrome 52.0.2743.82 Google Chrome 52.0.2743.82 Windows 10 x64 Edition Windows 10 x64 Edition
      1. @youran

        谢谢!接下来会找时间实践,希望客户端很少的话可以有一定效果。

        我现在存在的主要问题是,所在国同国内的带宽还可以,但延时较大,不知道什么原因,pptp vpn 可以正常打开的网页,用 ss经常断流,youtube 也是只有几十 k,使用了老式的 net-speed,基本没有可感知的效果。现在进入了什么方法都愿意尝试的境地。

        Google Chrome 51.0.2704.81 Google Chrome 51.0.2704.81 Android 6.0 Android 6.0
        1. @Unlocker-ROC
          net-speeder没什么用的。vps的话,kvm/xen架构的都可以装锐速,对ss加速效果明显。openvz就没办法了。finalspeed也很不稳定的,流量一大就非常容易断流

          Google Chrome 52.0.2743.82 Google Chrome 52.0.2743.82 Windows 10 x64 Edition Windows 10 x64 Edition
          1. @youran
            很糟糕而且尴尬的是,为了节约电费的部分,本来 ss-server 是开在路由器里面,以为速度慢跟断流的问题是路由器机能瓶颈,所以后来添购了树莓派3。不想一切令人头疼的问题都还在。只有两个用户,却问题重重。

            Google Chrome 51.0.2704.81 Google Chrome 51.0.2704.81 Android 6.0 Android 6.0
          2. 我的经验是,只有kvm+锐速才是比较好的解决方案。网络延迟大肯定是绕路了,这种情况一般都会附带高丢包率,所以ss速度上不去的。

            Google Chrome 52.0.2743.82 Google Chrome 52.0.2743.82 Windows 10 x64 Edition Windows 10 x64 Edition
          3. @youran
            的确,有时候人是很搞笑的一种动物,比如我。初衷是低成本甚至不再加成本解决每年回国一个多月时间的网路自由,解决这短周期因为工作的关系比较依赖 gmail 跟 calendar,业余用youtube等等。结果走到今天,不但换了路由器,添购了树莓派,还在考虑是不是要上 vps。我觉得也许要打退堂鼓了。

            某种程度上 gfw 赢我赢的比较彻底。

            Firefox 47.0 Firefox 47.0 Windows 10 x64 Edition Windows 10 x64 Edition
  4. 最近发现树莓派经常跑死,估计是java 的原因,想添加定时重启finalspeed客户端的任务,但是不知道怎么弄,楼主能指点下吗?

    Google Chrome 52.0.2743.116 Google Chrome 52.0.2743.116 Windows 10 x64 Edition Windows 10 x64 Edition
    1. @heizi
      写个脚本,然后放到crontab里定时启动即可。

      #!/bin/sh
      killall java
      cd /path/to/your/client.jar/ && nohup java -jar client.jar >/dev/null 2>&1 &

      把上述脚本chmod +x后,放到crontab里。例如每小时重启:
      0 * * * * /path/to/your/script.sh

      Firefox 38.0 Firefox 38.0 Windows XP Windows XP
  5. 多谢楼主!

    终于不用手动去重启了,多谢!

    Google Chrome 52.0.2743.116 Google Chrome 52.0.2743.116 Windows 10 x64 Edition Windows 10 x64 Edition
  6. 楼主想把Finalspeed和shadowsocks都搭在树莓派上实现透明代理加速,两个分开来用都是可以的,搭载一起就会有问题,希望帮忙解决下

    Google Chrome 54.0.2840.59 Google Chrome 54.0.2840.59 Windows 10 x64 Edition Windows 10 x64 Edition
    1. @01sr
      没试过这种方式,我是用的改版梅林路由器,里面的ss插件指定部署了fs的树莓派地址。你在树莓派上的ss-local配置文件是怎样的?用的是哪个版本的fs?我之前用fs1.2一直有问题,只好用了1.0。你如果有能刷梅林固件的路由器,直接用路由器上面的ss应该是最方便的

      Google Chrome 53.0.2785.143 Google Chrome 53.0.2785.143 Windows 10 x64 Edition Windows 10 x64 Edition
  7. 现在好像出了tcpspeed,就是finalspeed的高级版本,我尝试按照这个教程设置树莓派中转,结果却失败了,不知道哪里出了问题。博主有试过tcpspeed吗?

    Google Chrome 55.0.2883.87 Google Chrome 55.0.2883.87 Windows 7 Windows 7
    1. 没用过啊。FS在我这经常断流,我现在还是用锐速了,单边加速不需要配置客户端。最近linux 4.9内核里新加的BBR拥堵控制模块,貌似也很有前途。

      Google Chrome 55.0.2883.95 Google Chrome 55.0.2883.95 Mac OS X  10.9.5 Mac OS X 10.9.5
      1. @youran
        谢谢您,我已经搞定了这一项
        但这个树莓派中转finalspeed的方法,如何设置让树莓派开机自动启动呢?
        我试了很多方法均不成功。

        Google Chrome 50.0.2661.102 Google Chrome 50.0.2661.102 Windows 7 Windows 7
        1. 参考我上面回复的定时重启fs的脚本,只不过把那个脚本放在/etc/rc.local里面,就能每次开机自动启动fs了。

          Firefox 38.0 Firefox 38.0 Windows XP Windows XP
          1. @youran
            额,测试失败了
            我是树莓派开启了root账户,在root账户下设置的
            tcpspeed和sh脚本都在/root目录下,sh脚本已经chmod+x过
            附上ff.sh脚本
            #!/bin/sh
            killall java
            nohup java -jar /root/client.jar >/dev/null 2>&1 &

            crontab -e注释后面添加如下代码
            sudo sh /root/crysadm/run.sh(云监工代码)
            sudo sh /root/ff.sh (#树莓派中转)
            exit 0

            其中云监工的可以正常开机启动,树莓派的不行

            Google Chrome 50.0.2661.102 Google Chrome 50.0.2661.102 Windows 7 Windows 7
          2. @tikka
            这个问题困扰了几天,
            对了是finalspeed不是tcpspeed,上面打错了

            Google Chrome 50.0.2661.102 Google Chrome 50.0.2661.102 Windows 7 Windows 7

Leave a Reply

Your email address will not be published. Required fields are marked *