Ping扫描 (ICMP扫描)

2025年3月17日 | 阅读 15 分钟

引言

Ping 扫描(也称为 ICMP 扫描)是一种简单的网络扫描技术,用于确定哪些 IP 地址对应于活动的(在线的)主机(计算机)。

Ping 扫描包括向多个主机发送大量的 ICMP(Internet 控制消息协议)回显请求,而单个 ping 可以告知您某台主机是否存在于网络上。为了发送回显请求,ping 需要一个地址,该地址可以是 IP 地址或 Web 服务器的域名。

Ping Sweep (ICMP Sweep)

如果一个地址是活动的,它会响应一个 ICMP 回显。网络管理员可以阻止来自外部源的 ICMP 回显请求,以防止网络上的 ping 扫描。然而,ICMP 时间戳和地址掩码请求可以以类似的方式使用。

理解 Ping 和 Ping 扫描

当“ping”最初被用作技术术语时,声纳技术行业用它来指代潜艇探测能力。配备主动声纳的潜艇会发出声音(ping),如果它遇到障碍物(如另一艘潜艇)则会反弹回来。这是 ping 的技术起源,如今它更常与 IP 网络工具和所谓的 ping 扫描相关联。

连接到网络的任何设备都可以使用 Ping。它是一个命令行工具,通常包含在网络管理员的工具包中。

一种称为“ping 扫描”的 Internet 控制消息协议 (ICMP) 扫描,是一种简单的方法,用于确定哪些 IP 地址被“活动”或“非活动”主机使用,并检测任何网络问题。通常,这些主机是计算机;然而,除此之外,任何事物都可以充当主机,例如网络、打印机、计算机、网页和其他设备。

为什么 ping 扫描很重要?

Ping 是较慢且更传统的一种网络安全扫描方法。它们仍然是验证组织网络安全和评估网络管理控制的有用工具。

除了检测网络上的活动设备外,ping 扫描还可以检测可能有害的未知设备,并确保设备正常运行。

市面上有哪些 ping 扫描工具?

Ping Sweep (ICMP Sweep)

组织可以使用多种工具来执行 ping 扫描。

1. SolarWinds Ping Sweep

作为其网络监控协议的一部分,用户可以使用适用于 Windows 的 SolarWinds Ping Sweep 应用程序扫描一系列 IP 地址。通过上传包含 IP 地址列表的文本文件来实现此目的。用户可以将结果导出为 HTML、TXT、CSV 或 XML 文档。

网络发现结果显示每个已识别设备的名称以及响应所需的时间。仅凭这些数据就可能表明性能问题,用户可以通过故障排除来解决。与您的 DNS 服务器预期托管的设备相比,它还可以揭示潜在的恶意设备活动。

此外,SolarWinds 还提供了一个 IP 地址扫描器,支持 IPv4 和 IPv6 地址类型,并结合了 ICMP 和简单网络管理协议 (SNMP) 扫描选项。

2. Paessler PRTG

Paessler PRTG 是一款系统监控工具,可映射网络、连接到网络的设备以及网络的整体性能。它兼容所有当前操作系统。

该程序通过命令行界面 (CLI) 一次将 ping 请求发送到一个 IP 地址。Paessler 使用 ping 命令以循环方式扫描所有可用的网络地址,以到达网络上的每个节点。

如果收到响应,它会将其记录下来,并利用这些信息调查任何可疑的网络设备。

3. Nmap

Nmap 是一款免费的网络系统实用程序,与 Paessler PRTG 一样,它从命令行运行。它可以安装在 Linux、Unix、Mac OS 和 Windows 上,并且可以作为 ping 或使用传输控制协议 (TCP) 进行扫描。

该应用程序为用户提供活动主机的名称和 IP 地址。它可以在 TCP 模式下充当端口扫描器,显示连接设备或路由器上的任何开放端口。

