dickrong 发表于 2019-1-22 06:53:04

linux上ping脚本及zabbix3.xx上自动发现

  有时候,我们需要在linux上ping一些地址,判断地址是否被占用
  一、编写shell脚本
  脚本如下:
#!/bin/bash
for i in 192.168.16.{1..255}      
do
    (
      ping $i -c 2 > /dev/null 2>&1
      [ $? -eq 0 ] && echo "$i is alive"
    )&
done  效果如下
http://s1.运维网.com/images/20180507/1525662165580733.png
  二、使用fping
  fping需要单独安装,它能ping一组地址, -g指定一组地址,比如


fping -g 192.168.16.1 192.168.16.200

表示这两个地址之间所有的地址。
  
-a选项表明打印出alive的主机
qingsong@db2a:/tmp$ fping -a -g 192.168.16.0/24 2> /dev/null
192.168.16.1
192.168.16.2
192.168.16.128
192.168.16.129

-u选项打印出unreachable的主机
qingsong@db2a:/tmp$ fping -u -g 192.168.16.0/24 2> /dev/null
192.168.16.3
192.168.16.4
192.168.16.5
......
192.168.16.254
  效果如下:
http://s1.运维网.com/images/20180507/1525662312162542.png
  三、使用nmap
nmap -sP 192.168.99.0/24  效果如下:
http://s1.运维网.com/images/20180507/1525662449157845.png
  四、使用zabbix的自动发现
  因为ping主机可能不准,因为有终端服务器上防火墙禁ping,zabbix上可以配置自动发现规则,可以通过ping,ssh发现主机的状态,从而判断主机地址
  是否被占用
http://s1.运维网.com/images/20180507/1525662563687227.png
  效果如下:
http://s1.运维网.com/images/20180507/1525662597563286.png



页: [1]
查看完整版本: linux上ping脚本及zabbix3.xx上自动发现