DNS污染问题很是让人烦心,小米路由器mini的pandorabox自带了shadowsocks-libev,没有UDP转发功能,在期待下次pandorabox的更新能够自带shadowsocks-libev-spec的时候,我们还可以选择手动安装,下面老高就介绍一下如何安装。

你也许能通过以下关键字找到本文:

如何安装shadowsocks-libev-spec 如何配置shadowsocks-libev-spec openwrt\pandorabox如何转发UDP 如果解决DNS污染

项目官网

http://openwrt-dist.sourceforge.net

安装前的准备

安装前我们需要删除原来的shadowsocks-libev。原来的ss可以通过 ps |grep ss-ll /usr/bin/|grep ss- 找到!

停止进程

killall ss-local
killall ss-redir
killall ss-tunnel

备份配置文件

mv /etc/config/shadowsocks /etc/config/shadowsocks_old

备份执行文件

# 重命名
cd /usr/bin
mv ss-local ss-local.old
mv ss-redir ss-redir.old
mv ss-tunnel ss-tunnel.old

开始安装

更新opkg源

请参考 配置opkg篇 配置好OpenWrt-dist的源

开始安装

配置好opkg的源后我们先更新一下 opkg update

更新成功应该是如下图:

opkg更新

下面我们开始安装shadowsocks-libev-spec,先执行下面的命令安装。

opkg install shadowsocks-libev-spec
opkg install luci-app-shadowsocks-spec

由于最近一次shadowsocks-libev-spec的更新会导致直接用opkg安装报错!

opkg install shadowsocks-libev-spec

所以出现此类错误,请下载老版本的shadowsocks-libev-spec,老高目前使用r512稳定版,下载shadowsocks-libev-spec_2.1.4-1_ramips_24kec.ipk,可以正常安装!

成功安装

安装完毕后无需重启路由器,luci后台的已经可以看到新的ss配置信息了。

如何使用

shadowsocks-libev-spec的配置文件位于/etc/shadowsocks/config.json

配置示例如下:

{
    "server": "xx.x.x.x",
    "server_port": 23456,
    "local": "0.0.0.0",
    "local_port": 1080,
    "password": "xxxosihd",
    "timeout": 60,
    "method": "rc4-md5"
}

luci如图配置即可!

shadowsocks-libev-spec

配置chinadns

由于我们默认绑定了5300端口,现在需要指定解析服务器为127.0.0.1:5300,如图配置:

chinadns

配置DNS转发

ps.不要忘了转发DNS解析到127.0.0.1#1053

转发DNS解析

这样设置后,DNS的查询变为

  • 设备查询dns->路由器:53->chinaDNS->114.114.114.114:53
  • 设备查询dns->路由器:53->chinaDNS->ss:5300->8.8.8.8:53

现在所有子网的设备都可以零配置翻墙了!速度还很快!

关于内核不兼容

请移步 https://github.com/shadowsocks/openwrt-shadowsocks/

作者提供了最新版的编译ipk下载,请使用ipk文件安装。

补充

安装redsocks2

大家还记得路由器自动翻墙篇中,讲了如何安装redsocks2,现在安装的更简单了。

# 安装redsocks2
opkg install redsocks2
# 安装redsocks2后台luci菜单
cd /tmp
# wget 如果404,请移步 http://sourceforge.net/projects/openwrt-dist/files/luci-app/redsocks2/ 自己下载ipk,然后安装
wget http://iweb.dl.sourceforge.net/project/openwrt-dist/luci-app/redsocks2/luci-app-redsocks2_1.3.0-1_all.ipk
opkg install luci-app-redsocks2_1.3.0-1_all.ipk

nginx反代配置

还是记录一下吧,省的以后出错时又得手写。

