如何做网站优化并快速提高权重,免费建设视频网站,网站关键词不收录,国家公示企业信息查询系统一前言最近看到许多同志在写ping某个地址段的bash脚本#xff0c;我也心血来潮来了一发。 当然本人新手#xff0c;大神勿喷。二准备工作linux系统的机器一台#xff0c;当然虚拟机也可以#xff0c;只要将网卡配置为桥接模式#xff0c;可以连通其他局域网的主机即可。1…一前言最近看到许多同志在写ping某个地址段的bash脚本我也心血来潮来了一发。 当然本人新手大神勿喷。二准备工作linux系统的机器一台当然虚拟机也可以只要将网卡配置为桥接模式可以连通其他局域网的主机即可。1.实验环境 Centos 7.X 虚拟机 软件 bash ping2.说明 首先系统当然是任何 linux类或类linux的机器都是可以的 虚拟机安装完成后首先配置网卡BOOTPROTO 我这里使用的是静态的IP地址当然你也可以使用静态ipONBOOT 是否启用网卡 改为yes不然重启机器后网卡又失效了IPADDR 我这里是使用的静态IP如果你的BOOTPROTO使用的是dhcp可以不用改这里PREFIX 子网掩码的位数我这里使用的是172.18.0.0网段所以子网掩码是16位如果你的BOOTPROTO使用的是dhcp可以不用改这里GATEWAY 默认网段不多解释如果你的BOOTPROTO使用的是dhcp可以不用改这里DNS1 DNS地址用来解析域名的如果你没设好吧你无法登陆www.baidu.com了除非你知道他的IP地址3.查看命令是否存在man了一下ping命令查看一下具体用法 由man可以得知 -c是指定ping的次数 -W指定超时时间 好的开始三脚本为了能让各位安全使用我已经做了多次的测试 可能还有小bug欢迎致电脚本的内容如下#!/bin/bash#Auther:xiaowu#Dtion:ping dao ni#Vsion:2.3declare -i Inetdeclare -i Snet[[ $1 ~ ([0-9]{1,3}\.){3}([0-9]{1,3})\/(2[4-9]|3[0-2]) ]] #正则表达式验证是否为正确格式if [ $? -ne 0 ] ;then #判断格式是否配正确匹配{echo ” Usage:$0 172.18.0.0/24-32.” #如果格式未被正确匹配返回250状态码并提示使用方法exit 250}fiInetecho “$1″ | cut -d”.” -f4 | cut -d”/” -f1 #获取Ip地址位Isegecho “$1″ | cut -d”/” -f2 #获取子网掩码位Ipv4echo “$1″ | cut -d”.” -f1,2,3 #获取主机位echo “子网掩码的位数为$Iseg” #输出子网掩码echo “Ipv4的首个地址为$Inet” #输出网络地址位echo “查看的网段地址为$Ipv4” #输出匹配的网络位let Smask32-$Iseg #计算子网掩码反掩码位数echo “反向子网掩码位为$Smask” #输出反掩码位数Sips$[2**$Smask] #计算出指定网络的IP数echo “要查找的地址数为$Sips” #输出主机个数Snet$[ $Inet $Sips -1 ] #从指定主机数到输出的主机个数if [ $Snet -gt 255 ] ;then #当地址数溢出时的补救措施{Snet255 #主机数强制为255个}fifor i in seq $Inet $Snet; #for循环从指定主机开始到指定网段结束的IP个数doping -c1 -W1 $Ipv4.$i /dev/null 21 echo -e “\033[32m$Ipv4.$i is \tup \033[0m” || echo -e “$Ipv4.$i is\033[31m \tdown \033[0m”#ping 判断主机是在线还是 不在线doneunset Inet Iseq Ipv4 wjy Smask Sips Snet #释放上边使用到的变量使用方法 标准的IP地址/子网掩码的位数 譬如172.18.252.0/24 172.18.253.20/28 172.18.6.110/30主要是根据子网掩码来计算需要ping的主机个数 适用于经过子网掩码划分过的网络 最大支持/24 最多256个IP包括网络位地址和主机位地址注此脚本适用于任何网段 并不是仅限于172.18.0.0 因为作者是172.18.0.0网段的 所以没有用其他的网段测试原创文章作者wode如若转载请注明出处http://www.178linux.com/70381