Linux下批量ping某个网段ip的脚本
比如现在需要对172.16.50.0/24网段的ip进行检查,检查哪些ip现在被占用,哪些ip没有被占用,可以通过ping命令来检查,脚本如下:
- [root@uatdns01 opt]# vim /opt/ping.sh
- #!/bin/bash
- . /etc/init.d/functions
- for var in {1..254};
- do
- ip=172.16.50.$var
- ping -c2 $ip >/dev/null 2>&1
- if [ $? = 0 ];then
- action "$ip" /bin/true
- else
- action "$ip" /bin/false
- fi
- done
- [root@uatdns01 opt]# chmod 755 /opt/ping.sh
- [root@uatdns01 opt]# sh /opt/ping.sh
- 172.16.50.1 [ OK ]
- 172.16.50.2 [FAILED]
- 172.16.50.3 [FAILED]
- 172.16.50.4 [FAILED]
- 172.16.50.5 [FAILED]
- .........
- .........
- 172.16.50.99 [ OK ]
- 172.16.50.100 [ OK ]
- 172.16.50.101 [ OK ]
- 172.16.50.102 [ OK ]
- 172.16.50.103 [ OK ]
- 172.16.50.104 [ OK ]
- 172.16.50.105 [ OK ]
- 172.16.50.106 [ OK ]
- 172.16.50.107 [ OK ]
- 172.16.50.108 [ OK ]
- 172.16.50.109 [ OK ]
- 172.16.50.110 [ OK ]
- 172.16.50.111 [FAILED]
- 172.16.50.112 [ OK ]
- 获取172.16.60.0/24网段可用ip的shell脚本
- [root@ansible-server ~]# cat ip_ping.sh
- #!/bin/bash
- ip=1
- while [ $ip != "254" ]; do
- ping 172.16.60.$ip -c 2 | grep -q "ttl=" && echo "172.16.60.$ip yes" || echo "172.16.60.$ip no"
- ip=`expr "$ip" "+" "1"`
- done
- 执行:
- [root@ansible-server ~]# sh ip_ping.sh
- 172.16.60.1 yes
- 172.16.60.2 no
- 172.16.60.3 no
- .............
- 172.16.60.24 yes
- 172.16.60.25 yes
- 172.16.60.26 no
- .............
- 如果只打印可用ip, 则脚本修改如下:
- [root@ansible-server ~]# cat ip_ping.sh
- #!/bin/bash
- ip=1
- while [ $ip != "254" ]; do
- ping 172.16.60.$ip -c 2 | grep -q "ttl=" && echo "172.16.60.$ip yes" || echo "172.16.60.$ip no" >/dev/null 2>&1
- ip=`expr "$ip" "+" "1"`
- done
- 执行:
- [root@ansible-server ~]# sh ip_ping.sh
- 172.16.60.1 yes
- 172.16.60.21 yes
- 172.16.60.22 yes
- 172.16.60.23 yes
- 172.16.60.24 yes
- 172.16.60.25 yes
- 172.16.60.31 yes
- 172.16.60.32 yes
- 172.16.60.33 yes
- 172.16.60.34 yes
- 172.16.60.35 yes
- 172.16.60.36 yes
- 172.16.60.37 yes
- 172.16.60.38 yes
- 172.16.60.39 yes
- 获取172.16.50.0/24, 172.16.51.0/24, 172.16.60.0/24 三个网段的可用ip
- [root@ansible-server ~]# cat ip_ping.sh
- #!/bin/bash
- ip=1
- while [ $ip != "254" ]; do
- ping 172.16.50.$ip -c 2 | grep -q "ttl=" && echo "172.16.50.$ip yes" || echo "172.16.50.$ip no" >/dev/null 2>&1
- ip=`expr "$ip" "+" "1"`
- ping 172.16.51.$ip -c 2 | grep -q "ttl=" && echo "172.16.51.$ip yes" || echo "172.16.51.$ip no" >/dev/null 2>&1
- ip=`expr "$ip" "+" "1"`
- ping 172.16.60.$ip -c 2 | grep -q "ttl=" && echo "172.16.60.$ip yes" || echo "172.16.60.$ip no" >/dev/null 2>&1
- ip=`expr "$ip" "+" "1"`
- done
- 执行:
- [root@ansible-server ~]# sh ip_ping.sh
- 172.16.50.1 yes
- 172.16.51.11 yes
- 172.16.50.16 yes
- 172.16.50.19 yes
- 172.16.51.20 yes
- 172.16.60.21 yes
- 172.16.50.22 yes
- 172.16.60.24 yes
- 172.16.50.25 yes
- 172.16.50.31 yes
- 172.16.60.33 yes
- 172.16.51.35 yes
- 172.16.60.36 yes
- 172.16.60.39 yes
- 172.16.51.41 yes
- 172.16.51.44 yes
- 172.16.50.52 yes
- 172.16.51.53 yes
- 172.16.50.55 yes
- 172.16.50.58 yes
- 172.16.51.65 yes
- ..................
Linux下批量ping某个网段ip的脚本的更多相关文章
- Linux下批量ping某个网段的脚本
比如现在需要对192.168.0.0/24网段的ip进行检查,检查哪些ip现在被占用,哪些ip没有被占用,可以通过ping命令来检查,也可以通过nmap接参数来检查 ping命令脚本如下: [root ...
- Linux下多网卡同网段多IP网络分流设定方法
Linux下多网卡同网段多IP网络分流设定方法 -- :: 标签:Linux下多网卡同网段多IP网络分流设定方法 当服务器需要较高的网络流量时,在其它资源不造成瓶颈的情况下无疑会用到多网卡. 第1选项 ...
- Windows 和 Linux 下 禁止ping的方法
Windows 和Linux 下 禁止ping的方法 目的: 禁止网络上的其他主机或服务器ping自己的服务器 运行环境: Windows 03.08 linux 方法: Windows 03下: ...
- Linux下批量管理工具pssh安装和使用
Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...
- RedisCluster linux下批量删除 key
Redis Cluster linux下批量删除键 说明 使用时不支持传入参数 , 如 redis_batch_del.sh , 因为在linux下 会自动将 * 解析为当前目录下所有文件名, 目前还 ...
- Linux 下获取LAN中指定IP的网卡的MAC(物理地址)
// all.h// 2005/06/20,a.m. wenxy #ifndef _ALL_H#define _ALL_H #include <memory.h>#include < ...
- 虚拟机Linux下一直获取不到ip怎么办
虚拟机Linux下一直获取不到ip怎么办 Ifconfig -a 只显示了本地的ip127.0.0.1 和另一个eth1 但是找不到ip地址. 需要做的是: 申请ipdhclient eth1 另外释 ...
- python实现本地批量ping多个IP
本文主要利用python的相关模块进行批量ping ,测试IP连通性. 下面看具体代码(python3): #!/usr/bin/env python#-*-coding:utf-8-*- impor ...
- Linux下批量修改文件及文件夹所有者及权限
Linux下批量修改文件及文件夹所有者及权限需要使用到两个命令,chmod以及chown 例:对/opt/Oracle/目录下的所有文件与子目录执行相同的权限变更: chmod -R 700 /opt ...
随机推荐
- sql server自定义函数学习笔记
sql server中函数分别有:表值函数.标量函数.聚合函数.系统函数.这些函数中除系统函数外其他函数都需要用户进行自定义. 一.表值函数 简单表值函数 创建 create function fu_ ...
- C#异常--System.IO.FileLoadException:“混合模式程序集是针对“v2.0.50727”版的运行时生成的错误
异常信息: System.IO.FileLoadException:“混合模式程序集是针对“v2.0.50727”版的运行时生成的,在没有配置其他信息的情况下,无法在 4.0 运行时中加载该程序集.” ...
- CSS图片水平垂直居中
Html: <div id="></img></div> </div> CSS: #MainContent { display:table-c ...
- Linux下的进程类别(内核线程、轻量级进程和用户进程)--Linux进程的管理与调度(四)
本文中出现的,内核线程,轻量级进程,用户进程,用户线程等概念,如果不太熟悉, 可以参见 内核线程.轻量级进程.用户线程三种线程概念解惑(线程≠轻量级进程) Linux进程类别 虽然我们在区分Linux ...
- Windows批处理 -- 打造MySQLCleaner
批处理打造MySQLCleaner 1. 简介 在我们卸载MySQL数据库的时候,往往除了需要卸载软件,还需要删除各种注册表信息,隐藏文件,卸载服务,否则当我们再次安装MySQL时就会出现 ...
- Linux结构目录
linux结构目录 Linux中有一句话叫做:一切皆文件. 下面来了解一下这些文件. 首先看一下Linux根目录下结构: bin:存放二进制可执行文件,一般常用命令都存放在这里. boot:存放系统启 ...
- if语句(初学者)
用if语句可以构成分支结构.它根据给定的条件进行判断,以决定执行某个分支程序段.C语言的if语句有三种基本形式. 1.基本形式:if(表达式)语句 其语义是:如果表达式的值为真,则执行其后的语句,否则 ...
- python框架面试题联系
1.对 MVC,MVT 解读的理解? M:Model,模型,和数据库进行交互 V:View,视图,负责产生 Html 页面 C:Controller,控制器,接收请求,进行处理,与 M 和 V 进行交 ...
- Ajax进阶之原生js与跨域jsonp
什么是Ajax? 两个数求和: 用Jquery和数据用json格式 viws函数: from django.shortcuts import render,HttpResponse # Create ...
- ECS简述
一.查看ECS实例 使用场景 •实例的日常维护 •实例运行状态和详细信息的查看 二.启动ECS实例 使用场景 •实例停止运行之后的再次启动 三.停止.重启ECS实例 使用场景 •实例运行的服务暂停时停 ...