server {
    listen       80;
    server_name  openwrt-dist.kxswq.ml;

    #charset koi8-r;
    location / {
        sub_filter openwrt-dist.sourceforge.net openwrt-dist.kxswq.ml;
        proxy_pass       http://openwrt-dist.sourceforge.net;
        #proxy_redirect     off;
        #proxy_set_header   Host $host;
        proxy_set_header   X-Real-IP  $remote_addr;
        proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header   Referer http://$host;
    }
    error_page  404              /404.html;
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

标签: shadowsocks, opkg, config, udp, dns, redsocks2

已有 182 条评论

  1. 蓝

    你好 请问下 shadowsocks-libev-spec已经成功安装 安装luci-app-shadowsocks-spec的时候却显示 Unknown package 'luci-app-shadowsocks-spec'. Collected errors: * opkg_install_cmd: Cannot install package luci-app-shadowsocks-spec.

    1. 蓝

      以上问题自己解决了 google了个luci-app-shadowsock-spec的ipk自己安装完后就行了

    2. 源有问题了

  2. 刷好后luci里面没有使用配置文件的勾选项,使用winScp查看etc文件夹也没有发现shadowsocks文件夹,shadowsocks用的是shadowsocks-libev-spec_2.1.4-1_ramips_24kec.ipk,luci-app-shadowsocks-spec直接用命令行在线装的。不知道是不是因为我的固件问题?由于我的ss账号服务器是us01-9.ssv5.net,填入后会提示“一些项目的值无效,无法保存”,不知道该怎么解决呢?

  3. 我也不知道怎么就搜到老高这,然后捣鼓了半天,终于搞定了,可以不用去更新HOSTS,不用管CHROME的插件了,更重要的是手机端 PAD都可以看油管了。。。感谢老高

    1. 主题不同而已

    2. 恭喜

    3. 老高,LUCI对应的OPKG源里面刷新出来的吗?和你的完全不一样啊,感觉配置有问题,请问你文中的LUCI是哪个版本啊

    4. 国内个别网站打不开,可能是DNS解析错误,优酷等国内视频在线视频播放不了,解析不了地址?客户端APP倒是可以看视频 当然,也包括老高的博客,解析有问题,排版混乱,图片打不开 想问下老高,CHROME插件或者FF的插件类似SwitchyOmega,AutoProxy等可以订阅在线规则的IPK有吗?或者我可以用autoproxy-gfwlist的TXT判断吗? 突然好想要极路由的IPK啊

  4. 老王 老王

    老高兄,感谢你的教程,配置DNS转发 ,这里我为什么在我的小米mini中找不到,刷了N个Pandroabox的版本了

    1. 原来是隔壁老王啊,你再仔细找找吧

  5. 老高,update一下这个,就是在 配置DNS转发 的时候 如果你的SS服务器的地址,是域名而不是IP的话。。。需要加一个白名单。。。 就是在127.0.0.1#1053规则之上加一个 /[你的SS服务器域名]/114.114.114.114 后面的NS服务器可以随便加一个国内的就可以了 坑了我好久,按照你教程走了好几遍都无果 最后ssh到路由器里看,用ss-redir命令运行了一下,原来是找不到域名~掀桌

  6. 安静 安静

    你好,我按照您的方法,shadowsocks无法启动,我执行/etc/init.d/shadowsocks start,显示sh: 0: unknown operand(我看了下脚本文件,可能是这几行[ $local_enable -eq 0 ]),请问您是否能指点一下?

    1. gooooloo gooooloo

      修改/etc/init.d/shadowsocks,自己加上引号,如:$local_enable改成"$local_enable"
      其他没有引号的也加上。

      不确定一行是否要改的时候,可以在那行后加上一行 echo "hello",然后执行/etc/init.d/shadowsocks start。如果能看到“hello”的输出,就说明那一行可以过。

    2. 我也遇到同样的问题

    3. 隔壁王老爷 隔壁王老爷

      +1

  7. Ali Ali

    设置好了,还是不能访问google。。

  8. 配置好opkg的源后我们先更新一下 opkg update 按照以上步骤操作最后显示Collected errors: * opkg_download: Failed to download http://openwrt-dist.thankgfw.ml/releases/ramips/packages/Packages.gz, wget returned 8. * opkg_download: Failed to download http://openwrt-dist.thankgfw.ml/releases/luci/packages/Packages.gz, wget returned 8.

    1. 点开看看就知道,源站挂了

  9. Installing shadowsocks-libev-spec (2.2.2-1) to root... Multiple packages (kmod-ipv6 and kmod-ipv6) providing same name marked HOLD or PREFER. Using latest. Multiple packages (kmod-ipt-core and kmod-ipt-core) providing same name marked HOLD or PREFER. Using latest. Installing iptables-mod-tproxy (1.4.10-5) to root... Downloading http://downloads.openwrt.org.cn/PandoraBox/ralink/mt7620_old/packages//iptables-mod-tproxy_1.4.10-5_ralink.ipk. Installing kmod-ipt-tproxy (3.3.8-1) to root... Downloading http://downloads.openwrt.org.cn/PandoraBox/ralink/mt7620_old/packages//kmod-ipt-tproxy_3.3.8-1_ralink.ipk. Configuring kmod-ipt-tproxy. //usr/lib/opkg/info/kmod-ipt-tproxy.postinst: .: line 3: can't open '/etc/functions.sh' Configuring iptables-mod-tproxy. Configuring shadowsocks-libev-spec. Collected errors: * pkg_run_script: package "kmod-ipt-tproxy" postinst script returned status 2. * opkg_configure: kmod-ipt-tproxy.postinst returned 2. 换了6月的pandorabox 发现没有自带SS 手动安装出现该问题 求博主指点

  10. 把package源换成这个

    1. http://downloads.openwrt.org.cn/PandoraBox/ralink/mt7620_old/packages/

    2. 还是不行Collected errors: * opkg_conf_parse_file: Duplicate src declaration (openwrt_dist http://downloads.openwrt.org.cn/PandoraBox/ralink/mt7620_old/packages/). Skipping. * opkg_install_cmd: Cannot install package luci-app-shadowsocks-spec. 而且shadowsocks-libev-spec根本没有源,网页上都没有了

  11. 感谢,用了更新源后速度真快

    1. 还要感谢中国科学技术大学 Linux 用户协会

  12. http://www.phpgao.com/xiaomi_router_opkg.html

  13. 七叔 七叔

    请问为什么我把源换成文章中所提供的,执行opkg update一直卡在第一个 [root@PandoraBox:/root]#opkg update Downloading http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/base/Packages.gz. 只能按ctrl+C来停止,之前升级到r1024之后连原版的SS都没有,我以为是功夫网的锅,刷了r512之后在SS里开了透明然后执行,还是不行 我直接把这个地址复制到浏览器中可以打开

    1. opkg有加速版的配置

    2. 七叔 七叔

      http://www.tbmall.tk/archives/217 昨天按照这个里面配置OPKG已经解决了,感谢回答

  14. chenghaibo chenghaibo

    请问shadowsocks-libev-spec支持ipv6吗?

    1. 理论上是支持的,你在SERVER中填写IPV6的地址,但是我在这边试验不成功

  15. 老高,最后两行源地址出错了,无法安装redsocks2

  16. chor chor

    更新了六月的pandora之后装不,提示内核版本问题

    1. 是的,需要内核满足需求才能安装

    2. ??

    3. muzzi muzzi

      6月8号的稳定版,内核信息是这样的:Linux PandoraBox 3.14.44 #7 Mon Jun 8 22:23:15 CST 2015 mips GNU/Linux 而依赖错误是这样的:kernel (= 3.10.49-1-3df3ab26a49a04478a9633bf83827ca3) 是不是内核版本不符?要么Pandora降回512,要么等待shadowsocks更新?或者自己编译?

  17. Question Question

    貌似还需要重启一下才可以正常FQ,我照着你的教程完成之后,所有网站都无法连接,重启就完美FQ了

  18. G G

    刷的稳定版,配置好之后有些国内网站访问特别慢,怎么破?

    1. 你是不是开透明代理了

  19. ALEX ALEX

    我跟教程走了一遍,可以翻墙了,但youtube,facebook,twitter这几个不行,是什么问题啊?

    1. 全局都不行那就是配置或者ROM的问题,建议刷稳定版

    2. ALEX ALEX

      全局也不能访问哦

    3. 开全局如果能够访问的话,那就还是有DNS污染

  20. haha haha

    这个方法有的个别网站打不开 不会自动翻墙,redsocks2就可以,但那个有延迟

添加新评论