FreeBSD 接口启动/关闭监控

FreeBSD 接口启动/关闭监控

如何获取 FreeBSD 中特定接口的状态?

ifconfig <ifname> | grep "status: active" 

工作正常,但我想避免轮询并尽快了解 ifup/ifdown。

答案1

devd(8)就可以了。您需要将其配置为在接口上发生事件时运行操作LINK_UPLINK_DOWN要添加/etc/devd.conf或甚至更好的示例配置是创建/etc/devd/interface.conf

notify 0 {
    match "system"        "IFNET";
    match "subsystem"     "(em0|em1)";
    match "type"          "LINK_DOWN";
    action "/usr/local/sbin/notifier.sh $subsystem"
}

上述配置假设您希望在接口em0em1发生故障时收到通知,并在事件发生时调用脚本。它还会将接口名称(因此$subsystem)传递给脚本。

答案2

您可以通过 devd(8) 监视 up/down 事件。查看 devd.conf(5) 中的 LINK_UP 和 LINK_DOWN 事件。

相关内容