45fan.com - 路饭网

搜索: 您的位置主页 > 电脑频道 > 编程代码 > 阅读资讯:分享windows下ping命令知识大全!(5)

分享windows下ping命令知识大全!(5)

2015-02-12 11:16:12 来源:www.45fan.com 【

既然已经说到这里了,不妨顺便说说关于这两个ICMP命令的高级一点的东西。

首先是ping命令,其实ping有这样一个参数,可以无视操作系统默认TTL值而使用自己定义的值来发送ICMP Request包。

例如还是用那台Linux机器,用以下命令:

D:/Documents and Settings/hx>ping 61.152.104.40 -i 11

Pinging 61.152.104.40 with 32 bytes of data:

Reply from 61.152.104.40: bytes=32 time=10ms TTL=54

Reply from 61.152.104.40: bytes=32 time=13ms TTL=54

Reply from 61.152.104.40: bytes=32 time=10ms TTL=54

Reply from 61.152.104.40: bytes=32 time=13ms TTL=54

Ping statistics for 61.152.104.40:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

Minimum = 10ms, Maximum = 13ms, Average = 11ms

D:/Documents and Settings/hx>

这个命令我们定义了发包的TTL为11,而前面我们知道,我到这台服务器是要经过11个节点的,所以这个输出和以前没什么不同。现在再用这个试试看:

D:/Documents and Settings/hx>ping 61.152.104.40 -i 10

Pinging 61.152.104.40 with 32 bytes of data:

Reply from 61.152.99.94: TTL expired in transit.

Reply from 61.152.99.94: TTL expired in transit.

Reply from 61.152.99.94: TTL expired in transit.

Reply from 61.152.99.94: TTL expired in transit.

Ping statistics for 61.152.104.40:

Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

Approximate round trip times in milli-seconds:

Minimum = 0ms, Maximum = 0ms, Average = 0ms

D:/Documents and Settings/hx>

可以看到,结果不一样了,我定义了TTL为10来发包,结果是TTL expired in transit.就是说在到达服务器之前这个包的生命周期就结束了。注意看这句话前面的ip,这个ip恰好是我们前面tracert结果到服务器之前的最后1个ip,包的TTL就是在这里减少到0了,根据我们前面的讨论,当TTL减为0时设备会丢弃包并发送一个TTL过期的ICMP反馈给源地址,这里的结果就是最好的证明。

通过这里再次又证明了从我机器到服务器是经过了11个节点而不是70多个,呵呵。

最后再巩固一下知识,有人可能觉得tracer这个命令很神奇,可以发现一个包所经过的路由路径。其实这个命令的原理就在我们上面的讨论中。

想象一下,如果我给目的服务器发送一个TTL为1的包,结果会怎样?

根据前面的讨论,在包港出发的第一个节点,TTL就会减少为0,这时这个节点就会回应TTL失效的反馈,这个回应包含了设备本身的ip地址,这样我们就得到了路由路径的第一个节点的地址。

因此,我们继续发送TTL=2的包,也就受到第二个节点的TTL失效回应

依次类推,我们一个一个的发现,当最终返回的结果不是TTL失效而是ICMP Response的时候,我们的tracert也就结束了,就是这么简单。

顺便补一句ping命令还有个-n的参数指定要发包的数量,指定了这个数字就会按照你的要求来发包了而不是默认的4个包。如果使用-t参数的话,命令会一直发包直到你强行中止它

Ping的返回信息有"Request Timed Out"、"Destination Net Unreachable"和"Bad IP address"还有"Source quench received"。

"Request Timed Out"这个信息表示对方主机可以到达到TIME OUT,这种情况通常是为对方拒绝接收你发给它的数据包造成数据包丢失。大多数的原因可能是对方装有防火墙或已下线。

"Destination Net Unreachable"这个信息表示对方主机不存在或者没有跟对方建立连接。这里要说明一下"destination host unreachable"和"time out"的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其它原因不可到达,这时候会出现"time out",如果路由表中连到达目标的路由都没有,那就会出现"destination host unreachable"。

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

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


本文地址:http://www.45fan.com/bcdm/9618.html
Tags: ping命令
编辑:路饭网
相关文章列表
推广内容
推荐阅读
热门推荐
推荐文章
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部