Windows Server入门系列之十五 ping命令常用的参数

原标题:"Windows Server入门系列之十五 深入了解ping命令"的相关电脑教程资料分享。- 编程之家编辑整理。

1.基本用法


Ping用于测试网络是否连通,可以说是最常用的网络命令。


Ping命令利用ICMP协议进行工作,原理是在发送方主机上发送“echorequest”(回显请求)控制消息,接收方正确接收后即发回“echoreply”(回显应答)控制消息,从而判断出双方能否正常通信。


 

假设在A计算机上pingB,如果能ping通,在A计算机上显示的信息是从B计算机上返回来的。如果不能ping通,A计算机上显示的信息则是由系统产生的错误提示。


在Windows系统中,默认情况下,每次执行ping命令会发送4个ICMP“回显请求”(echorequest),每个数据包大小为32字节,如果一切正常,应能收到4个同样为32字节大小的ICMP“回显应答”(echoreply):


 


 

通过回显应答中的“time”,可以大致的推断出网速情况,数据传递经过的时间越长,网速越慢。

回显应答中的“TTL”,即数据包的生存周期。每个系统对其所发送的数据包都要赋一个TTL的初始值,默认情况下,WindowsXP系统为128,Win7系统为64,Linux系统为64或255(当然,系统的TTL值都是可以修改的)。另外因为数据包每经过一次路由,TTL值就要减1,所以通过TTL值,我们既可以大概地推算出对方主机所用的操作系统,又可以推断出在数据包在传送过程中经过了多少次路由。比如,执行命令“pingwww.baidu.com”,回显应答中显示的TTL值为52,则首先可以推断出对方使用的是Linux系统,其次可以得知数据在传送过程中经过了12次路由。

这点可以通过tracert命令进行验证,tracert也是一个利用ICMP协议的命令,它的原理非常巧妙:它向指定的目的主机发送多次回显请求消息,并把封装该消息的IP报文的TTL值从1开始递增。即tracert命令第一次发送出去的IP报文的TTL为1,这样该报文在经过第一个路由器时,TTL值便被减为了0,这台路由器就要向源主机发回一个回显应答消息,通过这种方式就获得了这台路由器的信息。通过这种递进的查询过程,查询端就可以追踪到达目的主机所经过的所有路由器的情况。

tracert命令的执行结果:


 

将PC机的默认网关删掉,再次ping172.16.1.10,此时则因为没有网关为其转发数据,所以显示错误提示“Destinationhostunreachable”。因而通过不同的错误提示,我们可以大致地判断出故障原因。


 


 

3.ping命令的防火墙设置

Ping命令利用ICMP协议工作,ICMP是一个比较复杂的协议,功能强大,也经常被黑客利用来攻击网络上的路由器和主机,互联网上的很多攻击方式都或多或少的用到了ICMP协议,所以目前的很多杀毒软件或防火墙都提供了禁用ICMP协议的功能。如Windows2003/XP系统中自带的防火墙就提供了这样的设置,如果两台安装Windows2003/XP系统的主机在网络正常连通的情况下无法彼此ping通,则可以检测在防火墙的ICMP设置中是否启用了“允许传入回显请求”,如果没启用该项功能,那么防火墙将过滤掉ICMP回显请求数据包,从而导致无法ping通。


 

或者我们也可以自己新建一条防火墙规则,以允许ping命令的数据包通过。

新建一条入站规则,规则类型选择“自定义”:


 

将规则应用于所有的本机IP和所有的远程IP:


 


 

这样,我们便自己创建好了一条防火墙规则,利用该规则同样可以使得ping命令的数据包通过。

 4.ping命令常用参数

参数可以对命令的功能进行扩展,Ping命令的参数比较多,常用的主要有以下几个:


(1)pingIP地址–t


连续不停对IP地址发送ICMP数据包,直到被用户以Ctrl+C中断。


如:ping192.168.1.1-t


(2)pingIP地址–n


自由指定所发送的ICMP数据包的个数,并且个数没有限制。


如:ping192.168.1.1–n10


(3)pingIP地址–ln


自由指定所发送的ICMP数据包的大小,上限为65500B。


如:ping192.168.1.1–l100

5.拒绝服务攻击

Ping命令的参数也可以组合使用,比如执行“pingIP地址–l65500–t”命令,就可以连续地向某一台主机发送最大数据包,这样就有可能使对方系统资源耗尽而死机或导致无法上网,所以这个命令也被称为“死亡之ping”。


死亡之ping是一种典型的DoS(DenialofService)攻击,即拒绝服务攻击。拒绝服务攻击以被攻击者的机器无法提供正常服务为攻击目的,常见的DoS攻击都是向被攻击者发送大量的垃圾数据包,使被攻击者一直在处理这些垃圾数据包而浪费资源,同时也消耗大量的网络带宽,最后导致被攻击者宕机,或者网络迟缓。但对于目前的计算机来讲,由于大多性能强劲,网络带宽也很高,所以死亡之ping以及一些类似的攻击方法已无法发挥作用。


单独一台计算机对目标机器发动死亡之ping无法发挥作用,但是如果有多台计算机同时向目标机器发动死亡之ping,则威力仍然是巨大的。这种攻击方式就被称为DDoS(DistributionDenialofService),即分布式拒绝服务攻击。大规模的DDoS攻击很难防御,这也是目前一直无法从根本上解决的一个重要的网络安全问题。


下面我们通过一款“SYN攻击器”工具来体验一下拒绝服务攻击。“SYN攻击器”的原理是利用在TCP三次握手的过程中建立大量伪造的半连接,从而耗尽目标计算机的资源。


我们在一台安装有Win2003系统的虚拟机中运行该软件(为保证实验效果,建议将Win2003系统的防火墙关闭),输入要攻击的目标计算机的IP地址和端口号(端口号可以是任意一个开放的TCP端口),然后点击“start”按钮开始攻


 


 

攻击开始后,到目标计算机上打开Windows任务管理器,可以看到此时CPU使用率基本达到了100%,拒绝服务攻击成功。


 


 

无论目标计算机上是否启用了防火墙,都无法阻挡住SYN攻击,而且此种攻击方式对Win7系统也同样有效。这还只是由单一攻击方发起的DoS攻击,如果是众多攻击方同时展开的DdoS攻击,那么威力将更加强大。

6.利用ping命令排查网络故障

Ping命令对于我们排查网络故障将提供极大地帮助。比如电脑无法接入Internet,我们可以按照如下思路来排查故障。


①首先来ping网关,如果能够ping通,则证明内部网络没有问题,问题应该出在外部网络。


②再来ping某个网址,比如“pingwww.baidu.com”,测试能否将网址解析为IP,以确认是否DNS服务器设置错误。


③如果在步骤①中ping网关不通,则证明问题出在内部网络。此时可以测试能否ping通内网中的其它电脑,如果不能ping通,则证明是我们自己的电脑或是网线出了问题,如果能ping通,问题则与我们的电脑或网线没有关系,多半是内部网络的某处出现了问题。


 

相关文章

有系统u盘要网络吗(有系统u盘要网络吗怎么连接)想要重新系统...
u盘识别盘符不能格式化(u盘无法识别需要格式化)因为重装系统...
u盘错误无法读取(u盘错误无法读取文件)U盘无法读取?出现这种...
电脑f2启动相应系统(电脑f2启动相应系统错误)开机后出现如下...
win7直接启动(win7直接启动admin)一共三种启动方式,针对台式...
近期有些win7用户反映说,自己的电脑使用过程中就出现了蓝屏...