Nmap 方法可能会提供原始输出,阅读起来可能很困难,但有额外的“读取器”程序可以将数据转换为易于阅读的记录。

4. Fping

对于 Linux 操作系统,还有一个名为 Fping 的命令行实用程序。在上传一系列 IP 地址后,您可以按地址类型、活动或非活动主机以及 DNS 记录过滤结果。结果提供了主机名以及 DNS 地址是否可疑或表明记录丢失。

5. Hping

Hping 是另一款广受欢迎的 ICMP ping 命令行工具,深受喜欢使用 traceroute 或 ping 形式命令的资深网络管理员的喜爱。它可以安装在 Linux、Mac OS、Unix 和 Windows 上。

它的 ping 请求功能在 TCP/IP 协议的互联网层运行。用户可以使用 TCP 和用户数据报协议 (UDP) 功能对连接的计算机和路由器执行端口扫描,即使它缺少端口可见性。

如果一家公司经常测试其系统的防火墙,这是一个有用的功能。然而,应该指出的是,端口扫描因同样的原因而受到网络罪犯的欢迎。

6. Advanced IP Scanner

另一个 Windows ping 扫描实用程序,可以扫描单个或一组 IP 地址,它是 Advanced IP Scanner。结果显示了每台已发现主机的主机名、MAC 地址、制造商以及任何共享文件。

一旦检测到所有活动的节点,用户就可以访问连接的设备并执行命令,以及将其开启、关闭或置于待机模式。由于它们可以选择将输出文件保存为 CSV 文件,因此很容易将列出的 IP 地址与 DNS 记录进行比较。

7. ManageEngine OpManager

Manage Engine 的 OpManager 是一款集成的性能监控应用程序。它的适应性使其与其他工具区分开来:它是一款全面的端到端网络管理软件,提供了一种集成的方法来监控 IT 基础设施。OpManager 集成了 Ping Monitor,该工具监控主机和 IP 地址的可访问性,并检索有关设备或服务器可用性的信息。

主要特点

  • 定期向指定的主机发送 Ping 请求,以确保它们仍然处于正常运行状态。
  • 跟踪已发送、已接收和已丢失的数据包等参数。
  • 收集 RTT 数据。

作为供应商,ManageEngine 以其适应性而闻名,并声称支持最广泛的技术。然而,OpManager 并不像本指南中的其他工具那样提供广泛的功能。

8. Zenmap

Nmap 网络工具套件也是免费提供的,Zenmap 是它的免费 GUI 版本。Zenmap 允许您将扫描保存为配置文件,从而轻松执行常规扫描。此外,最近的扫描会收集在一个具有搜索功能的数据库中,而更有经验的用户可以通过命令创建器创建 Nmap 命令。扫描结果也可以随时方便地保存和检索。

Zenmap,Nmap 的官方安全扫描器 GUI,旨在让初学者轻松进行网络管理,同时为更有经验的 Nmap 用户提供复杂的功能。从这个意义上说,Zenmap 是你创造出来的。

主要特点

  • 您可以在 Windows、Linux、Mac OS 和 Unix 上使用 Zenmap。
  • 修改现有配置文件以创建自己的扫描规范,然后保存更新后的版本。
  • 执行 TCP 和 Ping 扫描。
  • 获取每个设备的名称以及活动主机的 IP 地址。
  • 查看 TCP 运行时打开的端口。
  • 根据原始输出数据生成报告,其可视化效果可以更改,以便观看者更容易理解。
  • 使用拓扑映射器查看每条网络链接的图形表示。
  • XML 文件可用于存储所有结果。

Zenmap 的功能因其免费和开源的应用程序而受到限制。由于其用户友好的界面和对初学者友好,它是市面上最好的免费 ping 工具之一,但在功能方面不如高级软件。

9. Pinkie

Pinkie 是另一款适用于 Windows 的免费 ping 扫描实用程序。除了简单的 ping 扫描外,Pinkie 还具有许多其他功能,例如 traceroute、端口扫描和子网计算器。

