Do wdrożenia wymagane jest jedno urządzenie z rolą komisarza i jedno urządzenie z rolą osoby dołączającej. Komisarz to urządzenie Thread w dotychczasowej sieci Thread lub urządzenie zewnętrzne do sieci Thread (np. telefon komórkowy), które pełni rolę Komisarza. Joiner to urządzenie, które chce dołączyć do sieci Thread.
Komisarz ds. wątków służy do uwierzytelniania urządzenia w sieci. Nie przesyła danych logowania do sieci Thread, takich jak klucz sieciowy, ani nie posiada.
Ten przewodnik dotyczy podstawowej konfiguracji w sieci bez zewnętrznego urządzenia Commissioner lub Border Router. Aby dowiedzieć się, jak korzystać z zewnętrznego zleceniodawcy, przeczytaj artykuł Zlecanie wątków zewnętrznym zleceniodawcom.
Przykład uruchamiania przy użyciu urządzeń wirtualnych znajdziesz w ćwiczeniach z programowania symulacji OpenThread (w języku angielskim).
Włącz role
Aby włączyć role komisarza i osoby dołączającej, użyj tych opcji cmake:
Opcja | Opis |
---|---|
-DOT_COMMISSIONER=ON |
Rola komisarza |
-DOT_JOINER=ON |
Umożliwia rolę dołączającego |
Aby na przykład utworzyć platformę przykładową CC2538 do użytku tylko jako łącznik:
./script/build -DOT_JOINER=ON
Wgraj każdy plik binarny na odpowiednie urządzenie. Jedno z nich służy komisarzowi, a drugie Łącznikowi.
Szczegółowe instrukcje dotyczące kompilowania i flashowania obsługiwanych platform znajdziesz w repozytorium OpenThread każdej platformy. Aby znaleźć repozytorium, przejdź do organizacji OpenThread na GitHubie.
Utwórz sieć
Utwórz sieć na urządzeniu działającym jako Komisja:
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
Poczekaj kilka sekund i sprawdź, czy urządzenie stało się liderem wątku:
state
leader
Done
Rozpoczynanie korzystania z roli komisarza
Na tym samym urządzeniu uruchom rolę komisarza:
commissioner start
Done
Użyj symbolu wieloznacznego *, aby zezwolić dowolnemu łącznikowi z określonymi danymi logowania do sieci. Użytkownik musi podać swoje dane logowania (wraz z rozszerzonym identyfikatorem PAN i nazwą sieci), aby wygenerować klucz PSK urządzenia. PSKd jest następnie używany do uwierzytelniania urządzenia podczas konfiguracji Thread. Uprawnienia dołączającego powinny być unikalne dla każdego urządzenia.
commissioner joiner add * J01NME
Done
Ogranicz do określonego użytkownika.
Aby ograniczyć konfigurowanie do konkretnego urządzenia Joiner, użyj parametru eui64
, który jest przypisanym fabrycznie identyfikatorem IEEE EUI-64 urządzenia.
Na urządzeniu pełniącym rolę łącznika uzyskaj identyfikator EUI-64:
eui64
2f57d222545271f1
Done
Użyj tej wartości zamiast symbolu wieloznacznego * w poleceniu commissioner joiner
na urządzeniu komisarza:
commissioner joiner add 2f57d222545271f1 J01NME
Done
Rozpoczynanie roli Łącznik
Na urządzeniu pełniącym rolę urządzenia dołączającego przywróć ustawienia fabryczne, a następnie włącz rolę urządzenia dołączającego z takimi samymi poświadczeniami tożsamości, które zostały określone w przypadku urządzenia głównego:
factoryreset
ifconfig up
Donejoiner start J01NME
Done
Zaczekaj kilka sekund na potwierdzenie:
Join success!
Urządzenie dołączające zostało uwierzytelnione przez administratora i otrzymało dane logowania do sieci Thread.
Teraz uruchom Thread na urządzeniu z Joinerem:
thread start
Done
Weryfikowanie uwierzytelniania
Sprawdź stan urządzenia dołączającego, aby potwierdzić, że zostało ono dołączone do sieci. W ciągu 2 minut stan zmienia się z podrzędnego na router:
state
child Done ...state
router Done