ping命令应用
ping命令
ping是一个使用频率极高的ICMP协议程序,一般情况下用ping命令诊断网络故障或者检验网络运行情况,可以判断网络基本连通性和配置参数(网络接口层,网卡,调制解调器的输入输出线路,电缆和路由器)有没有问题,和怎么去查找问题。在默认情况下,一般都是只发送四个32字节数据包,通过这个命令从数据包返回的最短时间、最长时间、平均时间可以衡量网络速度、延迟,从丢失率可以衡量网络的稳定性。
ping /?
ping命令使用帮助;
(1)ping 127.0.0.1
检查本地TCP/IP协议的安装或则运行是否存在某些最基本的问题。这是回路测试ip,ping回路测试ip时,命令被发送到本地的计算机的ip协议软件。
(2)ping localhost
localhost是网络保留名,代表计算机本身。是127.0.0.1的别名,每台计算机都能将该名字转换成该ip地址。因此,如果使用该命令没有收到应答,表示主机文件(/windows/host)存在问题;
(3)ping 本机ip
用于检测本地主机网卡和调制解调器(猫)是否有问题。
查看自己IP可在cmd命令界面输入ipconfig,ipv4地址为本地的ip地址
(4)ping 局域网内其他ip
检测同网段主机间网络线路是否出现故障。该命令会经过网卡和网线发送到目的计算机,再返回。收到回送应答表明本地网络中的网卡和载体运行正常,如果收到0个回送应答,那么表示子网掩码不正确或者网卡配置错误或者网线有问题;若网络中还包含有路由器,则应先Ping路由器在本网段端口的IP,不通则此段线路有问题,通则再PING路由器在目标计算机所在网段的端口IP,不通则是路由出现故障,通则再Ping目的机IP地址。
要查看同网段正在使用的ip可以在cmd命令窗口输入for /L %i IN (1,1,254) DO ping -w 2 -n 1 10.34.0.%i
(注意:我这里的10.34.0.*是根据自己电脑的ip网段来填写的)
等运行完毕再输入arp -a
(5)ping网关ip
检测局域网中的网关是否正常运行。
(6)ping远程ip
如果收到4个应答表示成功的配置了默认网关,对于拨号上网的用户表示能成功访问互联网(不排除ISP的DNS会有问题)。
(7)ping 某个域名
这个命令通常是通过DNS服务器解析IP地址并返回应答。如果没有收到应答,表示DNS服务器的ip地址配置不正确或者DNS服务器有故障(对于拨号上网用户,某些ISP已经不需要设置DNS服务器了)。我们也可以利用该命令实现域名对ip地址的准换功能,查看域名对应的IP地址。
如果以上ping命令都能正常运行,表示计算机进行本地和远程通信的功能都基本没有问题,但是并不表示所有网络配置都没有问题,例如某些子码掩网的错误就检测不出来。
电脑突然连接不上网络诊断顺序
1.ping 127.0.0.1 先检查TCP/IP协议栈是否正常。
2.ping 本地ip 检查你网卡是否工作正常。
3.ping 网关地址 检查和网关连接性。
4.ping 远程网站 检查远程连接
ping命令返回信息分析
1.Request timed out(请求超时)
(1)对方已关机或者网络上没有这个地址
(2)对方与自己不在同一个网段内,通过路由也无法找到对方
(3)对方存在但是设置了ICMP数据包过滤屏蔽(如防火墙设置)
怎么知道对方是存在还是不存在呢?可以用ping -a探测对方,如果能得到对方的NetBIOS名称,说明对方存在,但是有防火墙设置。如果得不到,多半是对方关机或者不存在,或不在同一个网段。
(4)网卡IP地址设置错误,如网卡手动设置出现问题。
2.Destination host Unreachable(目的主机不可达)
(1)对方和自己不在同一个网段内,而自己又没有设置默认的路由。
(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.TTL
可以通过ping返回的TTL值来判断数据报已经通过了多少个路由器。TTL的初值通常是对方系统的缺省值,每个操作系统可能不一样(但可以更改),是一个2的乘方数。那么源地点TTL的初始值减去返回时的TTL的值就是中间经过路由器的跳数。由于每个路由器至少要把TTL值减一,因此TTL通常表示包在被丢弃之前最多能经过的路由器个数。当计数到0时,路由器决定丢弃该包,并发送一个ICMP报文给最初的发送者。
例如,TTL返回值为51,那么我们可以推算数据报离开源地址的TTL初始值为64(2的6次方),所以从源地点到目的地点要通过13个路由网段(64—54)
另外TTL值还能帮我们分辨操作系统类型。例如
Unix及类Unix操作系统ICMP应答的TTL值一般为255;
Windows 2003/XP操作系统ICMP应答的TTL值一般为128;
Windows 7/8操作系统ICMP应答的TTL值一般为64;
Linux操作系统ICMP应答的TTL值一般为64;
MacOS/MacTCP操作系统ICMP应答的TTL值一般为60;
网络攻击者可以通过这种方式来判断别人的操作系统,以便于采用不同的策略来攻击。前提是这个初始值没有被更改过。