目录

生产环境中, 网络是否稳定(网络时延)是一个很重要的指标. 为了方便检查网络时延的大小, 我们可以通过ping命令实现长时间的网络监控.

1 ping 命令的使用

1.1 常用参数

-i: 每次执行ping操作的间隔时间, 默认是1s;

-c: 执行ping操作的次数, 默认是一直执行, 除非被中断;

-s: 指定执行ping操作时发送的包的大小, 默认是56b, 添加报文头之后, 最终发送的是64b.

1.2 使用示例

# 在终端 ping 某个地址, 执行3次, 每次间隔2秒, 每次发送10kb的数据:

[root@localhost ~]# ping -c 3 -i 2 -s 10240 172.16.22.132

# 结果如下:

ping 172.16.22.132 (172.16.22.132) 10240(10268) bytes of data.

10248 bytes from 172.16.22.132: icmp_seq=1 ttl=64 time=0.294 ms

10248 bytes from 172.16.22.132: icmp_seq=2 ttl=64 time=0.383 ms

10248 bytes from 172.16.22.132: icmp_seq=3 ttl=64 time=0.391 ms

--- 172.16.22.132 ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 3999ms

rtt min/avg/max/mdev = 0.294/0.356/0.391/0.043 ms

2 通过脚本记录时间戳

很多时候, 我们除了监控网络时延的大小, 还想知道网络发生抖动时的具体时间 —— 可以将 ping 的结果通过管道进行处理.

为了方便后期查看, 也防止退出终端时命令被中断, 我们可以通过后台运行命令(脚本)的方式进行操作.

脚本内容如下:

#!/usr/bin/sh

# ping 86400次, 默认间隔1秒, 也就是24小时

ping -c 86400 -i 1 -s 10240 172.16.22.131 | awk '{ print $0"\t" strftime("%d_%h:%m:%s",systime()) }' > ping_result.log

注意: 只有当脚本运行结束(或被kill掉), awk命令 才会将结果输出到文件中.

为防止脚本被中断, 可以通过 nohup 令脚本在后台执行:

nohup sh long_ping.sh &

要结束后台进程, 可通过下述方式查找并kill:

[root@localhost ~]# ps aux | grep long

root 36538 0.0 0.0 113120 1344 pts/3 s 16:02 0:00 sh long_ping.sh

root 37451 0.0 0.0 112652 960 pts/3 s+ 16:03 0:00 grep --color=auto long

[root@localhost ~]# kill -9 36538

参考资料

版权声明

作者:

出处: 博客园

