Посмотреть исходный код на GitHub
Для ввода в эксплуатацию требуется одно устройство с ролью комиссара и одно устройство с ролью участника. Комиссар — это либо устройство Thread в существующей сети Thread, либо устройство, внешнее по отношению к сети Thread (например, мобильный телефон), выполняющее роль комиссара. Joiner — это устройство, желающее присоединиться к сети Thread.
Комиссар потоков используется для аутентификации устройства в сети. Он не передает и не владеет сетевыми учетными данными Thread, такими как сетевой ключ.
В этом руководстве описывается базовый ввод в эксплуатацию в сети без внешнего комиссара или пограничного маршрутизатора. Чтобы узнать, как использовать внешний комиссар, см. Ввод в эксплуатацию внешнего потока .
Пример ввода в эксплуатацию с использованием виртуальных устройств см. в лаборатории OpenThread Simulation Codelab .
Включить роли
Чтобы включить роли Комиссара и Столяра, используйте следующие параметры cmake:
Вариант | Описание |
---|---|
-DOT_COMMISSIONER=ON | Включает роль комиссара |
-DOT_JOINER=ON | Включает роль Столяра |
Например, чтобы создать пример платформы CC2538 для использования только в качестве Столяра:
./script/build -DOT_JOINER=ON
Перенесите каждый двоичный файл на нужное устройство. Одно устройство выполняет роль Комиссара, другое — Столяра.
Конкретные инструкции по сборке и обновлению поддерживаемых платформ можно найти в репозитории OpenThread каждой платформы. Чтобы найти репозиторий, посетите организацию OpenThread GitHub .
Создать сеть
Создайте сеть на устройстве в роли Комиссара:
dataset init new
Donedataset
Active Timestamp: 1 Channel: 13 Channel Mask: 07fff800 Ext PAN ID: d63e8e3e495ebbc3 Mesh Local Prefix: fd3d:b50b:f96d:722d/64 Network Key: dfd34f0f05cad978ec4e32b0413038ff Network Name: OpenThread-8f28 PAN ID: 0x8f28 PSKc: c23a76e98f1a6483639b1ac1271e2e27 Security Policy: 0, onrcb Donedataset commit active
Doneifconfig up
Donethread start
Done
Подождите несколько секунд и убедитесь, что устройство стало лидером темы:
state
leader
Done
Начните роль комиссара
На том же устройстве запустите роль комиссара:
commissioner start
Done
Используйте подстановочный знак *, чтобы разрешить любому участнику с указанными учетными данными присоединиться к сети. Учетные данные присоединения используются (наряду с расширенным идентификатором PAN и сетевым именем) для создания предварительного общего ключа для устройства (PSKd). PSKd затем используется для аутентификации устройства во время ввода в эксплуатацию потока. Учетные данные участника должны быть уникальными для каждого устройства.
commissioner joiner add * J01NME
Done
Ограничить конкретным Столяром
Чтобы ограничить ввод в эксплуатацию конкретным устройством Joiner, используйте параметр eui64
, который соответствует стандарту IEEE EUI-64, присвоенному устройству на заводе.
На устройстве, выступающем в качестве Столяра, получите EUI-64:
eui64
2f57d222545271f1
Done
Используйте это значение вместо подстановочного знака * в команде commissioner joiner
на устройстве Commissioner:
commissioner joiner add 2f57d222545271f1 J01NME
Done
Начать роль Столяра
На устройстве, выступающем в качестве участника, выполните сброс настроек к заводским настройкам, затем включите роль участника с теми же учетными данными, которые указаны на устройстве комиссара:
factoryreset
ifconfig up
Donejoiner start J01NME
Done
Подождите несколько секунд для подтверждения:
Join success!
Устройство Joiner успешно прошло аутентификацию с помощью Commissioner и получило учетные данные Thread Network.
Теперь запустите Thread на устройстве Joiner:
thread start
Done
Подтвердить аутентификацию
Проверьте состояние устройства Joiner, чтобы убедиться, что оно подключено к сети. В течение двух минут состояние переходит от дочернего к маршрутизатору:
state
child Done ...state
router Done