在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

分享一種實用的配網方案!

Linux大陸 ? 來源:Linux大陸 ? 2023-02-09 09:25 ? 次閱讀

大家好,我是LinuxZn。

什么是SmartLink?

項目需要用到smartconfig,之前我也沒接觸過,查資料了解的過程發現了一個好東西——SmartLink,分享給大家。

SmartLink是一個在Linux下實現的smartconfig。

倉庫鏈接:

https://github.com/jolin90/smartconfig

SmartLink的介紹及使用

1、相關知識補充

在介紹SmartLink的使用之前,我們先補充點相關知識。

(1)什么是smartconfig?

以wifi智能插座來做說明。我們剛買回來的智能插座,第一步要做的就是給設備進行配網。

配網方式有很多,smartconfig就是其中一種:

e76bb8de-a7e2-11ed-bfe3-dac502259ad0.pnge7aabaca-a7e2-11ed-bfe3-dac502259ad0.jpg

圖片來源:物聯網電子世界

手機發送UDP廣播報文,待配網設備掃描所有的可用無線信道,找到發送smartConfig的報文,并鎖定在這一信道上開始接受數據。

(2)網卡工作模式

廣播模式:物理地址(MAC)是0Xffffff的幀為廣播幀,工作在廣播模式的網卡接收廣播幀。

多播模式:如果將網卡設置為多播模式,它可以接收所有的多播傳送幀,而不論他是不是組內成員。

直接模式:只接收目的地址是自己MAC地址的幀。

混雜模式:工作在混雜模式下的網卡接收所有流經網卡的幀。

查看、設置、取消混雜模式命令如:

ifconfigwlan0#查看wlan0是否為混雜模式
ifconfigwlan0promisc#設置wlan0為混雜模式
ifconfigwlan0-promisc#取消wlan0混雜模式
e7d2ca10-a7e2-11ed-bfe3-dac502259ad0.png

(3)通信方式

通信方式分類:

單播:單臺主機與單臺主機之間的通信;

廣播:單臺主機與網絡中所有主機的通信;

組播:單臺主機與選定的一組主機的通信;

IP 網絡的組播一般通過組播 IP 地址來實現,組播 IP 地址就是 D 類 IP 地址,即 224.0.0.0 至 239.255.255.255 之間的IP地址。

2、SmartLink使用

下載得到:

e7f98b46-a7e2-11ed-bfe3-dac502259ad0.png

我們使用arm板子來做實驗。首先,需要交叉編譯,執行命令:

makeCC=arm-linux-gnueabihf-gcc

把編譯生成的smartlink可執行程序傳到板子里。運行時需要跟上接口的名稱。如:

./smartlinkwlan0

然后執行如下命令重新編譯:

makeclean
make

生成的mcast_app可執行程序在pc上運行,模擬手機APP發送。運行時需要傳入WiFi名稱及密碼。如:

./mcast_appTenda_552F180987654321

測試時需要先運行mcast_app,再運行smartlink。smartlink收到WiFi名稱及密碼時會打印出來。

運行結果如:

e831df82-a7e2-11ed-bfe3-dac502259ad0.png

這里,使用mcast_app來模擬手機APP。smartlink也提供了一個簡易的安卓手機APP,也可以使用APP進行測試:

e8429840-a7e2-11ed-bfe3-dac502259ad0.png

4、SmartLink組播包協議分析

上面演示了SmartLink的使用,下面簡單介紹一些SmartLink的組播包協議。

APP發送特定協議的組播包數據給設備,設備收到后進行解析獲取路由器SSID及密碼。其協議如:

每個數據包6個字節,

第1~3字節:組播包地址,為固定值0x01 0x00 0x5e。

第4字節:數據包序號。

第5字節:指定數據。

第6個字節:指定數據。

每次傳輸若干字節。舉例說明:

SSID為"TP-LINK_hys" ,PSW為"12345678",發送組播地址如下:

0x010x000x5e0x000x480x35
0x010x000x5e0x010x680x2b
0x010x000x5e0x020x5c0x31
0x010x000x5e0x030x0b0x08
0x010x000x5e0x04'T''1'
0x010x000x5e0x05'P''2'
0x010x000x5e0x06'-''3'
0x010x000x5e0x07'L''4'
0x010x000x5e0x08'I''5'
0x010x000x5e0x09'N''6'
0x010x000x5e0x0a'K''7'
0x010x000x5e0x0b'_''8'
0x010x000x5e0x0c'h'0x00
0x010x000x5e0x0d'y'0x00
0x010x000x5e0x0e's'0x00
0x010x000x5e0x400x1c0x03

其中:

(1)第1~3包數據,為特征碼包,后三個字節由組播IP映射為為組播MAC。取組播IP的后23位作為MAC,映射圖如:

e8565132-a7e2-11ed-bfe3-dac502259ad0.png

圖片來源:jasonj33的博客

這里,手機APP設置的組播IP固定如:

#defineIPADDR_KEY0"224.0.72.53"/*key0000035*/
#defineIPADDR_KEY1"224.1.104.43"/*key100012b*/
#defineIPADDR_KEY2"224.2.92.49"/*key2000231*/

組播IP映射為組播MAC,得到:

取后23位即為0.72.53對應16進制為00:48:35
取后23位即為1.104.43對應16進制為01:68:2b
取后23位即為2.92.49對應16進制為02:5c:31

