微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 请问如果协调器开启加密,终端或路由不开启,那样还能成功组网么?

请问如果协调器开启加密,终端或路由不开启,那样还能成功组网么?

时间:10-02 整理:3721RD 点击:

遇到一个协调器源码未知,自己用终端节点去组网,发现无法成功。但是我自己的协调器和终端节点组网是OK的。所以怀疑是加密问题,或者有其他原因也希望能告知

1、若对协调器和终端都进行加密,且DEFAULT_KEY相同,则能成功组网,数据通信亦没有问题(抓包发现,数据都已被加密)。

2、若对协调器和终端都进行加密,但DEFAULT_KEY不同,则终端仍能加入网络,但大约8秒钟之后,终端会退出网络(调试发现,终端实际是进行了一次复位)。

3、若对协调器加密、对终端不加密,则终端仍能加入网络,但相互间发送的数据,对方都不会接收(或者接手之后直接丢弃)。

要怎样做才能使未加密、或者KEY不同的终端无法加入网络?

要怎样做才能是我经过加密的终端不会加入到那些未加密、或者KEY不同的网络?

答:这个过程是正常的,整个入网过程中,beacon requets/beacon/associate request /associate response 都是基于MAC的数据帧,所以没有加密的,在这个时候,如果使能加密的话,就会有认证这个过程,如果认证没有通过的话,节点不会发出来device Announce,所以入网没有成功。

所以说评判入网有没有成功是看最后的有没有发device Announce出来的。所以说未加密和key不同的终端,虽然可以分配到短地址,但是认证不会通过的,最后还是会退网。同样经过加密的终端也不会加入到密码不对的网络里面去。

答:根据测试,与你所讲的基本一致。似乎zstack只能在网络层进行加密(SECURE=1时,抓包发现网络层sec字段为1),而MAC层是不能加密的(SECURE=1时,抓包发现MAC层sec字段为0)。而入网过程都是在MAC层进行的,所以即使SECURE=1,这个过程仍然能通过。

若终端和协调器KEY不同,终端若一段时间未通过认证,会自动退出网络。(这样就能使我的终端不会连到别人的网络)

不过有一点好像不对:若终端未加密、协调器加密,我发现终端不会自动退出网络,且协调器也不会强制令终端退出,不过我的协调器在给这个终端分配了地址之后不会对它进行device Announce,且它们之后也不会进行通信(因为我的协调器已加密)。

引用自

https://www.cnblogs.com/mm327596194/articles/7098009.html

协调器源码未知?有可能是加密也有可能是协调器本身加入了一些入网限制

谢谢答复,应该来说即使是加密了也不会影响终端入网吧,只是无法通信吧。还是说连入网都会失败?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top