10. 端口映射工具

ping 扫描的另一个流行替代方法是使用端口映射软件。为了确定设备上的端口是否已打开,它们同时使用 TCP 和 UDP。

然而,开放端口的知识被视为安全漏洞。因此,为了降低与端口扫描相关的风险,一些管理员会阻止其设备响应 ICMP。

在这些情况下,使用更高级别的 ICMP UDP 回显请求更为常见。这也被称为“UDP 数据包 ping”,因为它在 IP 地址的传输层运行。

为什么使用 Ping 扫描?

Ping 扫描用于网络管理和安全,有多种用途。Ping 扫描通常用于以下目的:

  • 网络故障排除:可以对网络进行 ping 扫描,以进行网络故障排除,特别是与网络连接相关的问题。网络管理员可以通过向一系列 IP 地址发送 ping 请求来确定哪些设备已启动,哪些未启动。这有助于识别网络故障,例如配置错误的交换机或路由器、DNS 问题或网络设备故障。
  • 网络映射:Ping 扫描也有助于网络映射。管理员可以通过确定哪些 IP 地址处于活动状态并响应 ping 来更深入地了解其网络的拓扑结构。这有助于发现网络中的潜在薄弱点,定位未使用的 IP 地址,并检测未经授权的设备。
  • 网络安全:对于网络安全专家来说,ping 扫描是一项重要的工具。它们可用于定位可能存在漏洞的系统,例如设备上设置不当或过时的软件。此外,还可以使用 ping 扫描在网络上检测到未经授权的计算机或流氓接入点。通过识别这些设备,网络安全专家可以采取措施保护网络并防止未经授权的访问。

此外,攻击者也可能使用 ping 扫描作为侦察的一种手段。Ping 扫描是攻击者用于定位潜在网络目标(例如响应 ping 请求的 Internet 机器)的有用工具。可以使用此信息来计划和执行端口扫描和拒绝服务 (DoS) 攻击等攻击。

安全、合乎道德地使用 ping 扫描至关重要,在开始扫描前获得授权,并确保所有发现都得到妥善记录和报告。网络管理员和安全专家可以通过正确使用 ping 扫描来提高其网络的安全性、可靠性。

Ping 扫描的工作原理

Ping 扫描是一种网络扫描技术,用于识别特定范围内的哪些 IP 地址是活动的并响应网络流量。为了确定一系列 IP 地址是活动的还是非活动的,该方法涉及向这些地址发送多个 ICMP(Internet 控制消息协议)回显请求,通常称为 ping。

ping 命令通过向特定 IP 地址发送消息并等待响应来工作。如果目标 IP 地址是活动的且可达,它将使用 ICMP 回显应答响应 ping 请求。如果目标 IP 地址响应一系列 ping 请求,ping 命令将该 IP 地址视为活动且在线。

根据扫描目标的不同,可以使用多种扫描方法。基本的 ping 扫描是一种流行的方法,涉及向指定范围内的每个 IP 地址发送单个 ICMP 数据包,然后等待响应。为了更广泛地了解网络架构,另一种方法是使用更复杂的扫描工具,该工具会发送多个数据包和 ICMP 请求的变体。

Ping 扫描有两种类型:**垂直和水平**。攻击者可以通过执行垂直 ping 扫描向子网内的每个 IP 地址发送 ping 请求。另一方面,使用水平 ping 扫描的攻击者通过多个子网向单个 IP 地址发送 ping。

可以使用多种工具来执行 ping 扫描,包括 Nmap 和 Fping 等 GUI 程序以及 Windows 和 Linux 的“ping”命令等命令行工具。

网络管理员可以通过 ping 扫描轻松找到离线设备或网络故障。攻击者还可以使用它们来绘制网络地图并识别潜在的漏洞和目标。同样重要的是,要合乎道德且负责任地使用 ping 扫描,在开始扫描前获得许可,并确保所有结果都得到记录和报告。

