ping 命令检索ping成功的数据包

脚本过滤ping通IP的数据包

1.问题描述:由于网络不稳定,导致业务系统中无法正常运行,经常有丢包的现象

2.需求:编写一个脚本,通过ping 命令发送一定数量的数据包,检索出成功与丢失的数据包的数量,来判断网络是否符合要求

3.思路:1)整个业务系统有多个IP,用fou 循环,用以取到不同的IP

2)对取到的IP进行ping ,过滤平通的包,对结果进行判断 并返回相应的值

3)每隔多长时间循环一次 sleep ,因此用到while循环 ,循环条件永远为真

4.编写脚本如下

脚本描述:对每个IP ping100 个数据包,成功ping通90个包,表名网络正常,并返回一定的值normal  否侧返回abnormal  每10秒循环一次

#!/bin/bash

while true

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

do

for address in $(cat $1)

do

echo -en "$DATE ping $address……"

Pingpacket=100

SuccessfullPackets=90

ping $address -c $Pingpacket -i 0.5 -t 5

ReceivedPacket=$(ping $address -c $Pingpacket -i 0.5 -t 5 | grep "received" | awk ‘{print $4}‘)

LossPacket=$(($Pingpacket - $ReceivedPacket))

if [ $ReceivedPacket -ge $SuccessfullPackets ];

then

echo "Ping altogether $Pingpacket bags, received $ReceivedPacket bags" && echo " $address is  normal "

else

echo "Ping altogether $Pingpacket bags, loss $LossPacket bags" && echo " $address is  abnormal "

fi

done

sleep 10s;

done

~

时间: 2024-08-28 15:15:55

ping 命令检索ping成功的数据包的相关文章

Linux命令(35):ping命令-向网络主机发送数据包

ping命令 功能说明 ping是最常用的网络连接命令,ping会向指定的网络主机发送特殊网络数据包IMCP ECHO_REQUEST.多数网络设备收到该数据包会做出回应,通过此方法即可难网络连接是否正常,用法如下: ping [参数] [主机名或IP] 常用参数 选项 说明 -c 发送指定数据包后停止 -s 指定发送的数据字节数,预设值是56 -t 设置存活数值TTL的大小 -i 设置秒数,每隔几秒发送一次数据包,默认是1秒 示例                     测试连接性 [[ema

记录关于ubuntu无线上网只能ping通5~7个数据包的问题

问题是这样的,我的笔记本(ubuntu desktop)连接上wifi后,信号很好,但是上网上不了,ping网关也不通,ping外网仅仅只有当笔记本刚刚连接上wifi的时候能ping通5至6个包,然后就再也不通了,打开浏览器也是如此,当且仅当笔记本刚刚连接上wifi的那么1两分钟能打开网页,然后就不行了. 很是奇怪,仔细看了一下,原来是因为我的笔记本以前在有线网卡eth0上配置了静态IP,但是现在并没有插网线,然而现在的无线网卡wlan1自动获取到的IP恰恰是跟eth0上配置的静态IP是同网段的

ping命令知识 Ping命令工作原理详解

在网络应用中,ping网速与IP地址等都是非常常用的命令,但大家知道ping命令的工作原理吗?要知道这其中的奥秘,我们有必要来看看Ping命令的工作过程到底是怎么样的.下面介绍下ping命令的详细知识. Ping命令的应用与原理 假定主机A的IP地址是192.168.1.1,主机B的IP地址是192.168.1.2,都在同一子网内,则当你在主机A上运行"Ping 192.168.1.2"后,都发生了些什么呢? 首先,Ping命令会构建一个固定格式的ICMP请求数据包,然后由ICMP协议

ping命令技巧详解 windows下ping命令知识大全

windows ping命令对于多数电脑爱好者都不会陌生,通过ping ip可以知道网络是否畅通或者网络传输质量如何等,是网络技术人员常用的检测网络命令,多数朋友对ping命令知道的并不多,接下来本文将与大家详细了解ping以及ping命令高级技巧等,如果觉得本文不错,记得收藏哦,或许今后有用到的时候!4m的网速是多少? 4m宽带下载速度是多少? ping的基本用法想必大家都会,可知不值到有关ping命令的高级用法呢?如下面的: Ping命令知识 Ping命令工作原理详解ping [-t] [-

每天一个linux命令(54):ping命令

Linux系统的ping命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”.不能打开网页时会说“你先ping网关地址192.168.1.1试试”.它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to network hosts),并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机是否可访问(但这不是绝对的).有些服务器为了防止通过ping探测到,通过防火墙设置了禁止ping

【转】每天一个linux命令(54):ping命令

原文网址:http://www.cnblogs.com/peida/archive/2013/03/06/2945407.html Linux系统的ping命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”.不能打开网页时会说“你先ping网关地址192.168.1.1试试”.它通过发送ICMP ECHO_REQUEST数据包到网络主机(send ICMP ECHO_REQUEST to network hosts),并显示响应情况,这样我们

ping命令--Linux命令应用大词典729个命令解读

内容来源于人民邮电出版社<Linux命令应用大词典> 讲述729个命令,1935个例子 学习Linux系统的参考书.案头书,遇到不懂的命令或命令选项一查即可 争取每天都发布内容 ping命令 使用ping命令可以用来测试与目标计算机之间的连通性.执行ping命令会使用ICMP传输协议发出要求回应的信息,如果远程主机的网络功能没有问题,就会回应该信息,因而得知该主机是否运作正常. 命令语法: ping [选项] [目标] 命令中各选项的含义如表所示. 表                     

ping命令和tracert命令

ping命令 当我们在使用ping命令测试网络是否连通的时候,输出的最后一项一般都是TTL=XX这样的形式,那么TTL到底代表什么呢?TTL是IP协议包中的一个值,它告诉网络路由器包在网络中的时间是否太长而应被丢弃.有很多原因使包在一定时间内不能被传递到目的地.例如,不正确的路由表可能导致包的无限循环.所以需要在包中设置这样一个值,包在每经过一个节点,将这个值减1,反复这样操作,最终可能造成两个结果:包在这个值还为正数的时候到达了目的地,或者是在经过一定数量的节点后,这个值减为了0.前者代表完成

linux 命令——54 ping(转)

Linux系统的ping 命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”.不能打开网页时会说“你先ping网关地 址192.168.1.1试试”.它通过发送ICMP ECHO_REQUEST数据包到网络主机 (send ICMP ECHO_REQUEST to network hosts),并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机 是否可访问(但这不是绝对的).有些服务器为了防止通过ping探测到,通过防火墙设置了禁止