感谢阅读, 如果文章有帮助或启发到你, 点个[

linux ping 获取网络状态,Shell - 长 ping 脚本监控网络状态相关推荐

  1. 脚本监控网络状态,输出日志并归档(V2)

    脚本监控网络状态&日志归档整理(V2) 最近为检测***环境网络状态是否稳定,没有使用监控zabbix等监控工具,为方便快捷,使用脚本实现网络监控,并输出日志归档整理,方便后续排查. 在上次基 ...

  2. python脚本监控网站状态 - 赵海华_运维之路 - 51CTO技术博客

    python脚本监控网站状态 - 赵海华_运维之路 - 51CTO技术博客 python脚本监控网站状态 2013-01-09 09:21:02 标签:监控 python 原创作品,允许转载,转载时请 ...

  3. Linux日常运维管理技巧(一)监控系统状态、监控网卡流量、监控IO性能、查看系统进程、查看网络状态、Linux下抓包tcpdump、Linux网络相关、DNS配置

    目录 监控系统状态 监控网卡流量 监控IO性能 查看系统进程 查看网络状态 Linux下抓包 Linux网络相关 监控系统状态 w/uptime查看系统负载 [root@zyshanlinux-01 ...

  4. linux传奇私服文件包,分享:linux系统盘制作powershell的shell传奇私服脚本

    我编写了n个,linux 一键 安装 powershell 的shell脚本.貌似目前世界上,还没有类似的脚本项目. https://gitee.com/chuanjiao10/kasini3000_ ...

  5. 利用shell脚本监控网站状态

    首先需要有一个已开通飞信的手机号,并把接收警报短信的手机号加为飞信好友(也可以自己给自己发),调用飞信的免费短信接口发送报警短信,也可使用MSN报警,相对短信报警更及时. 编辑脚本http.sh vi ...

  6. Linux:9个实用shell运维脚本,值得收藏!

    1.Dos攻击防范(自动屏蔽攻击IP) #!/bin/bash DATE=$(date +%d/%b/%Y:%H:%M) LOG_FILE=/usr/local/nginx/logs/demo2.ac ...

  7. 网络执法官.P2P终结者等监控网络流量控制软件的原理和防范

    IP地址盗用是指盗用者使用未经授权的IP地址来配置网上的计算机.IP地址的盗用通常有以下两种方法: 一是单纯修改IP地址的盗用方法.如果用户在配置或修改配置时,使用的不是合法获得的IP地址,就形成了I ...

  8. linux获取目标主机shell,expect案例-批量获取主机并分发密钥

    2019年录制SHell新课地址 贴切企业脚本编写思路讲解,带你玩Shell脚本编程实战. 本套课程从实际项目案例出发,近100个Shell实例讲解,由浅入深,循序渐进,带你玩转Shell编程的方方面 ...

  9. linux变量符号生效规则,shell的变量功能

    shell的变量功能 一.什么是变量 变量是bash环境中非常重要的一个内容,那什么是变量呢?简单说就是让一某一个特定字符串来代表另一个比较复杂或者是容易变动的数据. 二.变量的显示与设置:echo ...

  10. 标杆徐linux云计算视频,标杆徐2018 Linux自动化运维系列④: Shell脚本自动化编程实战...

    2019年录制SHell新课地址 贴切企业脚本编写思路讲解,带你玩Shell脚本编程实战. 本套课程从实际项目案例出发,近100个Shell实例讲解,由浅入深,循序渐进,带你玩转Shell编程的方方面 ...

最新文章

  1. Android 使用java 代码获取res 里面的value 定义的数组
  2. nodejs 各种插件
  3. python爬取jsp网页_帮MM用python抓取index及一级目录下的所有符合要求的网页
  4. PHP 实现快速排序
  5. java 强制向上转型,Java 转型(向上或向下转型)详解及简单实例
  6. java 反射用法_Java 反射的概念与使用
  7. 在CentOS上安装NodeJS_v14.x
  8. 二叉搜索树-php实现 插入删除查找等操作
  9. vscode开发ExtJs安装插件以及破解方法
  10. 什么是医疗健康管理系统?
  11. 2019年税收分类编码_您如何在2019年学习编码
  12. jsplumb流程图demo
  13. 自建网盘教程之:使用可道云搭建私有云网盘,无需数据库
  14. Oracle中文乱码(中文变问号?)解决方法---简单粗暴高效
  15. 什么是数据库管理系统?
  16. python体重转换_Python第十二课 计算体脂率2.0
  17. 关闭极域电子教室学生端的各种方法
  18. LTE:下行峰值速率计算
  19. 软件开发行业,年轻与大龄程序员的生存现状究竟如何?
  20. Android实现仿制手机卫士的一键加速的百分框

热门文章

  1. 操作系统概念:系统引导过程、引导程序、固件
  2. 数据库系统概论重点总结
  3. Centos系统新建文本文档.txt
  4. 计算机科学与导论教案,计算机科学导论电子教案.ppt
  5. 计算机编码,二进制编码数字
  6. 记事本java代码_Java记事本源代码(完整).doc
  7. SQL5.5安装教程
  8. nested exception is org.apache.ibatis.executor.ExecutorException: No constructor found in com.chengg
  9. 《redis设计与实现(第二版)》
  10. 百花开放笑声甜_“开源萌宠”庆六一