Ping 扫描在网络安全中的应用

Ping 扫描是网络安全专家的一项宝贵资源。它们可以作为侦察工具来定位潜在的薄弱系统并进一步了解目标网络。Ping 扫描可以以以下方式应用于网络安全:

  • Ping 扫描作为侦察工具:Ping 扫描是攻击者了解目标网络的有用工具。通过确定哪些 IP 地址处于活动状态并响应 ping,攻击者可以更深入地了解网络拓扑并确定潜在目标。这些信息可用于计划和执行端口扫描或 DoS 攻击等攻击。
  • 识别活动主机和易受攻击的系统:可以使用 ping 扫描来查找网络上的活动主机和可能易受攻击的系统。安全专家可以通过向各种 IP 地址发送 ping 请求来确定设备是否在线并响应网络请求。可以使用此信息找到可能存在漏洞的系统,例如那些拥有过时软件或配置不当的设备。
  • Ping 扫描攻击示例:Ping 扫描可用于各种攻击。例如,ping 扫描可用于 DoS 攻击,攻击者向目标设备发送大量 ping 请求,使其过载并导致其崩溃。在端口扫描(涉及使用多种方法查找目标设备上的开放端口)中,也可以使用 ping 扫描。

总的来说,网络安全专家可能会发现 ping 扫描是定位漏洞和保护其网络的一种有效方法。然而,ping 扫描应以合乎道德且明智的方式使用,因此请确保在进行扫描前获得许可,并确保所有结果都得到妥善记录和报告。网络安全专家可以通过负责任地使用 ping 扫描来提高其网络的安全性、可靠性。

如何进行 Ping 扫描

Ping 扫描包括向一系列地址发送多个 ping 请求,以确定哪些 IP 地址是活动的并响应。进行 ping 扫描的一般步骤如下:

  • 确定要扫描的 IP 地址范围:选择需要扫描的 IP 地址范围。可以使用网络的 IP 地址和子网掩码,或者可以使用子网计算器。
  • 选择 Ping 工具:对于扫描,决定使用哪个 ping 工具。常用的工具有 Nmap 和 Fping 等 GUI 程序,以及 Linux 和 Windows 的“ping”工具。
  • 执行 Ping 扫描:打开 ping 工具,输入要扫描的 IP 地址范围,然后单击“开始 Ping 扫描”。该工具将向范围内的每个 IP 地址发送多个 ping 查询,然后等待响应。如果收到响应,该工具会将 IP 地址视为活动且在线。
  • 分析结果:通过分析从 ping 扫描获得的数据来确定哪些 IP 地址是活动的并响应。可以使用这些信息来映射网络拓扑,定位潜在的易受攻击系统,以及对网络问题进行故障排除。

请务必注意,未经许可进行 ping 扫描是被禁止的,并可能导致纪律处分或法律诉讼。因此,在进行 ping 扫描之前获得相关部门的批准至关重要。

此外,重要的是要合乎道德且负责任地使用 ping 扫描,确保所有发现都得到妥善报告和记录。网络管理员和安全专家可以通过负责任地使用 ping 扫描来提高其网络的安全性、可靠性。

Ping 扫描的最佳实践

