本发明涉及虚拟ap和wifi采集技术,尤其涉及一种基于虚拟ap的wifi采集系统及其方法。
背景技术:
进入到21世纪,随着通信技术及移动互联网技术飞速发展,网络应用方式由过去单一的上网形式演变成丰富多样的业务应用,任何人的生活方式都无法与互联网完全脱离,无论从最基本的衣食住行,甚至工作学习等,都与互联网息息相关。中国作为网民数量大国,面对纷繁复杂的互联网世界,不像现实中能够看清暗礁险滩,飞沙走石。随着无线局域网技术的迅猛发展,wifi覆盖范围广、接入门槛低,这些特点使得wifi成为首选上网接入方式。上网过程中会产生大量的用户信息,如终端信息、位置信息、通信信息、网络购物信息、用户上网轨迹信息和用户认证信息等。在tcp/ip的架构中,mac地址扮演着非常重要的角色。在通信中,由mac地址标识的主机网卡,作为主机身份的硬件地址。每块网卡被生产出来后,都会有一个全球唯一的编号来标识自己,不会重复,这个编号就是mac地址,也就是网卡的物理地址。但是随着终端技术的发展,为了保护用户隐私安全,苹果ios9以上、华为p9等android7.0以上的主流智能终端设备开启了mac伪装功能,在某些特定情况下会发出伪mac且同一个终端每次链接ap发送出的伪mac还不唯一,无法对wifi上网终端用户信息进行有效关联,空口中大量存在的伪mac地址,极大的削弱了正常的wifi采集系统的作用,所以针对发送伪mac地址的手机终端,采集其真实的mac地址一直是需要解决的重要难点问题。持久的真实mac数据的积累,可以为数据挖掘和上层业务关联分析等提供数据支撑。
技术实现要素:
本发明的目的在于克服现有数据wifi采集系统的缺点和不足,提供一种基于虚拟ap的wifi采集系统及其方法,即:针对苹果ios9以上系统和部分android7.0以上系统发送伪mac地址的手机终端,利用虚拟ap嗅探方式诱发手机终端主动与虚拟ap完成扫描阶段信令协商,在进入到认证阶段时采集其真实的mac地址数据。
实现本发明目的技术方案是:
本发明利用了手机终端在打开wifi开关时,会主动链接曾经成功接入过的热点的技术原理,提出了一种利用虚拟ap设备发送手机连接过的热点信息,诱发发送伪mac地址的手机终端主动与虚拟ap设备进行通信信令协商,从而采集该手机终端真实mac地址的技术。随着终端技术的发展,为了保护用户隐私安全,苹果ios9以上、华为p9等android7.0以上的主流智能终端设备开启了mac伪装功能,在某些特定情况下会发出伪mac且同一个终端每次链接ap发送出的伪mac还不唯一。手机在打开wifi控制开关时,会优先扫描曾经连接过的热点信息。本发明正是利用该技术原理,在虚拟ap模块配置常用的热点名列表,以该热点名列表轮流间隔一段时间发送ap热点信号,在空口中广播该热点名信息。发送伪mac地址的手机终端随机化一个虚拟mac地址来代替自身真实的mac地址,手机用这个虚拟mac地址找到周围可能存在的热点。当虚拟ap设备发送该手机曾经链接过的热点信息后,手机终端启动与虚拟ap设备的信令接入流程,手机终端根据虚拟的mac地址发送proberequest(proberequest携带指定的ssid):因为客户端携带指定的ssid,只会单播发送探查请求帧(proberequest),虚拟ap接受到该虚拟mac地址发送的探查请求消息后回复探查响应消息,扫描阶段完成后,手机终端主动向虚拟ap发送携带真实mac地址的认证请求消息,此时数据采集模块完成对真实mac地址采集。
本发明是基于wifi海量前端采集大数据通过安全协议无线传输集群服务器数据中心分析处理系统。当今互联网发展壮大,针对数据量大的问题,能够采集大数据进行统一分析成为一项重要的课题。大数据处理基于集群服务器,在服务支撑方面实现业务与数据的解耦,保证业务的一致性、敏捷性和体系架构的灵活性。通过对数据、计算能力、分析模型等资源的服务化封装,实现全网互联,也实现业务和数据资源共享,从而为业务联动、业务扩展和业务创新提供有力保障。
一、基于虚拟ap的wifi采集系统
本系统包括依次交互的虚拟ap模块、数据采集模块、数据预处理模块、真伪mac地址过滤模块和数据中心模块;
虚拟ap模块配置手机终端接入热点名,同时提供wifi接入扫描阶段信令功能,诱发手机终端主动完成与虚拟ap进行扫描阶段信令流程协商,在关联阶段发射出真实的手机mac地址;
数据采集模块实现空口中无线wifi信号采集;
数据预处理模块完成mac地址数据清洗与过滤;
真伪mac地址过滤模块依据过滤规则完成真伪mac地址判断与过滤;
数据中心模块实现真实mac存储入库。
二、基于虚拟ap的wifi采集方法
①虚拟ap模块配置手机终端接入热点名,同时提供wifi接入扫描阶段信令功能,诱发手机终端主动完成与虚拟ap进行扫描阶段信令流程协商,在关联阶段发射出真实的手机mac地址;
②数据采集模块完成对覆盖区域内所有频道空口无线wifi数据的采集,对mac层以及mac层之上的协议数据进行解析,并对数据进行分类,将解析数据发送给数据预处理模块;
③数据预处理模块接收解析数据,对解析出的数据进行统一的流式标准化处理,并对crc等校验不合法数据进行非法数据清洗,将数据发送给真伪mac地址过滤模块进行过滤;
④真伪mac过滤模块是通过mac的定义判断mac是否合法,并结合全球组织唯一标识符oui库进行甄别区分,用于实时判断;
⑤数据中心模块对真伪mac地址判断模块过滤后的数据进行存储入库,并实现对业务数据的挖掘分析,为上层业务提供支撑。
本发明具有下列优点和积极效果:
①先进性,可以实现对发射伪mac地址的手机终端的真实mac地址的采集,有效的避免wifi采集系统采集到虚假的手机mac地址;
②数据具有可靠性;
③实用性;
④可扩展性,能够有效保护已有投资。
附图说明
图1是本系统的结构方框图;
其中:
100—虚拟ap模块;
200—数据采集模块;
300—数据预处理模块;
400—真伪mac地址过滤模块;
500—数据中心模块。
具体实施方式:
下面结合附图和实施例详细说明:
一、系统
1、总体
如图1,本系统包括依次交互的虚拟ap模块100、数据采集模块200、数据预处理模块300、真伪mac地址过滤模块400和数据中心模块500。
虚拟ap模块100配置手机终端接入热点名,同时提供wifi接入扫描阶段信令功能,诱发手机终端主动完成与虚拟ap进行扫描阶段信令流程协商,在关联阶段发射出真实的手机mac地址;
数据采集模块200实现空口中无线wifi信号采集;
数据预处理模块300完成mac地址数据清洗与过滤;
真伪mac地址过滤模块400依据过滤规则完成真伪mac地址判断与过滤;
数据中心模块500实现真实mac存储入库。
2、功能模块
1)虚拟ap模块100
虚拟ap模块100是一种提供ap信令协商功能且诱导手机终端发送真实mac地址的虚拟化ap技术。
2)数据采集模块200
数据采集模块200是一种wifi数据包采集与解析方法。
3)数据预处理模块300
数据预处理模块300是一种数据规范化输出方法。
4)真伪mac地址过滤模块400
真伪mac过滤规则模块400是一种伪mac过滤规则和算法。
5)数据中心模块500
数据中心模块500是一种数据存储和分析方法。
二、方法
1、步骤①:
a、在虚拟ap模块配置常用的热点名列表,以该热点名列表轮流间隔一段时间发送ap热点信号,在空口中广播该热点名信息;
b、发送伪mac地址的手机终端随机化一个虚拟mac地址来代替自身真实的mac地址,手机用这个虚拟mac地址找到周围可能存在的热点;当虚拟ap设备发送该手机曾经链接过的热点信息后,手机终端启动与虚拟ap设备的信令接入流程;
c、手机终端根据虚拟的mac地址发送proberequest(proberequest携带指定的ssid):因为客户端携带指定的ssid,只会单播发送探查请求帧(proberequest),虚拟ap接受到该虚拟mac地址发送的探查请求消息后回复探查响应消息,扫描阶段完成;
d、扫描阶段完成后,手机终端主动向虚拟ap发送携带真实mac地址的认证请求消息,此时数据采集模块完成对真实mac地址采集。
2、步骤②:
a、捕获空口中wifi数据包,包括捕获采集热点、终端以及用户上网数据包;
b、解析数据是解析被采集热点信息、终端信息和用户上网信息,并根据不同数据类型进行数据传输约束;
c、数据采集模块以tcp方式与数据预处理模块建立socket通信,数据预处理模块作为服务器端,按照制定的规范数据格式传输数据。
3、步骤③:
a、数据预处理模块作为socket服务端,与作为socket客户端的数据采集模块建立连接;
b、标准化处理包括热点数据、终端数据和用户上网数据,按照数据类型分类生成不同格式文件。
4、步骤④:
a、从数据预处理模块中读取mac地址数据,通过真伪mac判断规则判断真伪mac地址,将伪mac地址丢弃;
b、真伪mac地址判断规则为终端设备mac地址对应的品牌的第一个字节的第二位十六进制为{0,4,8,c}的是真mac,其余mac地址与全球组织唯一标识符oui库进行比对,存在该列表中为真,否则为伪mac地址。
5、步骤⑤:
a、针对真伪mac地址模块判断后为真的mac地址,将数据按照数据类型写入到不同的表中;
b、定时对数据做统计分析,并解析海量数据。