Closed hexid26 closed 7 years ago
如果你的 ipset 版本是 v6 的话, 那貌似应该是支持的. 请打印下在路由器下 ipset -v
的输出.
ipset list FREEWEB 显示没有添加任何信息,members 为空
本来就是这样的, 只有你访问一个国内的域名后, 才会自动加入 FREEWEB, 这个添加的过程应该由 dnsmasq 来完成, 否则就没有意义了.
我在 EntWare 中安装的 shadowsocks-libev 正确配置了 /opt/etc/init.d/ 下面的相关配置文件,但是 server 并没有自动启动
ss-server 不是在路由器启动, 只有一个 ss 客户端, 有没有启动, 你 ps 下就知道. ps |grep -e 'ss-'
应该输出
594 admin 5788 S ss-redir -c /opt/etc/shadowsocks.json
611 admin 4304 S ss-tunnel -c /opt/etc/shadowsocks.json -b 127.0.0.1 -l 1082 -L 8.8.4.4:53 -u
请确认, 如果使用自动模式, 是否完整配置成功? 我手头没有这么高端的路由器测试啊, 请告知.
admin@RT-AC5300-USB:/tmp/home/root# ipset -v
ipset v6.29, protocol version: 6
shadowsocks.json
中修改成为 IPv4 的地址之后,可以正常启动。
运行之后的提示如下:
HAIXIANGs-Mini:asuswrt-merlin-transparent-proxy haixiang$ ./ss+dnsmasq admin@192.168.199.1
Please install wget! e.g. sudo apt-get install wget
foreign_domains.conf 100% 34 2.6KB/s 00:00
S22ss-tunnel 100% 261 179.6KB/s 00:00
iptables.sh 100% 1916 1.3MB/s 00:00
patch_dnsmasq 100% 451 391.1KB/s 00:00
restart_dnsmasq 100% 83 76.7KB/s 00:00
shadowsocks.json 100% 223 14.2KB/s 00:00
Package bash (4.3.42-1a) installed in root is up to date.
***********************************************************
Remote deploy scripts is started !!
***********************************************************
HAIXIANGs-Mini:asuswrt-merlin-transparent-proxy haixiang$
也就是说你的自动化脚本在调用了 deploy_start
了脚本之后,就结束了。。。
剩下的我是手动完成的。
我没有具体去测试你的代码是在哪里停下来的,但是就是在加载你 deploy start.sh
脚本中的函数时候停止的。
今天中午又手动配置了一遍,没有问题了。很奇怪。 目前的问题
感谢作者的辛勤劳动!!反正我就上上 Google 家的站点,够用了。
Please install wget! e.g. sudo apt-get install wget
自动运行时, 有这样的错误提示, 因为你的宿主机竟然没有装 wget, 难道是 windows? 还真没考虑这点啊. 没有 wget, 也就没有从 dnsmasq-china-list 下载最新的国内域名白名单, 你需要自己手动更新下,
这个问题已经修复, 你可以拉一下代码, 如果没有 wget, 应该不会继续执行 Remote deploy 了.
不好意思,犯二了。。。当时是演示用的,所以换了个 mac。真实部署的机器都是 MAC,都有 wget。。。都是代码狗。。。brew 必装的。。。wget 也是如此。。。。 输出都是到这一步:
***********************************************************
Remote deploy scripts is started !!
***********************************************************
然后就回到了命令行。。。我也觉得很奇怪。。。感觉你在deploy start.sh
中的函数定义脚本都没有执行。。。
奇怪, 稍后找个 mac 试下了, mac 下面, 如果不安装 GNU 的 coreutils, 很多命令的参数都和我主机不一致的, 搞不好那个命令参数崩掉了. 你可以使用 brew 装. brew install coreutils
, 然后加 PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
让这些 GNU 版本的工具替换系统自带的.
不过我抽时间用 Mac 试一下, 尝试修复一下吧.
Linux下的bash脚本我写的少。有空的时候我把你的脚本改改,弄个mac版的好了。反正手动配置我也弄好了。
估计是你定义的那几个function初始化出问题了
已经修复了部分兼容性问题, 但 OSX 仍旧不可用. 见 #17
首先感谢作者提供了如此通俗易懂的指导文章,以及自动化脚本。
不过我的路由器是
AC5300
,自动化脚本貌似并不适用。在显示以下内容后就结束了(宿主机 Mac)Merlin 原版固件 380.65_4 Dnsmasq 和 ipset 版本信息如下:
问题一
我是手动配置
ss+dnsmasq
方案 SS 的搭建已经完成。单独在路由器上测试过,没有问题。 主要是路由表的问题。 就是在/etc/dnsmasq.conf
下面添加ipset=/domain.com/FREEWEB
之后,重启dnsmasq service
之后,ipset list FREEWEB
显示没有添加任何信息,members 为空。 目前唯一能够正确添加 ipset 的指令就是ipset add FREEWEB [domain.com]
指令dnsmasq --ipset=/[domain.com]/FREEWEB
也没有办法使用。(insmod 都已经加载了) 不知道是不是dnsmasq
和ipset
不互相兼容。问题二
我在
EntWare
中安装的shadowsocks-libev
正确配置了/opt/etc/init.d/
下面的相关配置文件,但是 server 并没有自动启动。你没有在其它地方添加 SS 的启动脚本么?方法都看懂了,所有 FREEWEB 中的域名走原始通道,非 FREEWEB 中的走 SS 通道。问题是,我这个 FREEWEB,依靠
dnsmasq
完全无法自动添加。。。 求救!!