简介
- PING(Pack Internet Grope),因特网包探索器,用于测试网络连接的程序。ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。
- ping指的是端到端连通,通常用来作为可用性检查,但是某些病毒木马会强行大量远程执行ping命令抢占网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。
- 如果打开IE浏览器访问网站失败,可以通过ping命令测试下到Internet的网络连通,可以排除网络故障提供线索,下面展示ping命令返回的消息以及分析其原因。
ping命令的结果
- 如图:
- 从上到下可以看出,sent和received代表发送和接受了四个数据包,lost代表丢包率为0,四个数据包正常往返。
- minimum代表最小时间32ms,maximum代表最大时间为33ms,average表示平均时间32ms。
- 也可以通过在后缀加上 -t 来让电脑一直执行ping命令,如图
- 可以看到,如果ctrl+c退出的话,电脑就会一直向百度发送ping命令。
使用ping命令进行基础的网络排错
可以通过ping命令看出网络中在哪一段出了问题,如图,简单介绍下网络通信的全过程。
首先,企业内的电脑(192.168.1.2),通过一个交换机和一个路由器(192.168.1.1)组成一个企业内网,保持企业之间的内网通信。然后本地路由器(111.12.11.2)与一个出口路由器(111.12.11.1)相连,接入到互联网,也就是外网中。然后找到服务器所在的入口路由器(42.2.12.1),通过路由器(42.2.12.2)进入服务器内网访问相关的服务器(219.148.32.148与219.148.38.132)
在整个网络中,如果自己的电脑无法访问服务器,可以使用ping命令来查看网络在哪一段出了问题。
先使用ping来检查自己的电脑是否工作正常,使用ping 127.0.0.1,如图
127.0.0.1是本地环回地址,也就是代表主机自己,ping自己肯定可以ping的通。如果能通,代表计算机的TCP/IP协议栈工作正常。自己的电脑没有任何问题。既然自己的电脑没有问题,那就继续检查主机到电脑网关这一段能不能通。
排查网关的通畅情况,首先ping 192.168.1.1,如果能通代表主机到网关可以通。
ping 192.168.1.1
网关通畅,说明企业内网是正常运行的。
接下来继续使用ping命令检查是否可以访问出口网关
ping111.12.11.2和111.12.11.1如果能通表明计算机到出口路由器没有问题。
ping 111.12.11.2
ping 111.12.11.1
最后就是ping到服务器机房的这段地址了,总会检查出来是哪一段出了问题。
整个过程卡在哪一段,就去检查哪一段的相关设备即可。
如何查找ping命令所经过的路由器的IP地址
可以使用ping 目的地址 -i 1这条命令来查找所经过的路由器IP地址。比如:
ping 目的地址 -i 1
可以看到,ping baidu.com -i 1,这条命令,被192.168.1.1返回,所以第一台路由器的地址就是192.168.1.1。再比如
可以看出,所经过的第二台路由器为110.64.0.1。
tracert命令
ping命令并不能跟踪从源地址到目标地址沿途经过了哪些路由器,windows操作系统中的tracert命令是路由跟踪使用程序,用于确定IP数据包访问目标路径,能够帮助我们发现达到目标网络到底是哪一条链路出现了故障。tracert命令就是ping命令的扩展,用IP报文生存时间(TTL)字段和ICMP差错报文来确定沿途经过的路由器。如图
tracert命令的工作原理,其实就是无数的ping命令的组合,只不过tracert命令会把发出去的报文跳数设置为1,2,3,4,5……以此来返回所经过的路由器的端口地址。,如图:
可以看到有的端口信息并没有获得,用*代替,原因是有的路由器它会禁止icmp数据包的发送,以此来实现网络安全。
总的来说,tracert命令得到所经过路由器端口的地址,可以用多个ping命令来实现,简化了多次ping的步骤,但是比较耗时。
pathping命令
pathping是一个基于TCP/IP的命令行工具,该命令不但可以跟踪数据包从源主机到目标主机所经过的路径,还可以统计计算机网络延时以及丢包率,帮助我们解决网络问题,跟踪数据包路径的原理和tracert一样。
可以看到,pathping命令比tracert的功能更加齐备,它还可以统计丢包率。
综上
使用ping,tracert,pathping命令可以检查出来网络出问题的是哪一部分,来实现基于网络层的网络故障诊断。