通过ping命令检测主机的存活性

author author     2022-09-14     347

关键词:


判断所有的业务系统中主机的存活性ping


问题描述:现在有一上线项目,用的环境为vsphere 虚拟化技术。由于不能随时判断各虚拟主机的存活性,保证业务系统的正常运行,现在需要编写一个脚本判断主机的存活性,将返回值与第三方短信平台进行对接


思路分析:


1、明确目的判断主机的存活性,可用ping 命令 ping各个虚拟机的IP进行判断


2、整个业务系统有多个虚拟IP,可用shell脚本中的for 循环


3、每隔一段时间执行循环一次,可用while循环 ,条件永远为真,时间间隔可用sleep


4、每个IP都ping 一定的次数,可在for循环中嵌套while循环


5、返回失败和成功的次数


6、最后进行判断,失败多少次,为异常


脚本编写

1.定义一个文件,用于存放业务系统中所有的IP


  vim  address

192.168.31.6

192.168.31.7

……


2.编写脚本


vim jcp.sh 


#!/bin/bash

while true

DATE=$(date "+%Y-%m-%d %H:%M:%S")

do


   for address in $(cat $1)

        do

        echo -en "ping $address……"

          i=1

          Pingtimes=10

          Result=5

          SuccessTimes=0

          FailureTimes=0

               while (($i <= $Pingtimes))

               do

               ping -c 5 -i 0.5 -t 5 $address > /dev/null 2>&1

                 if [ "$?" -eq "0" ];

                      then

                      SuccessTimes=$(($SuccessTimes+1))

                      echo "OK" && echo "$DATE  $address is up " >> address.txt

                else

                      FailureTimes=$(($FailureTimes+1))

                      echo "Failed" && echo "$DATE $address is down " >> address.txt

                fi

                i=$(($i+1))

                done

           echo "successtimes is $SuccessTimes"


           echo "failuretimes is $FailureTimes"


                if [ $FailureTimes -ge $Result ];

                    then

                    echo "$address is down"

                else

                    echo "$address is up"

                fi

        done

sleep 10s;

done


3.执行查看结果


  chmod +x jcp.sh


  ./jcp.sh address


 


本文出自 “92868888” 博客,转载请与作者联系!

linux检测网络连通情况的命令?

在Linux中,可以使用'ping命令会向指定的主机发送ICMP回显请求,并接收响应。如果主机响应了请求,则表示与该主机之间的网络连通性良好。例如,要检测主机192.168.1.1的网络连通性,可以使用以下命令:运行该命令后,系统... 查看详情

主机存活检测局域网主机存活检测端口检测(代码片段)

一、主机检测命令ping#!/bin/bash#****************************************************#Date:2020-06-25#Author:DamonYe#FileName:MailPing.sh#Description:Thetestscript#********************************************* 查看详情

ping命令详解(代码片段)

...ing192.168.1.9  开始;ctrl+c停止    ping命令通过ICMP(Inte 查看详情

linux上的ping命令是啥

Linuxping命令用于检测主机。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。语法:ping[-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络... 查看详情

24.ping命令检测远程主机是否可用

...g)reply信息,因而得知该主机运作正常。因此用户可以通过pi 查看详情

主机定位与网络诊断

...P访问网站很不方便,因此通常将域名与IP建立映射关系,通过域名访问与通过IP访问的效果具有一致性。  获取域名映射的IP地址:通过ping命令探测联通性时会返回域名映射的IP。使用该命令也用于判断与某主机的网络是... 查看详情

ping---测试主机之间网络的连通性(代码片段)

ping命令用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。 选项-d:使用Socket的SO_DEBUG功能;-c<完成次... 查看详情

ping命令

ping命令用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。语法ping(选项)(参数)选项-d:使用Socket的SO_DEBUG功能... 查看详情

linux里面ping-c2ip命令作用是啥?

在Linux中,PING是测试一个网络的连通信的,基本命令格式为ping[-dfnqrRv][-c<完成次数>][-i<间隔秒数>][-I<网络界面>][-l<前置载入>][-p<范本样式>][-s<数据包大小>][-t<存活数值>][主机名称或IP地址]根据此,... 查看详情

网络相关命令

1、ping命令检测当前主机与目标主机之间的连通性(不是100%准确,有的服务器禁ping)语法:ping 主机地址(域名、ip地址、主机名)该命令可以跨平台,在linux和windows下都可以使用,区别在于linux下一直发送,windows下只发送... 查看详情

10.9ping:测试主机之间网络的连通性(代码片段)

ping命令  可用于测试主机之间网络的连通性。执行ping命令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而可得知该主机运作正常。  ping命令的参数选项及说明 -c... 查看详情

ping命令研究报告

...)ping127.0.0.1  //测试tcp/ip协议安装是否正确,以下通过命令窗口输入得到的结果    (2)ping本地主机   //验证本机网卡是否正常工作,通过命令窗口可得   (3)ping本网段内的某个主机ip... 查看详情

蓝易云:linux系统ping命令–测试主机间网络连通性

ping命令是Linux系统中最常用的网络工具之一,它可以用来测试主机之间的网络连通性,检查网络延迟、丢包等信息。语法:ping[选项]目标主机常用的选项包括:-c:控制ping命令发送的ICMPECHO_REQUEST请求的次数。-i:控... 查看详情

ping命令可以通过哪个数值来推算数据包已经通过了多少路由器?

...)错误消息。因此,TTL字段的值可以用来推算数据包已经通过了多少路由器。例如,如果我们使用Ping命令测试一个目标主机,Ping命令的输出中显示TTL值为49,那么我们可以大致推算出,数据包已经经过了15个路由器(64-49=15),... 查看详情

主机扫描命令fping

作用:批量的给目标主机发送ping请求,测试主机的存活情况。特点:并行发送,结果易读。        fping可以同时ping很多台机器,另外一方面是结果易读,他可以很友好展示出ping10台或者100台主机的... 查看详情

ping

...能打开网页时会说“你先ping网关地址192.168.1.1试试”。它通过发送ICMPECHO_REQUEST数据包到网络主机(sendICMPECHO_REQUESTtonetworkhosts),并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机是否 查看详情

如何让linuxping通主机

...参数-c指定要求完成的回应次数。2、有些服务器为了防止通过ping探测到,通过防火墙设置了禁止ping或者在内核参数中禁止ping,这样就不能通过ping确定该主机是否还处于可连通状态。参考技术A修改VM里面的redhat虚拟机网络模式,... 查看详情

常用的9个网络命令

...回应答之间的时间量。如果应答时间短,表示数据报不必通过太多的路由器或网络,连接速度比较快。ping还能显示TTL(TimeToLive,生存时间)值,通过TTL值可以推算数据包通过了多少个路由器。(1)命令格式ping 主机名ping ... 查看详情