(2)第4包數據放的是SSID及PSW的長度。

(3)第5~15包數據放的則是SSID及PSW。

(4)第16包數據為校驗碼,采用連續異或校驗的方式:

Crc=Crc^0x01^(byte)0x5e^0x40

以上就是本次的分享。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11326

    瀏覽量

    209961
  • WIFI
    +關注

    關注

    81

    文章

    5301

    瀏覽量

    204208
  • 配網
    +關注

    關注

    0

    文章

    155

    瀏覽量

    9077
  • 智能插座
    +關注

    關注

    5

    文章

    194

    瀏覽量

    27759
  • SmartLINK
    +關注

    關注

    0

    文章

    5

    瀏覽量

    2316

原文標題:分享一種實用的配網方案!

文章出處:【微信號:Linux大陸,微信公眾號:Linux大陸】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    在官的WiFi/smart_config中把的任務改成個函數,為什么不能

    官方寫的是任務,我想把任務改成個函數,結果發現
    發表于 06-19 06:08

    一種中頻直接采樣方案

    一種中頻直接采樣方案
    發表于 11-25 15:47

    分享一種實用的WiFi語音解決方案

    分享一種實用的WiFi語音解決方案
    發表于 05-19 06:49

    分享一種工業以太控制方案

    分享一種工業以太控制方案
    發表于 05-20 06:31

    分享一種LT4275 90W以太受電控制方案

    分享一種LT4275 90W以太受電控制方案
    發表于 05-25 07:00

    請問怎樣去設計一種變自動化系統?

    怎樣去設計一種基于GPRS無線通信的變自動化系統?
    發表于 05-27 07:12

    分享一種不錯的無線熱監測系統方案

    分享一種不錯的無線熱監測系統方案
    發表于 05-31 06:45

    分享一種不錯的基于公共交換電話的智能家居系統的總體方案

    本文分析了智能家居的相關技術現狀,提出了一種基于公共交換電話的智能家居系統的總體方案,闡述了該系統的工作原理及軟硬件的設計方法與過程。
    發表于 06-15 09:13

    在官的WiFi/smart_config中把的任務改成個函數為什么不了?

    官方寫的是任務,我想把任務改成個函數,結果發現
    發表于 02-16 06:24

    一種基于動態蜜罐和實時仿真的蜜設計

    本文提出一種新的、基于動態蜜罐和實時仿真入侵目標的蜜設計方案,并對方案的安全性進行了分析。采用該蜜設計
    發表于 05-25 14:57 ?13次下載

    自動化系統混合通信方案

    提出了一種 自動化 系統混合通信方案。該方案
    發表于 08-09 16:05 ?25次下載
    <b class='flag-5'>配</b><b class='flag-5'>網</b>自動化系統混合通信<b class='flag-5'>方案</b>

    一種LED路燈方案

    LED路燈 光 是使光線盡可能投射到被照路面各個區域,獲得符合道路照明要求的光分布,LED路燈光設計是否準確到位是其能否替代傳統路燈的關鍵因素之。研究LED路燈光對今后
    發表于 10-17 14:32 ?5055次閱讀
    <b class='flag-5'>一種</b>LED路燈<b class='flag-5'>配</b>光<b class='flag-5'>方案</b>

    一種基于無線傳感的遠程自動抄表系統的設計方案

    本文從系統構成、網絡協議棧以及硬件平臺等方面,介紹了一種基于無線傳感的遠程自動抄表系統的設計方案。該
    的頭像 發表于 04-27 17:33 ?4049次閱讀

    介紹一種神經場成對準的技術NeRF2NeRF

    我們介紹了一種神經場成對準的技術,它擴展了基于優化的經典局部準(即ICP)以操作神經輻射場(NeRF)。
    的頭像 發表于 02-20 10:29 ?667次閱讀

    一種終端電池智能檢測存儲裝置的探索與研究

    介紹了一種終端電池智能檢測存儲裝置,其以可編輯控制器和控制電路為主體,以繼電器、觸摸屏、傳感器為輔助
    的頭像 發表于 04-19 18:12 ?1072次閱讀
    主站蜘蛛池模板: 欧美在线观看一区二区三| 黄频免费| 五月情网| 香蕉爱爱网| 一本大道香蕉大vr在线吗视频| 国产欧美亚洲精品第二区首页 | 国产精品福利一区| 成人午夜网站| 中文在线1区二区六区| 人人九九精品| 久久草在线精品| 2021久久精品国产99国产| 天天操夜夜操狠狠操| 高清激情小视频在线观看| 丁香五婷婷| 午夜影剧| 久久99爱爱| 久久影视免费体验区午夜啪啪 | brazzers720欧美丰满| 快色视频免费观看| 国产精品四虎| 婷婷综合网站| 成人午夜网站| 久久99久久精品国产只有| 午夜宅男视频| 欧美性另类69xxx| 国产成人一区二区三中文| 天天爱天天做久久天天狠狼| 福利视频自拍| 狠狠操狠狠操| 精品久草| 亚洲一区在线视频观看| 亚洲欧美国产视频| 欧美日韩一区二区三区视频在线观看 | 美女扒开尿口给男人桶动态图| 亚洲a免费| 毛色毛片| 精品国产污网站在线观看15| aa黄色大片| 国产精品久久久久影院免费| 视频一区二区三区在线观看|