加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell利用mysql表项的icmp检测

发布时间:2020-12-15 22:48:02 所属栏目:安全 来源:网络整理
导读:作者:邓聪聪 利用mysql的表项记录IP地址和对应状态 +----+-----------------+--------+--------+| id | ip_host | desc | status |+----+-----------------+--------+--------+| 1 | 8.8 . 8.8 | 电信 | 0 || 23 | 114.114 . 114.114 | 联通 | 0 || 29 | 11

作者:邓聪聪

  利用mysql的表项记录IP地址和对应状态

+----+-----------------+--------+--------+
| id | ip_host         | desc   | status |
+----+-----------------+--------+--------+
|  1 | 8.8.8.8         | 电信   |      0 |
| 23 | 114.114.114.114 | 联通   |      0 |
| 29 | 114.114.114.117 | 测试   |      1 |
| 21 | 2.2.2.2         | 电信   |      1 |
| 15 | 222.222.222.1   | 电信   |      0 |
| 24 | 223.3.2.2       | 谷歌   |      1 |
| 26 | 23.24.24.32     | 测完   |      1 |
| 25 | 232.23.22.32    | 测试   |      1 |
+----+-----------------+--------+--------+

shell脚本内容:

#!/bin/sh
PATH=$PATH

DB_table="iphost"
DB_status="status"
DB_vlues="ip_host" 
ping_ip(){ sql_host_status
=`mysql -uusername -ppassword test -e "select status from $DB_table where ip_host=‘$1‘"|grep -v $DB_status` ping -c 4 -W 1 $1 > /dev/null 2>&1 if [ $? -ne $sql_host_status ] then des=`mysql -uusername -ppassword test -e "select * from iphost where $DB_vlues like ‘$1‘"|awk {print $3}|grep -v desc` if [ $sql_host_status == 0 ] then #$sql_host_status="1" echo "$1 is bad" #更新状态为1 mysql -uusername -ppassword test -e "update $DB_table set $DB_status=‘1‘ where ($DB_vlues=‘$1‘)" else #$sql_host_status="0" echo "$1 is ok" #更新状态为0 mysql -uusername -ppassword test -e "update $DB_table set $DB_status=‘0‘ where ($DB_vlues=‘$1‘)" fi else continue fi } while true do echo "" while true do for i in `mysql -uusername -ppassword test -e "select ip_host from iphost" |awk {print $1}|grep -v ip_host` do ping_ip $i done done sleep 1 break done

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读