mirror of
https://github.com/Ysurac/openmptcprouter-feeds.git
synced 2025-03-09 15:40:03 +00:00
33 lines
766 B
Bash
Executable file
33 lines
766 B
Bash
Executable file
#!/bin/sh
|
|
# vim: set noexpandtab tabstop=4 shiftwidth=4 softtabstop=4 :
|
|
|
|
name=$0
|
|
basename="$(basename $0)"
|
|
|
|
log() {
|
|
logger -p daemon.info -t "${basename}" "$@"
|
|
}
|
|
|
|
timeout=${OMR_TRACKER_TIMEOUT:-2}
|
|
interval=${OMR_TRACKER_INTERVAL:-10}
|
|
retry=${OMR_TRACKER_TRIES:-4}
|
|
proxy=${OMR_TRACKER_PROXY:-127.0.0.1:1111}
|
|
hosts=${OMR_TRACKER_HOSTS:-1.1.1.1 23.96.52.53}
|
|
|
|
nodns=0
|
|
|
|
last=0
|
|
|
|
while true; do
|
|
host=${hosts%% *}
|
|
if curl -s --socks5 "${proxy}" --max-time "${timeout}" --retry "${retry}" "$host" &>/dev/null ; then
|
|
[ ${last} = 0 ] && log "Shadowsocks is up"
|
|
/etc/init.d/shadowsocks-libev rules_up 2> /dev/null
|
|
last=1
|
|
else
|
|
[ ${last} = 1 ] && log "Shadowsocks is down"
|
|
/etc/init.d/shadowsocks-libev rules_down 2> /dev/null
|
|
last=0
|
|
fi
|
|
sleep "${interval}"
|
|
done
|