ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

什么是一件配网?

2022-09-10 13:32:14  阅读:205  来源: 互联网

标签:微信 什么 wifi 一键 一件 hljs 配网 数据包


一键配网是个啥,干什么用的?

万物互联的时代,物联网是大势所趋了。是个设备就想要联网,但是也不能给每个设备都设计一个屏幕和键盘,首先成本太高,其次只用来输入wifi名字密码未免太浪费。最开始的解决办法就是让设备工作在AP模式,类似一个wifi路由器,手机连接AP,然后再打开通讯用的软件输入wifi名字密码。虽然可行,但总归还是有些许的麻烦。于是一键配网就诞生了,只要设备通电,然后局域网内广播一下(APP、扫码、微信等),设备就联网了。

设备没有连上wifi那它是如何接收到wifi名字和密码的呢?

不知道大家有没有发现,就是当我们打开手机的wifi,你会发现在网络列表,有很多wifi信息。即便我们不知道他们的密码,但是我们依然能获取到wifi的名字,以及一些其他的信息。

::: hljs-center
image.png
:::

对了没错,所谓的一键配网正是利用的这个信息。网络传送数据都是数据包的形式。说的直白一点wifi名字和一些其他信息也都是一些数据包。数据包有大有小,一键配网程序就会将这些可见数据包用大大小小大,小小大大大。转换成00110,11000。这个的格式来广播wifi的密码。然后 wifi设备将收到的连续数据包转换成密码就可以实现上网。当然了我只是方便大家理解这么举例,实际的过程要复杂的多。但是一键配网的核心就是利用了可见数据包的长度来进行的编码。

接下来我们就具体来演示一下配网的过程
首先我的手机和这台电脑处在同一wifi网络中,等待配网的wifi模块还未接入网络。此时接通模块电源,模块开始尝试用之前的wifi信息联网,但没有成功,联网失败后他就会进入SmartConfig模式等待配网。

::: hljs-center
image.png
:::

这时的模块工作在混杂模式,就像我们开始讲的那样,他能看到好多的wifi信息,但是无奈没有密码他一个也连不上。可以想象他现在是何等的绝望。这时我们在电脑端开启抓包工具,然后监听我们的局域网,接下来用我们的手机发送一键配网的数据包。下图就是我们监听到的网络数据包了。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TCR1cfEa-1660210863608)(https://upload-images.jianshu.io/upload_images/23281831-830e2571d3ea5dd4.png)]

数据比较多,我们把他们弄导入excel然后做一下分析。这里发送地址选择我们手机的ip,目的地址4个255也就是广播地址。剩下的这些数据就是配网软件发送的数据包了。根据我们前面的分析,配网的密码是用数据包的长度编码的,所以我们只需复制最后一列数据,然后删除没用的信息只保留len。

::: hljs-center
image.png
:::

接下来就让我看看这些数字都代表啥意思吧。首先开始是515.514.513.512的连续循环,表示数据开始发送。接着往下来,到这里前戏终于结束了,正片开始。但是这一堆的数字,看的头皮发麻啊。不方,数据每3个一组,我们先合并这3个单元格,然后输入我写好的函数。

::: hljs-center
image.png
:::

函数内容:

="序号"&OFFSET(INDIRECT("R"&ROW()&"C"&COLUMN(),),1,-1)&",数据:"&RIGHT(DEC2HEX(OFFSET(INDIRECT("R"&ROW()&"C"&COLUMN(),),2,-1)-40),1)

接着往下这样一拉,数据就整理好了。然后我们继续往下看这里len的305的数据是1,306是4,中间这个连不上号的是校验位不用管他,ái,继续往下307,308一直到这里。发现了没有从len305-313存储的正是我们的wifi密码,而这也确实证明了我们之前说的理论。

::: hljs-center
image.png
:::

理论知识说完了,那我们就来看看微信扫码一键配网是如何实现的
实现一件配网的方法有很多,比如厂家的APP、安信可公众号、微信Airkiss等等。这里我们来说一说微信的扫描一件配网。其实二维码包含的只是一个链接,扫码只是打开这个链接而已,如果我们提取二维码的链接,然后发送到微信,也是可以实现同样功能的。而真正实现一键配网的是微信的airkiss技术,注意这里最早使用这个技术的是TI这家公司,也就是德州仪器。注意哈不是山东德州,而是美国的德克萨斯州,并且用到了他们的CC3000系列芯片上。

::: hljs-center
image.png
:::

当然乐鑫ESP8266也支持这个技术并起名SmartConfig。就是我们之前视频讲过的。而微信将她取名airkiss,不得不说微信真是文艺啊,但是基本原理是差不多的。只是使用微信的这个技术需要自己的服务器。认证的公众号等等条件。但是不要怕,即便是个人用户也可以申请测试号,来体验这个功能。这个就是我测试号实现的二维码。现在扫码也是可以用的。而我之前分享给大家的这个二维码是安信可科技提供的。从上面提取的网址域名也可以看出,相对比较稳定,大家可以放心使用。

标签:微信,什么,wifi,一键,一件,hljs,配网,数据包
来源: https://www.cnblogs.com/little-monster-lhq/p/16676344.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有