OpenWrt系统支持接口hotplug事件触发脚本,可以利用这个特性实现接口上线时执行特定脚本的功能

一些简单的命令可以写入/etc/rc.local简单地实现开机启动,hotplug脚本适用于网络状态改变时需要执行的操作

  1. 将下面的配置文件保存到/etc/hotplug.d/iface文件夹下面
    95-sample-hotplug
    #!/bin/sh
    # put this in /etc/hotplug.d/iface
    if [ "$ACTION" == "ifup" -a "$INTERFACE" == "eth0" ]
    then
    # your scripts here(1) #
    fi
    if [ "$ACTION" == "ifdown" -a "$INTERFACE" == "eth0" ]
    then
    # your scripts here(2) #
    fi
    
    eth0按实际情况修改为需要监听事件的接口,如br-lan
    代码中有两端可以插入脚本的地方,第一个位置用于写eth0接口连上时候需要执行的脚本,第二个则为接口关闭时需要执行的脚本
  2. 给文件添加可执行权限
    chmod a+x /etc/hotplug.d/iface/95-sample-hotplug
    
  3. 尝试在Web界面开启关闭对应接口,查看脚本执行情况 可以使用logreaddmesg查看脚本日志输出

参考: Openwrt wiki hotplug

分类:

更新时间:

留下评论