Prowizje w sieci typu mesh

Wyświetl źródło na GitHubie

Komisarz i stolarz

Prowizja wymaga jednego urządzenia z rolą „komisarz” i jednego urządzenia z rolą „Łącznik”. Komisarz jest urządzeniem z wątku w istniejącej sieci Thread lub z urządzeniem spoza sieci Thread (na przykład telefon komórkowy), który pełni tę funkcję. Łącznik to urządzenie, które chce dołączyć do sieci Thread.

Do uwierzytelniania urządzenia w sieci służy komisarz do tworzenia wątków. Nie przekazuje ani nie ma danych logowania do sieci Thread, takich jak klucz sieci.

W tym przewodniku znajdziesz podstawowe informacje o działaniu w trybie mesh, bez korzystania z zewnętrznej usługi Commissioner czy Border Router. Aby dowiedzieć się, jak korzystać z zewnętrznego komisarza, zapoznaj się z artykułem zewnętrzne komendy do tworzenia wątków.

Przykładowe instrukcje zastosowania urządzeń wirtualnych znajdziesz w ćwiczeniach z symulacji utworzonych przez OpenThread.

Włącz role

Aby włączyć role Komisarza i Łącznika, skorzystaj z tych opcji:

Opcja Opis
-DOT_COMMISSIONER=ON Włącza rolę „komisarza”
-DOT_JOINER=ON Włącza rolę Łącznika

Aby na przykład utworzyć przykładową platformę CC2538 używaną tylko jako pomocnik:

./script/build -DOT_JOINER=ON

Przesyłaj pliki binarne do wybranego urządzenia. Jedno urządzenie pełni rolę komisarza, a drugie – łącznika.

Szczegółowe instrukcje dotyczące tworzenia i migotania obsługiwanych platform można znaleźć w każdym repozytorium platformy OpenThread. Znajdź repozytorium na stronie OpenThread GitHub.

Utworzenie sieci

Utwórz na urządzeniu sieć działającą jako komisarz:

dataset init new
Done
dataset
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
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

Zaczekaj kilka sekund i sprawdź, czy urządzenie zostało liderem w wątku:

state
leader
Done

Rozpocznij rolę Komisarza

Na tym samym urządzeniu uruchom rolę Komisarza:

commissioner start
Done

Użyj symbolu wieloznacznego *, aby umożliwić dowolnej osobie łączącej określone dane logowania dołączenia w celu uzyskania dostępu do sieci. Dane logowania łącznika są używane (wraz z rozszerzonym identyfikatorem PAN i nazwą sieci) do wygenerowania klucza PSK dla urządzenia. Klucz PSKD służy następnie do uwierzytelniania urządzenia podczas wykonywania poleceń dotyczących wątków. Dane logowania osoby dołączającej powinny być unikalne dla każdego urządzenia.

commissioner joiner add * J01NME
Done

Ogranicz do określonego uczestnika

Aby ograniczyć prowizję do konkretnego urządzenia wspólnika, użyj parametru eui64, który jest przypisany przez IEEE EUI-64.

Na urządzeniu obsługującym tę funkcję pobierz EUI-64:

eui64
2f57d222545271f1
Done

Użyj tej wartości zamiast symbolu wieloznacznego * w poleceniu commissioner joiner na urządzeniu Commissioner:

commissioner joiner add 2f57d222545271f1 J01NME
Done

Rozpoczynanie roli Łącznika

Na urządzeniu, które pełni funkcję łącznika, przywróć ustawienia fabryczne, a następnie włącz rolę złącza z tymi samymi danymi logowania, które są określone w Komisarzu:

factoryreset
ifconfig up
Done
joiner start J01NME
Done

Poczekaj kilka sekund na potwierdzenie:

Join success!

Urządzenie uwierzytelniające zostało uwierzytelnione za pomocą narzędzia Commissioner i otrzymało dane logowania do sieci Thread.

Teraz uruchom wątek na urządzeniu łączącym:

thread start
Done

Zweryfikuj uwierzytelnianie

Sprawdź stan na urządzeniu łączącym, aby się upewnić, że dołączył do sieci. W ciągu 2 minut stan przechodzi z urządzenia podrzędnego do routera:

state
child
Done
...
state
router
Done