准备工作
- Ubuntu(或其他Linux操作系统)
WinSCP
下载SDK包
请访问http://downloads.openwrt.org,根据你的路由器平台下载对应的SDK,SDK位于页面最下方。文件名为openwrt-sdk开头。下载好后,解压缩。
开始编译
安装编译所需软件包
sudo apt-get install gawk libncurses5-dev libz-dev zlib1g-dev git ccache
更新LEDE软件包
(1)修改SDK目录下的feeds.conf.default文件,将“source.git;HEAD”改为“source.git”,即:把source.git后面的代码删除。
(2)更新软件包(逐行运行)
用Linux系统的终端,进入到刚才解压缩的SDK目录下,再依次运行以下代码./scripts/feeds update ./scripts/feeds install zlib ./scripts/feeds install libopenssl ./scripts/feeds update packages ./scripts/feeds install libpcre
下载源码
git clone https://github.com/ywb94/openwrt-ssr.git package/openwrt-ssr
配置固件
make menuconfig
运行以上代码后,进入配置固件页面,默认应该都选中了以下两个软件。
【M】luci ->3. Applications-> luci-app-shadowsocksR 原始版本 【M】luci ->3. Applications-> luci-app-shadowsocksR-GFW GFWList版本
编译S-S-R
make package/openwrt-ssr/compile V=99
- 编译完成 软件位于
安装S-S-R
- 使用WinSCP等工具,将S-S-R软件上传到/tmp目录下。(同时只能安装1个版本)
运行以下代码进行软件安装
opkg update opkg install luci-app-shadowsocksR*.ipk
- 等待片刻,系统会自动安装依赖包
- 安装完成后,进入LUCI界面,Service→ShadowSocksR。
配置S-S-R
如果你的路由器是当做S-S-R服务器的才需要配置S-S-R Server,否则只需要配置S-S-R Client即可。
- 编辑“Service Setting”中的唯一一条记录,右侧的“Edit”按钮,进入编辑模式;
- 根据你的S-S-R服务器的信息,进行填写;
- 编辑完成后,提交并应用以上设置;
- 在“Global Setting”中的“Global Server”选择为刚输入的服务器,提交并应用以上设置。
- 进入“Status”选项卡,查看“Running Status”中的“Global Client”如果显示”Running“,则表示正常。
- 依次点击“Google Connectivity,Baidu Connectivity,China IP Data,Check Server Port”右侧的按钮进行检测。如果全部为绿色就是正常。
下载
- ar71xx系列:点击下载, 密码:HJWSKY
22 条评论
Failed to execute arcombine dispatcher target for entry '/admin/services/shadowsocksr/client'.
The called action terminated with an exception:
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua:7: module 'luci.model.ipkg' not found:
no field package.preload['luci.model.ipkg']
no file './luci/model/ipkg.lua'
no file '/usr/share/lua/luci/model/ipkg.lua'
no file '/usr/share/lua/luci/model/ipkg/init.lua'
no file '/usr/lib/lua/luci/model/ipkg.lua'
no file '/usr/lib/lua/luci/model/ipkg/init.lua'
no file './luci/model/ipkg.so'
no file '/usr/lib/lua/luci/model/ipkg.so'
no file '/usr/lib/lua/loadall.so'
no file './luci.so'
no file '/usr/lib/lua/luci.so'
no file '/usr/lib/lua/loadall.so'
stack traceback:
[C]: in function 'require'
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua:7: in function 'func'
/usr/lib/lua/luci/cbi.lua:66: in function 'load'
/usr/lib/lua/luci/dispatcher.lua:943: in function 'target'
/usr/lib/lua/luci/dispatcher.lua:1061: in function
出现这个错误怎么回事,望解答
我也是一样的问题,请问您解决了么
已解决,opkg安装luci-compat包就行了
输入:./scripts/feeds update的时候,报错:Unable to open feeds configuration at ./scripts/feeds line 48.
这是怎么回事呢
我填写了客户端配置之后,客户端无法启动,提示下面的内容
Sun Jul 21 15:22:38 2019 daemon.err uhttpd[894]: Model shadowsocksr/status returns SimpleForm but is dispatched via cbi(),
Sun Jul 21 15:22:38 2019 daemon.err uhttpd[894]: please change admin/services/shadowsocksr/status to use the form() action instead.
Sun Jul 21 15:22:40 2019 daemon.err uhttpd[894]: sh: /usr/bin/ssr-check: not found
Sun Jul 21 15:23:04 2019 daemon.err uhttpd[894]: Model shadowsocksr/status returns SimpleForm but is dispatched via cbi(),
Sun Jul 21 15:23:04 2019 daemon.err uhttpd[894]: please change admin/services/shadowsocksr/status to use the form() action instead.
你好!请问我是VM虚拟机安装的LEDE应该安装那个文件?
X86_64,虚拟机安装了X-WRT,安装luci-app-shadowsocksR_1.2.1_all.ipk。安装成功,启动时如下提示:
Failed to execute arcombine dispatcher target for entry '/admin/services/shadowsocksr/client'.
The called action terminated with an exception:
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua:26: attempt to call field 'arptable' (a nil value)
stack traceback:
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua:26: in function 'func'
/usr/lib/lua/luci/cbi.lua:66: in function 'load'
/usr/lib/lua/luci/dispatcher.lua:866: in function 'target'
/usr/lib/lua/luci/dispatcher.lua:984: in function
解决办法
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua
/usr/lib/lua/luci/model/cbi/shadowsocksr/client-config.lua
这两个文件,26行附近,
将local arp_table = luci.sys.net.arptable() or {}
修改为local arp_table = luci.ip.neighbors()即可。
非常感谢,解决了我的大问题。
Sh*adowsocks*R* P*l*us+ NOT RUNNING
非常感谢你的详细教程,按照设置,全局客户端显示服务未运行,国内ip段可以更新,服务器端口检查正常,就是百度和google 连通性错误
你好 为什么服务器都配置好后 所有服务显示未运行
解决了吗?我也很苦恼
小手一抖,回复到手,手提酱油,低头猛走。
x86平台,也是这么编译?需要有什么调整吗?
只是下载的SDK有区别,其它代码都一样。
我用的是k3 刷的lede
我直接用的你的网盘里的ssr,通过命令:
cd /tmp
opkg install luci-app-shadowsocksR_1.2.1_all.ipk
安装后可以显示SSR,但打开后出现如下的:
/usr/lib/lua/luci/dispatcher.lua:487: Failed to execute function dispatcher target for entry '/admin/services/shadowsocksr'.
The called action terminated with an exception:
/usr/lib/lua/luci/dispatcher.lua:487: Failed to execute arcombine dispatcher target for entry '/admin/services/shadowsocksr/client'.
The called action terminated with an exception:
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua:26: attempt to call field 'arptable' (a nil value)
stack traceback:
[C]: in function 'assert'
/usr/lib/lua/luci/dispatcher.lua:487: in function 'dispatch'
/usr/lib/lua/luci/dispatcher.lua:121: in function
登录ssh,修改下面两文件
/usr/lib/lua/luci/model/cbi/shadowsocksr/client.lua
/usr/lib/lua/luci/model/cbi/shadowsocksr/client-config.lua
把其中的
#local arp_table = luci.sys.net.arptable() or {}
修改为
local arp_table = luci.ip.neighbors() or {}
文章不错非常喜欢
来逛逛!好博客!
希望楼主出一个 openwrt 的负载均衡教程。。