Netdiscover探测局域网中存活主机

一、ARP详解

  • 地址解析协议(Address Resolution Protocol),其基本功能为透过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。它是IPv4中网络层必不可少的协议,不过在IPv6中已不再适用,并被邻居发现协议(NDP)所替代。
1、ARP工作流程

假设主机A和B在同一个网段,主机A要向主机B发送信息,具体的地址解析过程如下:

  1. 主机A首先查看自己的ARP表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B。
  2. 如果主机A在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为主机A的IP地址和MAC地址,目标IP地址和目标MAC地址为主机B的IP地址和全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。
  3. 主机B比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。
  4. 主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。
2、ARP报文格式

一般说以太网地址就是指MAC地址。

  • 字段1是ARP请求的目的以太网地址,全1时代表广播地址。
  • 字段2是发送ARP请求的以太网地址。
  • 字段3以太网帧类型表示的是后面的数据类型,ARP请求和ARP应答这个值为0x0806。
  • 字段4表示硬件地址的类型,硬件地址不只以太网一种,是以太网类型时此值为1。
  • 字段5表示要映射的协议地址的类型,要对IPv4地址进行映射,此值为0x0800。
  • 字段6和7表示硬件地址长度和协议地址长度,MAC地址占6字节,IP地址占4字节。
  • 字段8是操作类型字段,值为1,表示进行ARP请求;值为2,表示进行ARP应答;值为3,表示进行RARP请求;值为4,表示进行RARP应答。
  • 字段9是发送端ARP请求或应答的硬件地址,这里是以太网地址,和字段2相同。
  • 字段10是发送ARP请求或应答的IP地址。
  • 字段11和12是目的端的硬件地址和协议地址。
3、抓包分析

下面是抓取的ARP数据包,可以对照上面的说明进行理解。 图中红框圈起来的是一对ARP请求和ARP应答。

4、ARP请求报文

5、ARP应答报文

二、Netdiscover详解

1、Netdiscover安装
  • Kali Linux提供的网络扫描工具
  • github地址:https://github.com/alexxy/netdiscover
  • ubuntu:
$ sudo apt install netdiscover
2、Netdiscover选项
选项 说明
-i device 网络接口
-r range 扫描范围,例如192.168.0.0/24,仅支持/8, /16和/24
-l file 扫描范围列表文件,每行一个范围
-p 被动模式:不发生任何报文,仅嗅探
-m file 扫描已知Mac地址和主机名的列表文件
-F filter 自定义pcap filter表达式(默认“arp”)
-s time 每个ARP请求间的休眠时间(毫秒,默认1ms)
-c count 发送每个ARP请求的次数,用于丢失数据包的网络,默认1次
-n node 扫描最后的源IP,默认为67(x.x.x.67),允许范围为2-253
-d 忽略自动扫描和快速模式的主配置文件,扫描默认的范围和IP
-f 启用快速模式扫描,扫描每个网段的.1、.100 和 .254
-P 产生输出到文件或者其他解析程序,扫描完成后退出,例如:netdiscover -P -r 192.168.20.0/16 | grep 192.168.20.100
-L 与-P类似,但在主动扫描后继续捕获ARP包
-N 不打印表头,仅在-P 或者-L启用时有效
3、使用实例

扫描指定接口:

$ netdiscover -i ens38

扫描指定范围:

$ netdiscover -i ens38 -r 192.168.0.0/16

快速扫描:

$ netdiscover -i ens38 -f

被动扫描,仅嗅探:

$ netdiscover -i ens38 -r 192.168.0.0/16 -p

文章作者: 有梦想的咸鱼
版权声明: 咳咳想白嫖文章?本文章著作权归作者所有,任何形式的转载都请注明出处。 http://www.trisomy.cn !
还能输入 100 字
  目录