当前位置: 首页 > 编程笔记 >

shell脚本测试某网段内主机连通性

江志业
2023-03-14
本文向大家介绍shell脚本测试某网段内主机连通性,包括了shell脚本测试某网段内主机连通性的使用技巧和注意事项,需要的朋友参考一下

1. 测试192.168.4.0/24整个网段的连通性(while版本)

#!/bin/bash
#Author:丁丁历险(Jacob)
#定义变量i控制循环次数,i从1开始循环,每循环一次,i自加1,直到i等于254循环退出
#在每次循环中对一个IP进行ping测试,如果ping通,提示主机是UP的
#如果无法ping同,则提示主机是down的
#ping命令的-c选项控制ping测试的次数,-c2表示对目标主机执行2次ping测试
#ping命令的-i选项,控制多次ping测试的间隔时间默认为1秒,-i0.3可以提升ping的测试效率
#ping命令的-W选项,可以控制超时时间,默认一个主机无法ping通,需要等很长的超时时间,
#才会提示无法ping通,使用-W1,设置超时时间为1秒。
i=1
while [ $i -le 254 ]
do
     ping -c2 -i0.3 -W1 192.168.4.$i &>/dev/null
     if [ $? –eq 0 ];then
        echo "192.168.4.$i is up"
     else
        echo "192.168.4.$i is down"
     fi
     let i++
done

2. 测试192.168.4.0/24整个网段的连通性(for版本)

#!/bin/bash
#Author:丁丁历险(Jacob)
#定义for循环变量i,执行循环次数为254次,i从1循环到254
#每次循环对某一台目标主机测试ping的连通性,ping命令的语法格式参考前面的while版本
for i in {1..254}
do
     ping -c2 -i0.3 -W1 192.168.4.$i &>/dev/null
     if [ $? –eq 0 ];then
        echo "192.168.4.$i is up"
     else
        echo "192.168.4.$i is down"
     fi
done

3. 测试192.168.4.0/24整个网段的连通性(多进程版本)

#!/bin/bash
#Author:丁丁历险(Jacob)
#定义一个函数,ping某一台主机,并检测主机的存活状态,ping语法格式参考前面的while版本
myping(){
ping -c2 -i0.3 -W1 $1 &>/dev/null
if [ $? -eq 0 ];then
echo "$1 is up"
else
echo "$1 is down"
fi
}
for i in  {1..254}
do
     myping 192.168.4.$i &
done
#使用&符号,将执行的函数放入后台执行
#这样做的好处是不需要等待ping第一台主机的回应,就可以继续并发ping第二台主机,依次类推。

总结

以上所述是小编给大家介绍的shell脚本测试某网段内主机连通性,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • 本文向大家介绍shell脚本实现批量测试局域网主机是否在线,包括了shell脚本实现批量测试局域网主机是否在线的使用技巧和注意事项,需要的朋友参考一下 由于局域网内主机多,VLAN也多,为时常能知道在线主机的数量,编写脚本以查验在线主机。 效果是:主机在线显示绿色,主机离线显示红色结果。 用法:./ping IP段    例如:./ping 192.168.0

  • 问题内容: 多年来,我从事的几乎所有产品都涉及到一定程度的Shell脚本(或Windows上的批处理文件,PowerShell等)。即使我们使用Java或C ++编写了大量代码,但似乎总是存在一些集成或安装任务,而这些任务或任务可以通过Shell脚本更好地完成。 因此,shell脚本成为附带代码的一部分,因此需要像已编译的代码一样进行测试。有没有人对其中的一些shell脚本单元测试框架有经验,例如

  • 本文向大家介绍Shell脚本实现检测某ip网络畅通情况(含短信报警功能),包括了Shell脚本实现检测某ip网络畅通情况(含短信报警功能)的使用技巧和注意事项,需要的朋友参考一下 花了1天的时间写了一个检测某ip是否网络畅通的脚本,只检测网络是否畅通的功能很容易实现,但加了一些限制功能却不好实现。

  • 本文向大家介绍shell脚本自动检测网络掉线和自动重连,包括了shell脚本自动检测网络掉线和自动重连的使用技巧和注意事项,需要的朋友参考一下 在ppp移植成功后,有时会出现ppp掉线等情况。这篇文章写了一个自动检测连接网络的解决方法。 创建一个shell脚本,在里面添加一下内容。(记得给操作权限) 程序中加入了延时,是为了减少检测所占用的cpu资源。本脚本是一分钟检测一次网络状况。 当执行she

  • 本文向大家介绍java如何测试网络连通性,包括了java如何测试网络连通性的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了Java测试网络连通性的方法,供大家参考,具体内容如下 第一种方式:利用java运行时: Java代码 在windows平台上,上面代码没有为,ping ip 会结束,而在linux环境中ping命令,ping不通时, 会卡住,ping通,会不定的输出信息,考虑用

  • 终于到shell 脚本这章了,在以前笔者卖了好多关子说shell脚本怎么怎么重要,确实shell脚本在linux系统管理员的运维工作中非常非常重要。下面笔者就带你正式进入shell脚本的世界吧。 到现在为止,你明白什么是shell脚本吗?如果明白最好了,不明白也没有关系,相信随着学习的深入你就会越来越了解到底什么是shell脚本。首先它是一个脚本,并不能作为正式的编程语言。因为是跑在linux的s