Linux基本功系列之ping命令实战

这篇具有很好参考价值的文章主要介绍了Linux基本功系列之ping命令实战。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

linux长ping,# 1 - linux基本功-基础命令实战,linux,服务器,运维,bash

前言🚀🚀🚀
想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。
💓 知识最重要的是记忆
💓 入门须知: 想要人生从容,必须全力以赴,努力才是你最终的入场券🚀🚀🚀
💕 最后: 努力成长自己,愿我们都能在看不到的地方闪闪发光 ,一起加油进步🍺🍺🍺

一. 命令介绍

ping命令用来测试主机之间网络的连通性,通过发送Internet控制消息协议(ICMP)回响请求消息来验证与另一台TCP/IP计算机的IP级连接.

用途: 发送一个回送信号请求给网络主机,根据发送回的信号来判断网络的连通性

  • 确定网络和各个外部主机的状态。
  • 跟踪和隔离硬件与软件问题。
  • 测试、评估和管理网络。

ping 命令每秒发送一个数据包并且为每个接收到的响应显示一行输出。ping 命令计算信号往返时间和(信息)包丢失情况的统计信息,并且在完成之后显示一个简要总结。

Ping 命令将在程序超时或收到 SIGINT 信号时完成。Host 参数是有效主机名或因特网地址。

缺省情况下,ping 命令继续将回传请求发送到屏幕,直至接收到中断信号 (Ctrl-C)。由于连续的回传请求会增加系统的负载,所以重复的请求必须主要用于问题确定。

二. 语法格式及常用选项

可以使用man ping 来查看相关的参数信息


       -c     count   在发送(和接收)了正好数量为   count   的回显应答分组后停止操作。在发送了           count
              个分组后没有收到任何分组的特别情况是发送导致了终止(选程主机或网关不可达)-d     在所用的套接字上使用 SO_DEBUG 选项。

       -f     以高速方式来作 
                                                                            ping
              。以分组返回的速度来输出其它分组或每秒输出百次。当收到每个回显应答并打印一个退格符时,对每
个回显请求都打印一个句点``.''。这可以快速显示出丢弃了多少个分组,只有超级用户可以用这个选项。这(操作)对
网络要求非常苛刻,应该慎重使用。

       -i     wait                              在发送每个分组时等待                                wait
              个秒数。缺省值为每个分组等待一秒。此选项与-f选项不能同时使用。
       -l     preload              如果指定              preload              ,那么                      ping
              程序在开始正常运行模式前尽可能快地发送分组。同样只有超级用户可以用这个选项。

       -n     只以数字形式输出信息。这样就不尝试去查找主机名了。

       -p     pattern
              可以指定最多16个填充字节用于保持分组长度为16的整数倍。在网络上诊断与数据相关问题时此选项很有用。
              例如``-p ff''将使发出的分组都用全1填充数据区。

       -q     静态输出。在程序启动和结束时只显示摘要行。

       -R     记录路由。在回显请求分组中包含记录路由选项并在相应的分组返回时显示路由缓冲区。注意IP首部的容量只能存放9条这样的
              路由。很多主机

        -r     在所连接的网络上旁路正常的选路表,直接向主机发送分组。如果主机未处于直接相连的网络上,那么返回一个错误。此选项可用来通过无路由接口对一台主机进行检测(例如当接口已被
              routed 程序丢弃后)-s     packetsize   指定要发送数据的字节量。缺省值为   56   ,这正好在添加了   8   字节的  ICMP
              首部后组装成 64 字节的 ICMP 数据报。

       -v     详细模式输出。打印接收到的回显应答以外的 ICMP 分组。

       -w     waitsecs 在 waitsecs 秒后停止 ping 程序的执行。当试图检测不可达主机时此选项很有用。

参数简化版:

  • -d:使用Socket的SO_DEBUG功能;
  • -c<完成次数>:设置完成要求回应的次数;
  • -f:极限检测;
  • -i<间隔秒数>:指定收发信息的间隔时间;
    –I<网络界面>:使用指定的网络界面送出数据包;
  • -l<前置载入>:设置在送出要求信息之前,先行发出的数据包;
  • -n:只输出数值;
  • -p<范本样式>:设置填满数据包的范本样式;
  • -q:不显示指令执行过程,开头和结尾的相关信息除外;
  • -r:忽略普通的Routing Table,直接将数据包送到远端主机上;
  • -R:记录路由过程;
  • -s<数据包大小>:设置数据包的大小;
  • -t<存活数值>:设置存活数值TTL的大小;
  • -v:详细显示指令的执行过程。
  • -w<超时秒数>:无论之前发送或接受了多少包,只要超过此秒数,程序退出;

三. 参考案例

3.1 测试本机与指定网站服务器之间的网络连通性

linux中的ping命令无法自己停止,需要手动按下ctrl+c组件按键命令来停止ping