以下是一些关于如何执行 ping 扫描的建议:

  1. 获取许可:在执行 ping 扫描之前,获得许可至关重要。可以通过获得网络管理员或安全官员等相关人士的许可来实现。未经授权进行 ping 扫描是被禁止的,并可能面临纪律处分或法律诉讼。
  2. 负责任地使用 Ping 扫描:Ping 扫描必须以合乎道德和负责任的方式使用。这包括确保所有发现都得到妥善记录和报告,并且获取的数据仅用于合法目的,例如安全评估和网络故障排除。
  3. 避免网络过载:Ping 扫描可能会产生大量网络流量,从而导致网络过载并导致性能下降。为避免这种情况,建议限制每秒发出的 ping 查询数量,并将 ping 扫描安排在网络流量最低的非高峰时段。
  4. 考虑防火墙和安全措施:由于防火墙和阻止或限制 ping 请求的安全措施,执行 ping 扫描可能会很困难。在计划 ping 扫描时,考虑这些因素很重要,并在需要时采用替代方法。
  5. 保留记录:保留进行的 ping 扫描的记录至关重要,包括日期、时间和扫描的 IP 地址。这些数据可用于确保所有发现都得到准确记录和报告,以及用于故障排除和审计目的。
  6. 定期进行 Ping 扫描:Ping 扫描可用于在潜在的安全漏洞或网络问题变得严重之前发现它们。应定期进行 ping 扫描,例如每月一次或每季度一次。

遵循这些最佳实践,网络管理员和安全专家可以有效地、合乎道德地使用 ping 扫描来提高网络的安全性和可靠性。

Ping 扫描的补充和替代工具

本节将探讨三种可用于 ping 扫描实用程序的补充或替代工具:

  • IP 地址管理器
  • Traceroute
  • 端口映射器

1. IP 地址管理器

如果您的网络不断增长,并且 ping 扫描开始显得费力,那么基本的 ping 扫描产品可能不适合您。您可能会发现自己正在浪费时间而不是节省时间。如果是这样,一种可能的解决方案是使用 IP 地址管理器。

IP 地址管理器提供了更复杂、功能更丰富的网络管理方法。例如,它可能提供有关 IP 地址利用率的更详细信息。虽然它们是 IP 地址管理的有用补充,但 ping 扫描工具不能完全取代功能齐全的 IPAM。

2. Traceroute

Traceroute(也称为 tracert 或 tracepath)是一种与 ping 非常相似的网络工具。它用于识别数据包遵循的路径。为了获得更广泛、更深入的网络视图,请将其与 ping 扫描工具一起使用。

虽然 traceroute 和 ping 扫描软件的功能看起来相似,但存在一个重要区别。Ping 提供了一种快速简便的方法来检查服务器是否在线且可达,以及数据传输和接收的持续时间;另一方面,traceroute 侧重于传输到服务器和从服务器返回的确切路径。

Traceroute 以“跳”(hops)为单位映射路径,报告每步之间的间隔。用户可以从中检索各种数据,例如跳数、国家/地区、IP 地址、RTT、毫秒最佳时间以及生存时间 (TTL)。这些信息可以帮助您找出某些连接为什么不如预期那样工作。它还可以显示系统如何相互连接,为您提供目标系统和 ISP 如何连接到 Internet 的可视化表示。

与 ping 不同,Traceroute 使用 UDP 数据包。它发出多个这样的数据包,并逐渐增加 TTL。TTL 字段中的数字表示数据包可以穿越的路由器数量。每当数据包到达路由器时,该数字就会减一。当 TTL 值为零时,数据包将被丢弃。

通过将 traceroute 与 ping 结合使用,您可以创建详细深入的网络地图。许多 ping 扫描工具会将 traceroute 与 ping 结合使用,为用户提供更广泛的网络视图。

3. 端口映射器

端口映射器使用 TCP 和 UDP 来确定设备的端口是打开还是关闭。Ping 不使用端口号。因此,端口映射器可以成为 ping 扫描工具的有用补充。

端口映射(通常称为端口转发)将 ONC RPC(开放网络计算远程过程调用)编号或版本映射到网络端口。接下来,ONC RPC 服务器要求端口映射器为每个 RPC 程序提供唯一的 TCP/UDP 协议端口号。端口映射器用于将数据发送和接收到选定的端口。许多端口映射器旨在处理任何需要它的程序的端口分配。

更高级的 ping 扫描软件可能具有此功能,运行各种协议以利用端口映射,但更简单的 ping 扫描工具可能不会报告设备端口。


下一主题打印服务器