Windows Server入门系列之十五 深入了解ping命令

本文涉及的产品
云防火墙,500元 1000GB
简介:

1.基本用法


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

133240817.jpg

假设在A计算机上pingB,如果能ping通,在A计算机上显示的信息是从B计算机上返回来的。如果不能ping通,A计算机上显示的信息则是由系统产生的错误提示。
在Windows系统中,默认情况下,每次执行ping命令会发送4个ICMP“回显请求”(echorequest),每个数据包大小为32字节,如果一切正常,应能收到4个同样为32字节大小的ICMP“回显应答”(echoreply):

133430873.jpg
通过回显应答中的“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命令的执行结果:

141330590.jpg

另外,大家可能会发现,每次执行tracert命令所查询到路径都不大一样,这是完全正常的,数据包每次传送时采用不同的路径,这正是Internet所采用的分组交换方式的特点。


2.错误提示分析


如果执行ping命令后,无法接收到对方的回显应答,则错误提示通常为:
Requesttimedout
出现这种提示,表示网络不通,但具体故障原因要视实际网络情况而定。
另外还有一种错误提示为:
Destinationhostunreachable
出现这种提示,则通常是因为没有设置网关或网关设置不正确。
比如,有台PC的IP地址为192.168.0.10,子网掩码255.255.255.0,默认网关为192.168.0.1。在这台PC机上随便ping另外一个网段中的不存在的IP,如ping172.16.1.10,因为这个IP根本不存在,所以显示错误提示“Requesttimedout”;

142606705.jpg

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

142634213.jpg


3.ping命令的防火墙设置

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

143102835.jpg

对于Windows7或WindowsServer2008系统的防火墙,可以在“入站规则”中启用“文件和打印机共享(回显请求-ICMPv4-In)”规则,这样防火墙就不会过滤ICMP回显请求数据包了,从而使计算机可以ping通。

143157631.jpg

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

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

143515365.jpg

规则应用于所有程序:

143602303.jpg

协议类型选择ICMPv4

143709449.jpg

也可以点击右下角的“自定义”按钮,用于设置允许通过的ICMP消息类型,默认是允许所有消息全部通过:

143839494.jpg

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

143933318.jpg

对符合条件的数据包允许通过:

144020663.jpg

将规则应用于所有的网络类型:

144053603.jpg

为规则起一个名称:

144130430.jpg

这样,我们便自己创建好了一条防火墙规则,利用该规则同样可以使得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”按钮开始攻击。
145108123.jpg

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

145146940.jpg

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


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

Ping命令对于我们排查网络故障将提供极大地帮助。比如电脑无法接入Internet,我们可以按照如下思路来排查故障。
①首先来ping网关,如果能够ping通,则证明内部网络没有问题,问题应该出在外部网络。
②再来ping某个网址,比如“pingwww.baidu.com”,测试能否将网址解析为IP,以确认是否DNS服务器设置错误。
③如果在步骤①中ping网关不通,则证明问题出在内部网络。此时可以测试能否ping通内网中的其它电脑,如果不能ping通,则证明是我们自己的电脑或是网线出了问题,如果能ping通,问题则与我们的电脑或网线没有关系,多半是内部网络的某处出现了问题。



本文转自 yttitan 51CTO博客,原文链接:http://blog.51cto.com/yttitan/1300573

相关文章
|
9天前
|
存储 安全 数据库
适用于 Windows 的管理命令
以下命令可用于管理 Rational® Synergy。
|
21天前
|
人工智能 监控 安全
掌握Windows管理利器:WMI命令实战
本文介绍了Windows Management Instrumentation (WMI) 的基本概念和用途,通过多个实用的`wmic`命令示例,如获取CPU信息、查看操作系统详情、管理服务、检查磁盘空间等,展示了WMI在系统维护中的强大功能。适合IT专业人士学习和参考。
|
24天前
|
数据安全/隐私保护 Windows
安装 Windows Server 2019
安装 Windows Server 2019
|
28天前
|
网络协议 Windows
Windows Server 2019 DHCP服务器搭建
Windows Server 2019 DHCP服务器搭建
|
28天前
|
网络协议 定位技术 Windows
Windows Server 2019 DNS服务器搭建
Windows Server 2019 DNS服务器搭建
|
24天前
|
安全 网络协议 数据安全/隐私保护
Windows Server 2019 搭建并加入域
Windows Server 2019 搭建并加入域
|
1月前
|
Python 机器学习/深度学习 人工智能
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
【10月更文挑战第1天】本文通过构建一个简单的强化学习环境,演示了如何创建和训练智能体以完成特定任务。我们使用Python、OpenAI Gym和PyTorch搭建了一个基础的智能体,使其学会在CartPole-v1环境中保持杆子不倒。文中详细介绍了环境设置、神经网络构建及训练过程。此实战案例有助于理解智能体的工作原理及基本训练方法,为更复杂应用奠定基础。首先需安装必要库: ```bash pip install gym torch ``` 接着定义环境并与之交互,实现智能体的训练。通过多个回合的试错学习,智能体逐步优化其策略。这一过程虽从基础做起,但为后续研究提供了良好起点。
102 4
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
|
1月前
|
弹性计算 安全 Linux
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
|
3月前
|
监控 网络协议 JavaScript
tcping和ping命令
【8月更文挑战第2天】`tcping` 是一款基于 TCP 协议的网络测试工具,不同于传统的 `ping` 命令使用 ICMP 协议,`tcping` 通过尝试与目标主机的特定端口建立 TCP 连接来检查网络连通性和端口状态。这使其在一些禁用了 ICMP 的网络环境中特别有用。`
107 3
tcping和ping命令
|
3月前
|
网络协议 网络安全 网络架构
ping命令详解
【8月更文挑战第14天】 ping命令详解
147 3
下一篇
无影云桌面