此时,无需加任何参数,直接在ping后面加上IP或者网址

root@mufenggrow ~]# ping www.baidu.com
PING www.baidu.com (110.242.68.4) 56(84) bytes of data.
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=1 ttl=52 time=25.1 ms
^C
--- www.baidu.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 25.181/25.181/25.181/0.000 ms
[root@mufenggrow ~]# 

也可以直接ping IP地址:
linux长ping,# 1 - linux基本功-基础命令实战,linux,服务器,运维,bash

这里面的几个参数:

  • icmp_seq=1  ping序列,从1开始;
  • bytes值: 数据包大小,也就是字节。
  • time值:响应时间,这个时间越小,说明你连接这个地址速度越快。
  • TTL值:Time To Live,表示DNS记录在DNS服务器上存在的时间,它是IP协议包的一个值,告诉路由器该数据包何时需要被丢弃。

拓展:

TTL就是说ping的数 据包 能在网络上存在多少时间。

当我们对网络上的主机进行ping操作的时候,我们本地机器会发出一个数据包,数据包经过一定数量的路由器传送到目的主机,但是由于很多的原因,一些数据包不能正常传送到目的主机,那如果不给这些数据包一个生存时间的话,这些数据包会一直在网络上传送,导致网络开销的增大。
当数据包传送到一个路由器之后,TTL就自动减1,如果减到0了还是没有传送到目的主机,那么就自动丢失。

  • rtt min/avg/max/mdev 表示最小/最大、平均响应时间和本机硬件耗费时间

3.2 指定ping的次数

-c 参数可以用来指定ping的次数

[root@mufenggrow ~]# ping -c 3 www.baidu.com
PING www.baidu.com (110.242.68.4) 56(84) bytes of data.
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=1 ttl=52 time=25.4 ms
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=2 ttl=52 time=25.5 ms
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=3 ttl=52 time=25.9 ms

--- www.baidu.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 25.411/25.633/25.906/0.205 ms

3.3 指定时间间隔和次数

这里会用到两个参数
-i 时间间隔参数,也就是发送周期
-c ping的次数

[root@mufenggrow ~]# ping -c1 -i 0.3 www.baidu.com
PING www.a.shifen.com (110.242.68.4) 56(84) bytes of data.
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=1 ttl=52 time=25.4 ms

--- www.a.shifen.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 25.407/25.407/25.407/0.000 ms


3.4 设置TTL为255

-t参数可以设置存活数值TTL大小为255, 这里我们一并用上 -c 发送周期为3秒, -s设置发送包为1024

[root@mufenggrow ~]# ping -c 3  -i 0.3 -s 1024 -t 255 192.168.1.101
PING 192.168.1.101 (192.168.1.101) 1024(1052) bytes of data.
1032 bytes from 192.168.1.101: icmp_seq=1 ttl=64 time=0.029 ms
1032 bytes from 192.168.1.101: icmp_seq=2 ttl=64 time=0.060 ms
1032 bytes from 192.168.1.101: icmp_seq=3 ttl=64 time=0.028 ms

--- 192.168.1.101 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 600ms
rtt min/avg/max/mdev = 0.028/0.039/0.060/0.014 ms

3.5 极快速的测试使用大包ping

以最快的速度,使用最大的包进行ping,一般用于测试目标主机的承压能力测试。
说到这不得不提中国黑客教父,当年在中美黑客大战中一战成名,最大的本事就是号召中国网民,ping TN官网。

这里用到两个参数一个是-f: 极限检测,快速连续ping一台主机,ping的速度达到100次每秒。
另一个是: -s 指定每次ping发送的数据字节数,但不能大于65535,所以linux最大值为65507

[root@mufenggrow ~]# ping -f -s 65507 192.168.1.101
PING 192.168.1.101 (192.168.1.101) 65507(65535) bytes of data.
^C 
--- 192.168.1.101 ping statistics ---
372312 packets transmitted, 372312 received, 0% packet loss, time 19675ms
rtt min/avg/max/mdev = 0.012/0.015/2.202/0.012 ms, ipg/ewma 0.052/0.016 ms
[root@mufenggrow ~]# 

四. 使用ping命令常见问题

【常见问题分析】

在ping的过程中,经常会遇到以下的情况,我们根据情况的反馈来判断具体的问题。

  1. No Answer: ,对方主机没工作,双方网络配置不正确,路由问题等。

  2. Request Time Out: 对方主机已关机,路由问题或对端防火墙设置禁止ping

  3. Destination Net Unreachable: 双方没有建立连接,或对方主机不存在

  4. Unknown Host Name: DNS设置问题,或者对方主机不存在

  5. transmit failed,error code: 网卡驱动问题

  6. Bad IP Address: IP地址不存在或IP不能被DNS服务器解析

