Посмотреть исходный код на GitHub

Для ввода в эксплуатацию требуется одно устройство с ролью «Комиссар» и одно устройство с ролью «Присоединяющийся». «Комиссар» — это либо устройство Thread в существующей сети Thread, либо устройство, находящееся вне сети Thread (например, мобильный телефон), выполняющее роль «Комиссара». «Присоединяющийся» — это устройство, желающее присоединиться к сети Thread.
Устройство Thread Commissioner используется для аутентификации устройства в сети. Оно не передает и не владеет учетными данными сети Thread, такими как сетевой ключ.
В этом руководстве описаны базовые этапы ввода в эксплуатацию внутрисетевой инфраструктуры без использования внешнего модуля ввода в эксплуатацию или маршрутизатора границ. Чтобы узнать, как использовать внешний модуль ввода в эксплуатацию, см. раздел «Ввод в эксплуатацию внешних потоков» .
Пример ввода в эксплуатацию с использованием виртуальных устройств можно найти в практическом руководстве по моделированию OpenThread .
Включить роли
Для активации ролей «Комиссар» и «Присоединяющийся» используйте следующие параметры cmake:
| Вариант | Описание |
|---|---|
-DOT_COMMISSIONER=ON | Позволяет выполнять роль комиссара. |
-DOT_JOINER=ON | Включает роль "Присоединяющийся" |
Например, чтобы создать демонстрационную платформу CC2538, предназначенную исключительно для использования в качестве соединителя:
./script/build -DOT_JOINER=ON
Запишите каждый исполняемый файл на нужное устройство. Одно устройство выступает в роли Комиссара, другое — в роли Присоединяющегося.
Подробные инструкции по сборке и прошивке поддерживаемых платформ можно найти в репозитории OpenThread для каждой платформы. Чтобы найти репозиторий, обратитесь к организации OpenThread на GitHub .
Создайте сеть
Создайте сеть на устройстве, выполняющем функции Уполномоченного:
dataset init newDonedatasetActive 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 activeDoneifconfig upDonethread startDone
Подождите несколько секунд и убедитесь, что устройство стало лидером потока:
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 joiner add 2f57d222545271f1 J01NME
Done
Начните работу в должности плотника.
На устройстве, используемом в качестве «Присоединяющегося», выполните сброс до заводских настроек, затем активируйте роль «Присоединяющегося», используя те же учетные данные, что и на устройстве «Уполномоченный»:
factoryresetifconfig upDonejoiner start J01NMEDone
Подождите несколько секунд для подтверждения:
Join success!
Устройство Joiner успешно прошло аутентификацию у Комиссара и получило учетные данные сети Thread Network.
Теперь запустите Thread на устройстве Joiner:
thread start
Done
Проверка подлинности
Проверьте состояние устройства Joiner, чтобы убедиться, что оно подключилось к сети. В течение двух минут состояние меняется с "дочернее" на "маршрутизатор":
statechild Done ...staterouter Done
Посмотреть исходный код на GitHub

Для ввода в эксплуатацию требуется одно устройство с ролью «Комиссар» и одно устройство с ролью «Присоединяющийся». «Комиссар» — это либо устройство Thread в существующей сети Thread, либо устройство, находящееся вне сети Thread (например, мобильный телефон), выполняющее роль «Комиссара». «Присоединяющийся» — это устройство, желающее присоединиться к сети Thread.
Устройство Thread Commissioner используется для аутентификации устройства в сети. Оно не передает и не владеет учетными данными сети Thread, такими как сетевой ключ.
В этом руководстве описаны базовые этапы ввода в эксплуатацию внутрисетевой инфраструктуры без использования внешнего модуля ввода в эксплуатацию или маршрутизатора границ. Чтобы узнать, как использовать внешний модуль ввода в эксплуатацию, см. раздел «Ввод в эксплуатацию внешних потоков» .
Пример ввода в эксплуатацию с использованием виртуальных устройств можно найти в практическом руководстве по моделированию OpenThread .
Включить роли
Для активации ролей «Комиссар» и «Присоединяющийся» используйте следующие параметры cmake:
| Вариант | Описание |
|---|---|
-DOT_COMMISSIONER=ON | Позволяет выполнять роль комиссара. |
-DOT_JOINER=ON | Включает роль "Присоединяющийся" |
Например, чтобы создать демонстрационную платформу CC2538, предназначенную исключительно для использования в качестве соединителя:
./script/build -DOT_JOINER=ON
Запишите каждый исполняемый файл на нужное устройство. Одно устройство выступает в роли Комиссара, другое — в роли Присоединяющегося.
Подробные инструкции по сборке и прошивке поддерживаемых платформ можно найти в репозитории OpenThread для каждой платформы. Чтобы найти репозиторий, обратитесь к организации OpenThread на GitHub .
Создайте сеть
Создайте сеть на устройстве, выполняющем функции Уполномоченного:
dataset init newDonedatasetActive 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 activeDoneifconfig upDonethread startDone
Подождите несколько секунд и убедитесь, что устройство стало лидером потока:
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 joiner add 2f57d222545271f1 J01NME
Done
Начните работу в должности плотника.
На устройстве, используемом в качестве «Присоединяющегося», выполните сброс до заводских настроек, затем активируйте роль «Присоединяющегося», используя те же учетные данные, что и на устройстве «Уполномоченный»:
factoryresetifconfig upDonejoiner start J01NMEDone
Подождите несколько секунд для подтверждения:
Join success!
Устройство Joiner успешно прошло аутентификацию у Комиссара и получило учетные данные сети Thread Network.
Теперь запустите Thread на устройстве Joiner:
thread start
Done
Проверка подлинности
Проверьте состояние устройства Joiner, чтобы убедиться, что оно подключилось к сети. В течение двух минут состояние меняется с "дочернее" на "маршрутизатор":
statechild Done ...staterouter Done