美文网首页
WiFi探针的工作原理

WiFi探针的工作原理

作者: 古佛青灯度流年 | 来源:发表于2019-05-06 17:22 被阅读0次

    WiFi探针的工作原理?
    要深入了解WiFi探针技术,首先先认识WiFi使用的网络协议,WiFi采用的是IEEE802.11协议集,此协议集包含许多子协议。其中按照时间顺序发展,主要有:(1)802.11a,(2)802.11b, (3)802.11g(4)802.11n。在网络通信中,数据被封装成了帧,帧就是指通信中的一个数据块。但是帧在数据链路层传输的时候是有固定格式的,不是随便的封装和打包就可以传输,大小有限制,最小46字节,最大1500字节所以我们必须按照这个规则来封装。下面802.11的帧结构:

    image.png
    image.png

    从上面的结构可以知道,前俩个字节为:帧控制字段。
    控制字段的前2bit节为:协议类型,目前此值为:0。

    1)控制帧:(Control Frame,例如RTS帧、CTS帧、ACK帧)用于竞争期间的握手通信和正向确认、结束非竞争期等;
    2)管理帧:(Management Frame,例如Beacon帧、Probe Request帧)主要用于STA与AP之间协商、关系的控制,如关联、认证、同步等;
    3)数据帧:(Data Frame,承载数据的载体)用于在竞争期和非竞争期传输数据。

    1、管理帧
    BeaconFrame:信标帧,是相当重要的维护机制,主要来宣告某个AP网络的存在。定期发送的信标,可让移动WiFi设备得知该网络的存在,从而调整加入该网络所必要的参数。在基础网络里,AP必须负责发送Beacon帧,Beacon帧所及范围即为基本服务区域。 在基础型网络里,所有沟通都必须通过接入点,因此WiFi设备不能距离太远,否则无法接收到信标。下图是帧格式:


    image.png

    2、管理帧Probe Request:探测请求帧,WiFi设备将会利用Probe Request帧,扫描所在区域内目前有哪些802.11网络。下图是帧格式:


    image.png

    3、数据帧:
    Data数据帧,当接入点要送出一个帧给WiFi设备但是不必确认之前所传送的信息时,就会使用标准的数据帧。标准的数据帧并不会征询对方是否有数据待传,因此不允许接收端传送任何数据。无竞争周期所使用的纯数据(Data-Only)帧和无竞争周期所使用的数据帧完全相同。看了以上的网络知识,我们现在说说WiFi探针是怎么工作的,还是先看张图:


    image.png

    就像图中描述的一样,我们的WiFi探针其实就是一个AP,它定时的向自己的四周广播发送Beacon帧,用来通知附近的WiFi设备,AP是存在的,(好比它一直在向周围喊着,我在这里,大家快来连接我啊)。 我们的WiFi设备,手机,平板电脑等,也不停的发送着probe帧,去寻找附近可用的AP。在probe帧的介绍中就我们可以看到probe帧包含了设备的mac地址,当我们的AP接收到probe帧之后就获取了这个设备的MAC地址,而这个AP就是我们的WIFI探针。因此只要在WiFi探针覆盖区域内的设备打开着WiFi,探针就能收集到他的MAC地址。

    WiFi探针可以采集到哪些数据呢?
    可采集数据:

    • 设备MAC地址;
    • WiFi信号强度;
    • WiFi信号频道;
      -信号帧类型。
      记录格式:探针 MAC|抓取的设备 MAC|设备发送的 WiFi 包的类型|子类型|信号强度|时间戳


      image.png

    数据释义
    “探针MAC”就是探针本身的MAC地址;
    “抓取的设备MAC”指探针抓取到的WiFi信号的发射设备的MAC地址,一般为手机;
    “信号强度”指探针抓取到的WiFi信号的强度,最小值为“-100”,一般来说,此值越大表示发射设备离探针越近;
    “设备发送的WiFi包的类型”指探针抓取到的WiFi信号的类别,其末位数的值为0、4、8时,分别表示抓取到的WiFi信号为“管理”帧、“控制”帧、“数据”帧;
    “时间戳”指探针抓取到WiFi信号的时间,如果探针在局域网内使用而没有接入广域网的话,时间戳可能是不准确的。

    https://blog.csdn.net/isentech/article/details/73527657

    相关文章

      网友评论

          本文标题:WiFi探针的工作原理

          本文链接:https://www.haomeiwen.com/subject/tzydoqtx.html