Ping 命令

一、Ping 命令

“Ping”命令是我们在判断网络故障常用的命令,但您真正明白这个命令运行后会发生什么,以及出现的各种信息说明了什么吗?其实熟练的掌握 Ping 命令的各种技巧可以帮助你解决很多网络故障。下面我们就来详细的了解一下 Ping 命令。

它是用来检查网络是否通畅或者网络连接速度的命令。作为一个生活在网络上的管理员或者黑客来说,ping 命令是第一个必须掌握的 DOS 命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标 IP 地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。下面就来看看它的一些常用的操作。先看看帮助吧,在 DOS 窗口中键入:ping /? 回车,出现如图1所示的帮助画面。
在这里插入图片描述

在此,我们只掌握一些基本的很有用的参数就可以了.
-t 表示将不间断向目标 IP 发送数据包,直到我们强迫其停止。试想,如果你使用 100M 的宽带接入,而目标 IP 是 56K 的小猫,那么要不了多久,目标 IP 就因为承受不了这么多的数据而掉线,呵呵,一次攻击就这么简单的实现了。
-l 定义发送数据包的大小,默认为 32字节,我们利用它可以最大定义到 65500字节。结合上面介绍的 -t 参数一起使用,会有更好的效果哦。
-n 定义向目标 IP 发送数据包的次数,默认为 3次。如果网络速度比较慢,3次对我们来说也浪费了不少时间,因为现在我们的目的仅仅是判断目标 IP 是否存在,那么就定义为 1次吧。说明一下,如果 -t 参数和 -n 参数一起使用,ping 命令就以放在后面的参数为标准,比如“ping IP -t -n 3”,虽然使用了 -t 参数,但并不是一直 ping 下去,而是只 ping 3次。另外,ping 命令不一定非得 ping IP,也可以直接 ping 主机域名,这样就可以得到主机的 IP。
下面我们举个例子来说明具体用法,如图2。
在这里插入图片描述
这里 time=2 表示从发出数据包到接受到返回数据包所用的时间是 2毫秒,从这里可以判断网络连接速度的大小 。从 TTL 的返回值可以初步判断被 ping 主机的操作系统,之所以说“初步判断”是因为这个值是可以修改的。这里 TTL=32 表示操作系统可能是 win98。

用这个命令时候 ping 192.168.1.1 -t
在这里插入图片描述

TTL(生存时间)

TTL 是 IP 协议包中的一个值,它告诉网络路由器包在网络中的时间是否太长而应被丢弃。有很多原因使包在一定时间内不能被传递到目的地。例如,不正确的路由表可能导致包的无限循环。一个解决方法就是在一段时间后丢弃这个包,然后给发送者一个报文,由发送者决定是否要重发。TTL 的初值通常是系统缺省值,是包头中的 8位的域。TTL 的最初设想是确定一个时间范围,超过此时间就把包丢弃。由于每个路由器都至少要把 TTL 域减一,TTL 通常表示包在被丢弃前最多能经过的路由器个数。当记数到0时,路由器决定丢弃该包,并发送一个 ICMP 报文给最初的发送者 。
TTL 时间越长,缓存时间越长,更新越不容易及时生效。增大 TTL 值,以节约域名解析时间,给网站访问加速。
TTL 设置的小一些,生效时间就会快一些。减小 TTL 值,减少更换空间时的不可访问时间。
System TTL Value
LINUX 64
WIN2K/NT 128
WINDOWS 32
UNIX 255

二、对Ping后返回信息的分析

  1. Request timed out——超时
    这是大家经常碰到的提示信息,很多文章中说这是对方机器置了过滤 ICMP 数据包,从上面工作过程来看,这是不完全正确的,至少有下几种情况。

(1) 对方已关机,或者网络上根本没有这个地址。
(2) 对方与自己不在同一网段内,通过路由也无法找到对方,但有时对方确实是存在的,当然不存在也是返回超时的信息。
(3) 对方确实存在,但设置了 ICMP 数据包过滤(比如防火墙设置)。
怎样知道对方是存在,还是不存在呢,可以用带参数 -a 的 ping 命令探测对方,如果能得到对方的 NETBIOS 名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。
(4) 错误设置 IP 地址
正常情况下,一台主机应该有一个网卡,一个 IP 地址,或多个网卡,多个 IP 地址(这些地址一定要处于不同的 IP 子网)。但如果一台电脑的“拨号网络适配 器”(相当于一块软网卡)的 TCP/IP 设置中,设置了一个与网卡 IP 地址处于同一子网的 IP 地址,这样,在 IP 层协议看来,这台主机就有两个不同的接口处于同一网段内。当从这台主机 ping 其他的机器时,会存在这样的问题:
主机不知道将数据包发到哪个网络接口,因为有两个网络接口都连接在同一网段。
主机不知道用哪个地址作为数据包的源地址。因此,从这台主机去 ping 其他机器,IP 层协议会无法处理,超时后,ping 就会给出一个“超时无应答”的错误信息提示。但从其他主机 ping 这台主机时,请求包从特定的网卡来,ICMP 只须简单地将目的、源地址互换,并更改一些标志即可,ICMP 应答包能顺利发出,其他主机也就能成功 ping 通这台机器了。

  1. Destination Host Unreachable——连不上

(1) 对方与自己不在同一网段内,而自己又未设置默认的路由。
(2) 网线出了故障。
这里要说明一下“destination host unreachable”和“time out”的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现“time out”,如果路由表中连到达目标的路由都没有,那就会出现“destination host unreachable”。

  1. Bad IP Address——IP有问题
    这个信息表示您可能没有连接到 DNS 服务器,所以无法解析这个 IP 地址,也可能是 IP 地址不存在。
    4.Source Quench Received——服务器忙
    这个信息比较特殊,它出现的机率很少。它表示对方或中途的服务器繁忙无法回应。
  2. Unknown Host——不知名主机
    这种出错信息的意思是,该远程主机的名字不能被域名服务器(DNS)转换成 IP 地址。故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障。
  3. No Answer——无响应
    这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的路由器没有工作;通信线路有故障;中心主机存在路由选择问题。
  4. ping 127.0.0.1:127.0.0.1是本地循环地址——TCP/IP 协议不工作
    如果本地址无法Ping通,则表明本地机 TCP/IP 协议不能正常工作。
  5. no rout to host——网卡工作不正常
  6. transmit failed, error code: 10043——网卡驱动不正常

猜你喜欢

转载自blog.csdn.net/weixin_38336546/article/details/82958281