Shadowsocks-libev: 请问能否实现像 shadowsocks-go 的 client-multi-server.json 多服务器支持功能?

创建于 2015-01-06  ·  3评论  ·  资料来源: shadowsocks/shadowsocks-libev

https://github.com/shadowsocks/shadowsocks-go/blob/master/sample-config/client-multi-server.json

这个版本配置文件支持多服务器,如果其实一个服务器down掉,就会自动切换下一个服务器,这样可以保持服务的不间断性和稳定性,请问 shadowsocks-libev 能不能设计成这样?

duplicate

最有用的评论

https://github.com/gnu4cn/openwrt-ss-configs

拿走不谢:

/etc/servers.conf

/etc/init.d/shadowsocks

#!/bin/sh /etc/rc.common

start() {
    sed -i 's/114.114.114.114/127.0.0.1#3210/' /etc/dnsmasq.d/gfwlist.conf
    /etc/init.d/dnsmasq restart

    servers=`cat /etc/servers.conf`;

    for server in $servers;
        do
            addr=`echo $server|awk '{split($0,a,":"); print a[1];}'`;
            port=`echo $server|awk '{split($0,a,":"); print a[2];}'`;
            cred=`echo $server|awk '{split($0,a,":"); print a[3];}'`;

            service_start /usr/bin/ss-redir -u -b 0.0.0.0 -s $addr -p $port -k $cred -m rc4-md5 -l 7654 -t 600 -f /var/run/shadowsocks.$addr.$port.pid
            service_start /usr/bin/ss-tunnel -b 0.0.0.0 -s $addr -p $port -k $cred -m rc4-md5 -t 600 -l 3210 -L 8.8.8.8:53 -u 
    done

    /usr/bin/shadowsocks-firewall
}

所有3条评论

#5 的重复

https://github.com/gnu4cn/openwrt-ss-configs

拿走不谢:

/etc/servers.conf

/etc/init.d/shadowsocks

#!/bin/sh /etc/rc.common

start() {
    sed -i 's/114.114.114.114/127.0.0.1#3210/' /etc/dnsmasq.d/gfwlist.conf
    /etc/init.d/dnsmasq restart

    servers=`cat /etc/servers.conf`;

    for server in $servers;
        do
            addr=`echo $server|awk '{split($0,a,":"); print a[1];}'`;
            port=`echo $server|awk '{split($0,a,":"); print a[2];}'`;
            cred=`echo $server|awk '{split($0,a,":"); print a[3];}'`;

            service_start /usr/bin/ss-redir -u -b 0.0.0.0 -s $addr -p $port -k $cred -m rc4-md5 -l 7654 -t 600 -f /var/run/shadowsocks.$addr.$port.pid
            service_start /usr/bin/ss-tunnel -b 0.0.0.0 -s $addr -p $port -k $cred -m rc4-md5 -t 600 -l 3210 -L 8.8.8.8:53 -u 
    done

    /usr/bin/shadowsocks-firewall
}

拜托,问的是客户端ss-local
https://github.com/shadowsocks/shadowsocks-nodejs/blob/master/test/config-client-multi-server-port.json
只适用于多个servers是"password"和"method"一致的,如果连"password"和"method"都不一致时,shadowsocks-libev如何配置ss-local?
而shadowsocks-go的ss-local可以如此配置:

{
    "local_port": 1081,
    "server_password": [
        ["127.0.0.1:8387", "foobar","aes-256-cfb"],
        ["127.0.0.1:8388", "barfoo", "aes-128-cfb"]
    ]
}
此页面是否有帮助?
0 / 5 - 0 等级