Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- INTERVAL=5
- NUMP=3
- OLD=""
- TARGET=192.168.1.50
- PORT=32400
- IFACE=br0
- MAC=00:25:22:21:B6:64
- WOL=/usr/sbin/ether-wake
- LOGFILE="/var/log/ether-wake.log"
- while sleep $INTERVAL;do
- NEW=`dmesg | awk '/ACCEPT/ && /DST='"$TARGET"'/ && /DPT='"$PORT"'/ {print }' | tail -1`
- SRC=`echo $NEW | awk -F'[=| ]' '{print $8}'`
- DPORT=`echo $NEW | awk -F'[=| ]' '{print $27}'`
- PROTO=`echo $NEW | awk -F'[=| ]' '{print $23}'`
- if [ "$NEW" != "" -a "$NEW" != "$OLD" ]; then
- if ! ping -qc $NUMP $TARGET >/dev/null; then
- # echo "NOWAKE $TARGET was accessed by $SRC, port $DPORT, protocol $PROTO and is already alive at" `date`>> $LOGFILE
- # else
- echo "WAKE $TARGET requested by $SRC, port $DPORT, protocol $PROTO at" `date`>> $LOGFILE
- $WOL -b -i $IFACE $MAC
- sleep 5
- fi
- OLD=$NEW
- fi
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement