按月存档: 2020/05

zabbix监控tracert路由

分类:linux日期:2020-05-12 - 21:22:20评论:2条作者:老谢

  不知道哪位大神最近在做法机房攻击频发,一被攻击路由就绕路,为了监控发生频率故需对路由进行监控,思路为使用BESTTRACE来追踪理由,利用bash脚本对追踪结果进行分析,并交由zabbix做映射值。

安装BESTTRACE

  BESTTRACE是ipip.net推出的Linux版路由追踪工具,可以替代traceroute命令,该工具可以输出json数据,及查ip所属地和AS号,但实际情况发现查询频率过高,会导致返回503错误,可能是ipip.net做了请求限制,避免滥用。

wget http://cdn.ipip.net/17mon/besttrace4linux.zip
unzip besttrace4linux.zip
chmod +x besttrace
mv besttrace /usr/sbin/
chmod +s /usr/sbin/besttrace
外部脚本监控
cd /usr/local/zabbix/share/zabbix/externalscripts
vim besttrace.sh
 
#!/bin/bash
IP=$1
var=$RANDOM
/usr/sbin/besttrace -q 1 -l -a $IP > /tmp/besttrace/tmp.$var
if [ `grep -c -E 'jp|tko' /tmp/besttrace/tmp.$var` != 0 ]; then
	if [ `grep -c -E '219.158' /tmp/besttrace/tmp.$var` != 0 ]; then
		echo "1"
	else
		echo "2"
	fi
elif [ `grep -c -E 'us' /tmp/besttrace/tmp.$var` != 0 ]; then
	if `grep -c -E '219.158' /tmp/besttrace/tmp.$var` != 0 ]; then
		echo "3"
	else
		echo "4"
	fi
elif [ `grep -c -E 'he.net' /tmp/besttrace/tmp.$var` != 0 ]; then
                echo "5"
else
    echo "0"
fi
rm -rf /tmp/besttrace/tmp.$var
映射值

0 ⇒ 正常
1 ⇒ 联通-日本
2 ⇒ 电信-日本
3 ⇒ 联通-美国
4 ⇒ 电信-美国
5 ⇒ he.net

  bash写的太烂,各位大佬指正。

Tags: