如何使用Netdiscover映射和排除网络故障
网络管理员、安全管理员和支持技术人员需要能够快速映射网络基础设施的工具,以显示节点、网络设备和网段边界。Netdiscover是一款出色且灵活的工具,可提供持续更新的结果,用于发现网段上的活动主机。
为什么网络映射很重要
网络映射是网络安全和常规运营的关键组成部分。它帮助管理员检测未经授权的设备,并识别可能未接收更新、配置错误或不必要暴露漏洞的设备。
可视化网络使管理员能够理解设备之间的关系以及网络流量如何在它们之间流动。目标是实现更好的优化和更高效的故障排除。
网络映射还支持有效的事件响应和灾难恢复。地图显示组件之间的路径,使管理员能够在原始连接失败时建立冗余或创建新连接。
管理员通常将Netdiscover与其他实用程序(如Nmap、Wireshark和NetHogs)结合使用,以提供网络基础设施及其内部数据流的完整视图。
什么是Netdiscover?
Netdiscover依赖地址解析协议(ARP),并在OSI模型的第2层工作以检测活动网络节点。它通过主动扫描网段或被动嗅探数据包头部中的主机信息来识别MAC和IP地址。
一些管理员使用arp-scan实现类似目的。然而,Netdiscover更灵活,提供主动和被动模式。考虑同时使用这两种工具以确保扫描完整。
Netdiscover与另一个第2层网络侦察工具arpwatch有显著不同。Arpwatch记录并跟踪MAC和IP地址关系,监视变化。它是一个监控工具,而不是发现工具。
如何安装Netdiscover
Kali Linux、BlackArch Linux和Parrot Linux在其标准安装中包含了Netdiscover。如果您使用不同的发行版,请使用包管理器安装它。您也可以从其GitHub站点下载Netdiscover。
在类似Ubuntu的系统上,输入:
|
|
在类似Red Hat的发行版上,输入:
|
|
macOS用户可以为其平台编译Netdiscover。Windows用户可以尝试使用Windows Subsystem for Linux运行它。
请注意,在某些发行版上安装Netdiscover可能需要添加存储库。
如何使用Netdiscover
与其他强大的Linux实用程序一样,Netdiscover有许多命令选项。请参考内置帮助文档以获取所有选择。
要获取有关Netdiscover的信息,请输入:
|
|
Netdiscover的独特功能之一是它能够以主动或被动模式运行。被动模式使入侵检测系统(IDS)更难注意到Netdiscover。
- 主动模式:发送ARP请求以发现主机,网络监控工具可能会检测到。在映射并非所有主机在扫描时都处于活动状态的网络时特别有用。只要这些主机在线,即使它们没有主动发送和接收其他数据,它们也会响应ARP请求。这是Netdiscover的默认模式。
- 被动模式:嗅探活动流量以获取MAC地址信息,而不是查询主机。大多数网络监控工具不会检测到这种扫描,但Netdiscover的被动模式不会检测到不活动的网络节点,并且比主动扫描慢得多。使用
-p
标志指定被动模式。
Netdiscover还识别网络接口卡(NIC)的供应商。每个硬件供应商都被分配了一个供应商ID,该ID构成了NIC MAC地址的前半部分。Netdiscover可以将结果与供应商数据库进行比较。
如何使用Netdiscover映射网络
Netdiscover没有GUI,因此计划在Linux终端中进行扫描。这是许多Linux网络安全工具的典型特征。
请注意,路由器可能会阻止ARP广播。为获得最佳结果,在每个网络子网上运行Netdiscover。将各个结果合并到单个地图或报告中。
各种Netdiscover扫描输出类似的结果表,包括IP地址、MAC地址、NIC供应商和主机名(如果可解析)。
要运行基本扫描,请输入:
|
|
使用Ctrl+C结束扫描。
您可能希望更有效地聚焦此扫描。添加-i <interface-name>
选项以使用特定接口。您还可以使用-r <IP-range/subnet>
指定目标IP地址范围。例如,要使用接口eth0扫描192.168.2.0/24子网,请输入:
|
|
此示例在子网上运行主动扫描。添加-p
选项进行被动扫描,如下所示:
|
|
如果您在自己的网络上进行基本映射——因此不需要隐藏来自IDS——请考虑快速扫描。此选项在扫描具有许多主机的拥塞网络时也会有所帮助。
|
|
您可能希望Netdiscover长时间被动运行以进行监控。开始使用标准主动扫描,然后允许其被动运行以维护信息。此配置的选项是-L
。命令是:
|
|
初始主动扫描快速收集信息。剩余的被动模式随时间推移保持信息最新。
请记住,您可以结合使用许多这些选项,以完全根据您的需求自定义工具。
Netdiscover使用案例
在学习如何使用Netdiscover时,您会发现它适用于任何需要识别网络上系统的人员。示例包括:
- 映射网络环境的管理员。
- 进行审计和渗透测试的安全专业人员。
- 排除网络事件故障的网络技术人员。
- Wardriving/walking和侦察。
- 在有线和无线网络上检查流氓设备的网络和安全管理员。
- 进行设备清单的IT专业人员。
- 需要识别NIC供应商的网络技术人员。
当您需要快速、高效地发现网络节点时,请计划使用Netdiscover。
Netdiscover与Nmap:有什么区别?
大多数管理员将Nmap作为其主要网络发现工具,这是有充分理由的:它功能强大、灵活,并返回广泛的结果。那么,Netdiscover有何不同,何时是使用每个工具的适当时机?
Nmap在OSI第3层运行。它提供更广泛的扫描选项,包括:
- 主机发现。
- 端口扫描。
- 操作系统识别。
- 漏洞扫描。
Nmap提供几乎任何您需要的信息的全面扫描,用于渗透测试、服务映射和主机识别。
然而,在某些情况下,对于基本映射或侦察,Nmap可能超出您的需求。在这些情况下,Netdiscover提供了一个轻量级选项,可以有效地映射网络主机,而无需额外负担无关信息或产生不必要的网络流量。它非常适合在一个或多个本地子网上进行基本主机枚举。您会发现Netdiscover是与Nmap结合使用或当您不需要Nmap的非凡功能时的绝佳工具。
下次您需要查找网段上的所有主机或检查未经授权的设备时,请考虑使用Netdiscover。