如果eth0为down / up,如何发送不同的SNMP陷阱?

时间:2018-04-26 13:09:23

标签: linux bash scripting snmp

我想运行一个脚本来检查我的网络接口是否已启动/关闭。如果它已启动,它将发送一个SNMP陷阱,如果它已关闭,它将发送另一个。

ip a ||    
while read LINE; do    
  if [[ $LINE == *"2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000"* ]]; then    
    TRAP 1    
  else    
    TRAP 2

你有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您可以尝试这样的事情:

while [ 1 ]; do                                                                  
    sleep 1                                                                      
    IS_UP=$(ip a | grep "IFACE:" | grep "state UP")                              
    if [ "${IS_UP}x" == "x" ]; then                                              
        TRAP 2                                                              
    else                                                                         
        TRAP 1                                                              
    fi                                                                           
done 

将IFACE替换为您感兴趣的界面。希望这可以帮助! :)