7.pining 127.0.0.1 如果ping不通,表明本地机TCP/IP协议不能正常工作

  1. no rout to host 网卡工作不正常

使用ping来辅助判断网络的连通性

总结

我们经常用ping命令来判断主机是否在线,网络是否连通, 在脚本中也经常会用到ping命令,目前用的最多的参数就是 -c -i -w 这几个参数。

💕💕💕 好啦,这就是今天要分享给大家的全部内容了,我们下期再见!✨ ✨ ✨
🍻🍻🍻如果你喜欢的话,就不要吝惜你的一键三连了~

冲冲冲

linux长ping,# 1 - linux基本功-基础命令实战,linux,服务器,运维,bash文章来源地址https://www.toymoban.com/news/detail-786336.html

到了这里,关于Linux基本功系列之ping命令实战的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • linux基本功之列之wget命令实战

    大家好,又见面了,我是沐风晓月,本文是专栏【linux基本功-基础命令实战】的第56篇文章。 专栏地址:[linux基本功-基础命令专栏] , 此专栏是沐风晓月对Linux常用命令的汇总,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。 如果文章有什么需要改进的地方还请

    2024年02月02日
    浏览(46)
  • linux基本功之历史记录history命令实战

    💓 想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。 💓 只要地球不爆炸,我们永远不放假,只要宇宙不重启,我们永远不

    2024年02月08日
    浏览(61)
  • linux基本功之fsck命令详解

    💓 大家好,我是沐风晓月,双一流院校英语+计算机双专业在读; 💓 想要学好Linux,命令是基本功,企业中常用的命令大约200多个,不管是写shell脚本还是管理操作系统,最常用的命令必须要牢牢掌握,像我们以前学乘法口诀一样,烂熟于心,唯有如此,才能打牢基础。 💓

    2024年02月06日
    浏览(62)
  • 【Linux技术专题】「夯实基本功系列」带你一同学习和实践操作Linux服务器必学的Shell指令(排查问题指令 - 上)

    在线上排查问题时,查询日志、查看系统配置和分析操作系统信息是至关重要的。这些操作可以帮助我们深入了解软件和服务的兼容性,并解决潜在的问题。在本次学习中,我们将介绍并深入学习一些我在处理类似问题时常用的指令。通过掌握这些指令,你将能够更加高效地

    2024年01月16日
    浏览(59)
  • 苦练基本功——数据仓库

    🌿 最近在复习一些数据仓库和维度建模的知识,之前博客也写过,那就一起整理一下,对往期内容感兴趣的同学可以参考👇: 链接: 数据仓库入门. 链接: 大数据之维度建模中的重要概念. 🌰 废话不多说,让我们开始今日份的学习吧。   数据技术是指通过使用计算机和相

    2024年02月02日
    浏览(43)
  • python爬虫基本功(一)--初识python爬虫与爬虫学习路径

    大家好,这里是Kaiser。👏👏今天想给大家介绍下python爬虫的知识,我将与大家一起去揭开python爬虫的神秘面纱,字不多敲,让我们进入今天的主题:初识python爬虫。 爬虫,又被称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动的抓取万维网信息的程序或脚本,是搜

    2024年02月16日
    浏览(51)
  • 用vue实现列表的增删改查基本功能(简单易懂)

    目录 文章目录 前言 一、安装vue 二、使用vue 三、相关代码 四、效果图如下 随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可供参考 vue开发文档参考

    2024年02月11日
    浏览(42)
  • 前端基本功 用 React Hooks + Antd 实现一个 Todo-List

    To-do list(待办事项列表)是用来记录和管理要完成的任务、活动或项目的列表。它是一种简单而常见的工具,用于帮助人们组织和安排日常生活中的任务。每当您有一项任务需要完成或者要记住某些事情时,您可以将它添加到待办事项列表中。 学习前端的一些新知识时,经

    2024年02月17日
    浏览(37)
  • 【MySQL】MySQL触发器入门宝典,助力MySQL初学者打下基本功

    🧑‍💻作者名称:DaenCode 🎤作者简介:啥技术都喜欢捣鼓捣鼓,喜欢分享技术、经验、生活。 😎人生感悟:尝尽人生百味,方知世间冷暖。 📖所属专栏:重温MySQL 在MySQL数据库中,大家都听过触发器。对于MySQL初学者而言,理解触发器的概念和应用是非常重要的。本文主

    2024年02月15日
    浏览(49)
  • 3年经验来面试20K的测试岗,连基本功都不会,还不如去招应届生

    为了新项目做准备,这段时间公司面了不少人,竟然没有一个满意的。一开始瞄准的就是中高级的水准,也没指望来技术大牛,提供的薪资在15-25K,面试的人很多,但结果让人失望。 从简历上来说都是3-4年工作经验,但面试中,不会工具方法和编程框架,基本功的技术很多也

    2024年04月24日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包