并发检测主机ip存活脚本
#!/bin/bash
###################
# Check Active Host#######
###################
function CheckInput(){
if [ $# -ne ] ; then
return
else
return
fi
} function CheckIp(){
/bin/ipcalc -s -c $ &>/dev/null
return $?
} function PingIp(){
ping -c -W $ &>/dev/null
if [ $? -eq ] ; then
echo $ >> $TMP_ACTIVE
else
echo $ >> $TMP_DOWN
fi
} function PingAll(){
PrefixIP=$(echo $|awk -F '.' '{print $1"."$2"."$3"."}')
for ip in {..}
do
IP="${PrefixIP}${ip}"
PingIp $IP &
done
} function SelectPing(){
ENDIP=$(echo $|awk -F '.' '{print $NF}')
if [ $ENDIP -eq -o $ENDIP -eq ] ; then
PingAll $*
else
PingIp $*
fi
} function SortIp(){
while :
do
PING_NUM=$(ps -ef|grep ping|grep -v 'grep'|wc -l)
if [ $PING_NUM -eq ] ; then
`cat $TMP_ACTIVE|sort -t '.' -k -n > /tmp/active.host`
`cat $TMP_DOWN|sort -t '.' -k -n > /tmp/down.host`
rm -f $TMP_ACTIVE
rm -f $TMP_DOWN
break
fi
done
} function Show(){
ACTIVEIP=$(cat /tmp/active.host)
DOWNIP=$(cat /tmp/down.host)
if [ -s "/tmp/active.host" ] ; then
echo "Active Host:"
echo $ACTIVEIP|tr " " "\n"
else
echo "Down Host:"
echo $DOWNIP|tr " " "\n"
fi
}
function main(){
CheckInput $*
if [ $? -ne ] ; then
echo -e $"USAGE: $0 {ipaddress}\nExample:\n$0 192.168.1.10 will check 192.168.1.10 only\n$0 192.168.1.0 will check 192.168.1.1 - 192.168.1.254 "
else
CheckIp $*
if [ $? -ne ] ; then
echo "Please input correct ip address . such as 192.168.1.10 or 192.168.1.0"
else
TMP_ACTIVE=$(mktemp)
TMP_DOWN=$(mktemp)
>/tmp/active.host
>/tmp/down.host
SelectPing $*
SortIp
Show
rm -f /tmp/active.host
rm -f /tmp/down.host
fi
fi
} main $*
并发检测主机ip存活脚本的更多相关文章
- Shell脚本实现检测某ip网络畅通情况,实战用例
Shell脚本实现检测某ip网络畅通情况,实战用例 环境准备,linux shell 发送email 邮件:1.安装sendmailyum -y install sendmail安装好sendmail ...
- ctf线下赛中检测外来IP的shell脚本
该脚本可用于ctf线下赛中,用来检测攻击IP的接入,及时做出响应. #!/bin/bash #写自己队的ip ipA="172.22.60.230" ipB="172.2 ...
- Spring Cloud:多环境配置、eureka 安全认证、容器宿主机IP注册
记录一下搭建 Spring Cloud 过程中踩过的一些坑,测试的东西断断续续已经弄了好多了,一直没有时间整理搭建过程,时间啊~时间~ Spring 版本 Spring Boot:2.0.6.RELE ...
- 常用的主机监控Shell脚本
最近时不时有朋友问我关于服务器监控方面的问题,问常用的服务器监控除了用开源软件,比如:cacti,nagios监控外是否可以自己写shell脚本呢?根据自己的需求写出的shell脚本更能满足需求,更能 ...
- 【转】nagios使用带url的check_http检测主机
前一段时间在Cu论坛发现一个提问,问题是nagios关于检测主机http服务的.原帖地址http://bbs.chinaunix.net /forum.php?mod=viewthread&t ...
- 查看KVM宿主机上虚拟机的IP的脚本
查看KVM宿主机上虚拟机的IP的脚本 #!/bin/bash #Auth:liucx #ping当前网段内在线的主机,以便产生arp记录. .{..};do { >& }& do ...
- arp命令(windows ),nmap查看局域网内所有主机IP和MAC
ARP命令详解 ARP是一个重要的TCP/IP协议,并且用于确定对应IP地址的网卡物理地址.实用arp命令,我们能够查看本地计算机或另一台计算机的ARP高速缓存中的当前内容.此外,使用arp命令,也可 ...
- 发起SSH攻击主机IP地址列表
发起SSH攻击主机IP地址列表 东北大学 http://antivirus.neu.edu.cn/scan/ssh.php 以下IP地址对SSH服务进行攻击,严重增加主机成为肉鸡的可能性.强烈建议网管 ...
- 获取请求主机IP地址,如果通过代理进来,则透过防火墙获取真实IP地址;
package com.utils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.servlet.htt ...
随机推荐
- 【微信】微信小程序 微信开发工具中新创建的json文件,编译报错VM1781:2 pages/module/module.json 文件解析错误 SyntaxError: Unexpected end of JSON input
如果新创建报错:编译报错VM1781:2 pages/module/module.json 文件解析错误 SyntaxError: Unexpected end of JSON input 解决方法 ...
- Java学习之自动装箱和自动拆箱源码分析
自动装箱(boxing)和自动拆箱(unboxing) 首先了解下Java的四类八种基本数据类型 基本类型 占用空间(Byte) 表示范围 包装器类型 boolean 1/8 true|false ...
- Redis缓存清理
Redis缓存清理 学习了:https://www.cnblogs.com/ZnCl/p/7116870.html 使用 redis-cli.exe登录, 使用flushall 命令: 或者key * ...
- Laravel之HTTP相应
一.基本相应示例 1.返回简单字符串 Route::get('/', function () { return 'Hello World'; }); 给定的字符串会被框架自动转化为 HTTP 响应 2 ...
- PHP奇偶行不同显示不同的背景
有时数据成表格状 为了更加美观会将奇偶行显示不同的背景色. 实现代码: <foreach name="list" item="v" key='k'> ...
- axios 设置超时时间 timeout
this.$ajax.post('', {operate: type, ids: this.data.id.toString(), data_type: 'ips'}, {timeout: 60000 ...
- UVA 617 - Nonstop Travel(数论+暴力枚举)
题目链接:617 - Nonstop Travel 题意:给定一些红绿灯.如今速度能在30-60km/h之内,求多少个速度满足一路不遇到红灯. 思路:暴力每个速度,去推断可不能够,最后注意下输出格式就 ...
- 分组password算法
代换,S盒.扩散和混淆,这些概念构成了分组password学的基础. 假设明文和密文的分组长度都为n比特,则明文的每个分组都有2n个可能的取值; 代换: 为使加密运算可逆(即解密运算可行),明文的每个 ...
- 尖峰冲击测试(spike Testing)
与可靠性测试类似,尖峰冲击测试这种方法也是从其他行业借鉴而来.在电力工业,有一种冲击测试,用来验证设备在刚刚接通电源时能否经受住涌流的破坏.所谓涌流,通俗地说,就是电源接通瞬间,电流突然变大的现象.涌 ...
- java中获取文件路径的几种方式
http://xyzroundo.iteye.com/blog/1116159关于绝对路径和相对路径: 绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:C:xyz es ...