ping命令

“p i n g”这个名字源于声纳定位操作。目的是为了测试另一台主机是否可达。该程序发送一份 I C M P回显请求报文给主机,并等待返回 I C M P回显应答
1.用 P i n g程序来确定网络问题出在哪里

2.P i n g程序还能测出到这台主机的往返时间,以表明该主机离我们有“多远”。
一台主机的可达性可能不只取决于I P层是否可达,还取决于使用何种协议以及端口号
Ping程序
称发送回显请求的 p i n g程序为客户,而称被 p i n g的主机为服务器。大多数的 T C P / I P实现都在内核中直接支持 P i n g服务器—这种服务器不是一个用户进程

对于其他类型的 I C M P查询报文,服务器必须响应标识符和序列号字段。另外,客户发送的选项数据必须回显,假设客户对这些信息都会感兴趣。

U n i x系统在实现p i n g程序时是把 I C M P报文中的标识符字段置成发送进程的 I D号。
序列号从0开始,每发送一次新的回显请求就加 1。 p i n g程序打印出返回的每个分组的序列号,允许我们查看是否有分组丢失、失序或重复。 I P是一种最好的数据报传递服务,因此这三个条件都有可能发生
当返回I C M P回显应答时,要打印出序列号和 T T L,并计算往返时间(T T L位于I P首部中的生存时间字段。)
 

Ping命令详解

ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j computer-list] | [-k computer-list] [-w timeout] destination-list

  -t Ping 指定的计算机直到中断。

  -a 将地址解析为计算机名。

  -n count 发送 count 指定的 ECHO 数据包数。默认值为 4。

  -l length 发送包含由 length 指定的数据量的 ECHO 数据包。默认为 32 字节;最大值是65,527。

  -f 在数据包中发送"不要分段"标志。数据包就不会被路由上的网关分段。

  -i ttl 将"生存时间"字段设置为 ttl 指定的值。

  -v tos 将"服务类型"字段设置为 tos 指定的值。

  -r count 在"记录路由"字段中记录传出和返回数据包的路由。count 可以指定最少 1 台,最多 9 台计算机。

  -s count 指定 count 指定的跃点数的时间戳。

  -j computer-list 利用 computer-list 指定的计算机列表路由数据包。连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为 9。

  -k computer-list 利用 computer-list 指定的计算机列表路由数据包。连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为 9。

  -w timeout 指定超时间隔,单位为毫秒。

  destination-list 指定要 ping 的远程计算机。

 

Ping命令测试网络连通

使用Ping检查连通性有五个步骤:

  1. 使用ipconfig /all观察本地网络设置是否正确,

  2. Ping 127.0.0.1,127.0.0.1 回送地址Ping回送地址是为了检查本地的TCP/IP协议有没有设置好;

  3. Ping本机IP地址,这样是为了检查本机的IP地址是否设置有误;

  4. Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)。

Ping命令来判断一条链路好坏

Ping这个命令除了可以检查网络的连通和检测故障以外,还有一个比较有趣的用途,那就是可以利用它的一些返回数据,来估算你跟某台主机之间的速度是多少字节每秒。

  "bytes=32"表示ICMP报文中有32个字节的测试数据,"time=4ms"是往返时间。Sent发送多个秒包、Received 收到多个回应包、Lost 丢弃了多少个Minmum 最小值、MAXimun 最大值、Average 平均值。所在图上来看,来回只用了4MS 时间,lost =0 即是丢包数为0,网络状态相当良好。(更详细可以使用-n参数 “ping –n 100IP地址”ping 100次。查看 Sent Received Lost Minmum MAXimun Average 这些值的变化。)

Ping后返回信息的分析

1.Request timed out

(1)对方已关机,或者网络上根本没有这个地址:比如在上图中主机A中PING 192.168.0.7,或者主机B关机了,在主机A中PING 192.168.0.5 都会得到超时的信息。

(2)对方与自己不在同一网段内,通过路由也无法找到对方,但有时对方确实是存在的,当然不存在也是返回超时的信息。

(3)对方确实存在,但设置了ICMP数据包过滤(比如防火墙设置)。

怎样知道对方是存在,还是不存在呢,可以用带参数 -a 的Ping命令探测对方,如果能得到对方的NETBIOS名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。

(4)错误设置IP地址

正常情况下,一台主机应该有一个网卡,一个IP地址,或多个网卡,多个IP地址(这些地址一定要处于不同的IP子网)。但如果一台电脑的“拨号网络适配器”(相当于一块软网卡)的TCP/IP设置中,设置了一个与网卡IP地址处于同一子网的IP地址,这样,在IP层协议看来,这台主机就有两个不同的接口处于同一网段内。当从这台主机Ping其他的机器时,会存在这样的问题

  A.主机不知道将数据包发到哪个网络接口,因为有两个网络接口都连接在同一网段。

  B.主机不知道用哪个地址作为数据包的源地址。因此,从这台主机去Ping其他机器,IP层协议会无法处理,超时后,Ping 就会给出一个“超时无应答”的错误信息提示。但从其他主机Ping这台主机时,请求包从特定的网卡来,ICMP只须简单地将目的、源地址互换,并更改一些标志即可,ICMP应答包能顺利发出,其他主机也就能成功Ping通这台机器了。

2.Destination host Unreachable

  (1)对方与自己不在同一网段内,而自己又未设置默认的路由,比如上例中A机中不设定默认的路由,运行Ping 192.168.0.1.4就会出现“Destination host Unreachable”。

  (2) 网线 出了故障

  这里要说明一下“destination host unreachable”和 “time out”的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现“time out”,如果路由表中连到达目标的路由都没有,那就会出现“destination host unreachable”。

3.Bad IP address

  这个信息表示您可能没有连接到DNS服务器,所以无法解析这个IP地址,也可能是IP地址不存在。

4.Source quench received

  这个信息比较特殊,它出现的机率很少。它表示对方或中途的服务器繁忙无法回应。

5.Unknown host——不知名主机

  这种出错信息的意思是,该远程主机的名字不能被域名服务器(DNS)转换成IP地址故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障

6.No answer——无响应

  这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的路由器没有工作;通信线路有故障;中心主机存在路由选择问题。

7.Ping 127.0.0.1:127.0.0.1是本地循环地址

  如果本地址无法Ping通,则表明本地机TCP/IP协议不能正常工作。

8.no rout to host:网卡工作不正常。

9.transmit failed ,error code:10043网卡驱动不正常。

10.unknown host name:DNS配置不正确

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值