ping, ping6 - send ICMP ECHO_REQUEST to network hosts

ping命令向网络主机发送ICMP回传请求

详细描述:

ping使用ICMP协议强制ECHO_REQUEST(回传请求)数据报从主机或网关获取ICMP协议的ECHO_RESPONSE(回传响应)。ECHO_REQUEST(回传请求)数据报(“ping”)有一个IP和ICMP头,之后是一个结构时间值,再之后是一个任意数量的“pad”字节,用于填充数据包。

语法:

ping [ -LRUbdfnqrvVaAB] [ -c count] [ -i interval] [ -l preload] [ -p pattern] [ -s packetsize] [ -t ttl] [ -w deadline] [ -F flowlabel] [-I interface] [ -M hint] [ -Q tos] [ -S sndbuf] [ -T timestamp option] [ -W timeout] [ hop ...] destination

参数:

  • -b 允许ping网关地址
  • -c count 发送count次ECHO_REQUEST(回传请求)数据包。当有deadline选项(最后期限,-w选项),在超时之前,ping等待ECHO_REPLY(回传响应)直到count次。
  • -d 在正在使用的socket(套接字)上设置SO_DEBUG选项。本质上,Linux内核不使用此套接字选项。
  • -f 大量ping,极限ping。每个ECHO_REQUEST(回传请求)打印一个点,每有一个ECHO_REPLY(回传响应)打印一个退格符(Backspace)。这样可以快速显示丢弃的数据包数量。如果没有给出间隔,它会将间隔设置为0,并按照它们返回或每秒百次的速度输出数据包,以多者为准。只有超级用户才可以0间隔使用此选项。
  • -i interval 发送每个数据包之间等待的间隔(单位秒)。默认设置是等待一秒,极限模式下不等待。只有超级用户可以设置间隔值小于0.2秒。
  • -I interfaceaddress 将源地址设置为指定的接口地址。参数可以是数字IP地址或设备名称。在ping IPv6 linklocal地址时,此选项是必需的。
  • -l preload 如果指定了preload,则ping发送许多不等待回复的数据包。只有超级用户可以选择超过3的预加载。
  • -n 仅限数字输出。不会尝试查找主机地址的符号名称
  • -p pattern 你可以指定最多16个“pad”字节来填充你发送的数据包。这对于诊断网络中的数据以来问题是有用的。例如-p ff将导致充满整个被发送包。
  • -q 静默输出。除启动和完成时的摘要行外,不显示任何内容
  • -r 绕过正常的路由表并直接发送到连接接口上的主机。如果主机不在直接连接的网络上,则返回错误。如果还是用了-I选项,则此选项可用于通过没有路由的接口ping本地主机。
  • -R 记录线路。包含ECHO_REQUEST数据包中的RECORD_ROUTE选项,并在返回的数据包上显示路由缓冲区。请注意,IP报头只能容纳9个这样的路由。许多主机忽略或放弃此选项。
  • -s packetsize 指定要发送的数据字节数。默认56,当与8字节的ICMP头数据组合时,转换为64个ICMP数据字节。
  • -t ttl 设置IP生存时间值(TTL)
  • -v 详细输出
  • -w deadline 指定一个以秒为单位的退出时间,不管ping退出之前发送或接收了多少数据包。在这种情况下,ping将一直发送数据包,直到deadline过期或count探针结束或一些来自网络的错误通知。   
    • 注释:这里的-w deadline选项的意思是ping命令的存活时间,而并非数据包的响应时间。

示例:

# ping网关
[root@oldboy etc]# ping 192.168.0.255
Do you want to ping broadcast? Then -b
[root@oldboy etc]# ping 192.168.0.255 -b
WARNING: pinging broadcast address
PING 192.168.0.255 (192.168.0.255) 56(84) bytes of data.
64 bytes from 192.168.0.100: icmp_seq=1 ttl=64 time=0.187 ms
64 bytes from 192.168.0.1: icmp_seq=1 ttl=64 time=8.57 ms (DUP!)
64 bytes from 192.168.0.100: icmp_seq=2 ttl=64 time=0.232 ms
64 bytes from 192.168.0.1: icmp_seq=2 ttl=64 time=5.73 ms (DUP!)
64 bytes from 192.168.0.100: icmp_seq=3 ttl=64 time=0.528 ms
64 bytes from 192.168.0.1: icmp_seq=3 ttl=64 time=6.80 ms (DUP!)
64 bytes from 192.168.0.100: icmp_seq=4 ttl=64 time=0.513 ms
64 bytes from 192.168.0.1: icmp_seq=4 ttl=64 time=40.4 ms (DUP!)
^C
--- 192.168.0.255 ping statistics ---
4 packets transmitted, 4 received, +4 duplicates, 0% packet loss, time 3295ms
rtt min/avg/max/mdev = 0.187/7.876/40.441/12.711 ms
[root@oldboy etc]# # ping指定次数
[root@oldboy etc]# ping -c 5 www.baidu.com
PING www.baidu.com (183.232.231.174) 56(84) bytes of data.
64 bytes from 183.232.231.174: icmp_seq=1 ttl=55 time=39.3 ms
64 bytes from 183.232.231.174: icmp_seq=2 ttl=55 time=38.2 ms
64 bytes from 183.232.231.174: icmp_seq=3 ttl=55 time=44.3 ms
64 bytes from 183.232.231.174: icmp_seq=4 ttl=55 time=50.3 ms
64 bytes from 183.232.231.174: icmp_seq=5 ttl=55 time=39.6 ms --- www.baidu.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 8149ms
rtt min/avg/max/mdev = 38.234/42.395/50.380/4.513 ms # ping指定时间间隔
[root@oldboy etc]# ping -c 5 -i 0.5 www.baidu.com
PING www.a.shifen.com (183.232.231.172) 56(84) bytes of data.
64 bytes from 183.232.231.172: icmp_seq=1 ttl=55 time=40.7 ms
64 bytes from 183.232.231.172: icmp_seq=2 ttl=55 time=38.4 ms
64 bytes from 183.232.231.172: icmp_seq=3 ttl=55 time=38.4 ms
64 bytes from 183.232.231.172: icmp_seq=4 ttl=55 time=42.1 ms
64 bytes from 183.232.231.172: icmp_seq=5 ttl=55 time=46.2 ms --- www.a.shifen.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 2065ms
rtt min/avg/max/mdev = 38.422/41.178/46.202/2.882 ms

