openwrt定时切换网络

    业界资讯 Dr.V 来源:简书 464次浏览 0个评论 扫描二维码

    背景

    由于各大高校在晚上11点左右都会断网,之前用的不断网的账号,后来不行了,可以用实验室的网,用vpn或者ss进行代理就可以在晚上用网了。为了实现在不同时段使用不同网络,需要写两个小小的脚本

    实现

    1. 添加定时任务
      set crontab -e

      添加

      0 23 * * * /root/sd/scripts/start_ss.sh
      31 6 * * * /root/sd/scripts/stop_ss.sh

      注意地址要用绝对地址

    2. 然后设置网络,添加一个dhcp client 接口,这里取名为wan1

    add wan1

    之前连接校园网(netkeeper)的是接口wan,所以要做的就是白天用wan连接网络;晚上用wan1,并且配合vpn或者ss连接网络

    1. 设置ss或VPN,这里用的ss

    ss
    1. 然后编辑start_ss.shstop_ss.sh
      start_ss.sh:

      /sbin/ifdown wan
      /sbin/ifup wan1
      sed -i "s/enabled '1'/enabled '0'/g" /etc/config/shadowsocks
      /etc/init.d/ss-redir.sh restart >/dev/null 2>&1 &

      stop_ss.sh:

      /sbin/ifdown wan1
      sed -i "s/enabled '0'/enabled '1'/g" /etc/config/shadowsocks
      /etc/init.d/ss-redir.sh restart >/dev/null 2>&1 &
      /sbin/ifup wan

      至于这两句是怎么来的?

      sed -i "s/enabled '0'/enabled '1'/g" /etc/config/shadowsocks
      /etc/init.d/ss-redir.sh restart >/dev/null 2>&1 &

      因为要知道shadowsocks插件点击提交后都做了哪些事情,需要看插件的代码
      /usr/lib/lua/luci/controller/下有shadowsocks文件,里面指定了_cbi(shadowsocks),所以在/usr/lib/lua/luci/model/cbi/下也能找到shaodowsocks.lua,这个脚本置顶这个配置下面页面的具体情况,包括配置信息(配置文件为/etc/config/shadowsock),以及在最后有

      local apply = luci.http.formvalue("cbi.apply")
      if apply then
           os.execute("/etc/init.d/ss-redir.sh restart >/dev/null 2>&1 &")
      end

      及点击提交按钮后做的事情,即生效ss-redir配置,所以有了以上的脚本

    参考文章

    开发OpenWrt路由器上LuCI的模块

    anyShare分享到:

    VPN信息网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明-VPN信息网-openwrt定时切换网络
    喜欢 (1)
    发表我的评论
    取消评论

    表情 贴图 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址