【DNS域名解析命令】 ping的更多相关文章

  1. 【DNS域名解析命令】host

    host - DNS lookup utility host命令是常用的分析域名查询工具,可以用来测试域名系统工作是否正常. 语法: host [-aCdlnrsTwv] [-c class] [-N ...

  2. 【DNS域名解析命令】 nslookup

    1. nslookup作用 nslookup用于查询DNS的记录,查询域名解析是否正常,在网络故障时用来诊断网络问题 nslookup - query Internet name servers in ...

  3. 【DNS域名解析命令】 dig

    dig - DNS lookup utility dig 命令主要用来从 DNS 域名服务器查询主机地址信息. Dig (domain information groper 域名信息搜索)是一个灵活的 ...

  4. C++实现DNS域名解析

    一.概述 现在来搞定DNS域名解析,其实这是前面一篇文章C++实现Ping里面的遗留问题,要干的活是ping的过程中画红线的部分: cmd下域名解析的命令是nslookup,比如“nslookup w ...

  5. C++如何实现DNS域名解析<转>

    C++如何实现DNS域名解析 这片文章介绍了C++如何实现DNS域名解析,还有对相关技术的介绍,代码很详细,需要的朋友可以参考下   一.概述 现在来搞定DNS域名解析,其实这是前面一篇文章C++实现 ...

  6. DNS域名解析服务以及Bind服务程序

    一般来讲域名比IP地址更加的有含义.也更容易记住,所以通常用户更习惯输入域名来访问网络中的资源,但是计算机主机在互联网中只能通过IP识别对方主机,那么就需要DNS域名解析服务了. DNS域名解析服务( ...

  7. 查看DNS主机名解析的主机IP并向DNSserver进行DNS域名解析

    一.查看DNS主机名解析的主机IP host 命令 用途 把一个主机名解析到一个网际地址或把一个网际地址解析到一个主机名. 语法 host [-n [ -a ] [ -c Class] [ -d ] ...

  8. 几招教会你解决网站出现DNS域名解析错误的困扰!

    DNS解析就是把你的域名解析成一个ip地址,服务商提供的dns解析就是能够将你的域名解析成相应ip地址的主机.这就是DNS域名解析. DNS解析出现错误,一般是我们把一个域名解析成一个错误的IP地址, ...

  9. DNS域名解析服务(bind)

    DNS(Domain Name System,域名系统): 用于管理和解析域名与IP地址对应关系的技术. 简单来说,就是能够接受用户输入的域名或IP地址,然后自动查找与之匹配(或者说具有映射关系)的I ...

随机推荐

  1. IDEA运行报错 Error:java: 错误: 不支持发行版本 xx

    解决方案 修改项目配置,进入Project Setting,截图可参考下面的截图 1.修改全局设置 修改Project->Project Language Level->选择版本比当前jd ...

  2. 大数据hadoop安装

    hadoop集群搭建--CentOS部署Hadoop服务 在了解了Hadoop的相关知识后,接下来就是Hadoop环境的搭建,搭建Hadoop环境是正式学习大数据的开始,接下来就开始搭建环境!我们用到 ...

  3. flask开启调试的四种模式

    flask开启调试的四种模式 在app.run()中加一个参数, 'debug=True'就可以开启debug模式 from flask import Flask app = Flask(__name ...

  4. 【图机器学习】cs224w Lecture 7 - 节点的表示

    目录 Node Embedding Random Walk node2vec TransE Embedding Entire Graph Anonymous Walk Reference 转自本人:h ...

  5. Python高级特性-迭代器和生成器

    迭代器 Python中可迭代对象(iterable)通俗指可直接作用与For循环的数据对象,如Python中的集合数据类型,字符串(str),列表(list),元组(tuple),集合(set),字典 ...

  6. HAproxy 基础配置

    基础配置详解 HAProxy 的配置文件haproxy.cfg由两大部分组成,分别是global和proxies部分 global:全局配置段 进程及安全配置相关的参数性能调整相关参数Debug参数 ...

  7. C++实现双向循环链表

    本次博文是关于利用C++模板的方式实现的双向循环链表以及双向循环链表的基本操作,在之前的博文C++语言实现双向链表中,已经给大家分析了双向循环链表的结构,并以图示的方式给大家解释了双向循环链表的基本操 ...

  8. CentOS 7 yum安装 k8s 创建Pod一直处于ContainerCreating状态 问题解决

    问题描述 使用CentOS7的 yum 包管理器安装了 Kubernetes 集群,使用 kubectl 创建服务成功后,执行 kubectl get pods,发现AGE虽然在不断增加,但状态始终不 ...

  9. std::chrono计算程序运行时间

    void CalRunTime() { auto t1=std::chrono::steady_clock::now(); //run code auto t2=std::chrono::steady ...

  10. tcp长连接、短连接、连接池的思考

    在基于tcp的 rcp实现方式中,有如下几种选择: 1. 长连接:同步和异步方式. 同步方式下客户端所有请求共用同一连接,在获得连接后要对连接加锁,在读写结束后才解锁释放连接,性能低下,基本很少采用, ...