Für die Inbetriebnahme sind ein Gerät mit der Rolle „Commissioner“ und ein Gerät mit der Rolle „Joiner“ erforderlich. Der Commissioner ist entweder ein Thread-Gerät in einem bestehenden Thread-Netzwerk oder ein Gerät außerhalb des Thread-Netzwerks (z. B. ein Mobiltelefon), das die Rolle des Commissioners übernimmt. Der Joiner ist das Gerät, das dem Thread-Netzwerk beitreten möchte.
Ein Thread-Commissioner wird verwendet, um ein Gerät im Netzwerk zu authentifizieren. Er überträgt oder besitzt keine Anmeldedaten für das Thread-Netzwerk, z. B. den Netzwerkschlüssel.
In dieser Anleitung wird die grundlegende Inbetriebnahme im Netzwerk ohne externen Commissioner oder Border Router beschrieben. Informationen zur Verwendung eines externen Commissioners finden Sie unter Externe Thread-Inbetriebnahme.
Ein Beispiel für die Inbetriebnahme mit virtuellen Geräten finden Sie im OpenThread-Simulations-Codelab.
Rollen aktivieren
Verwenden Sie die folgenden CMake-Optionen, um die Rollen „Commissioner“ und „Joiner“ zu aktivieren:
| Option | Beschreibung |
|---|---|
-DOT_COMMISSIONER=ON |
Aktiviert die Rolle „Commissioner“ |
-DOT_JOINER=ON |
Aktiviert die Rolle „Joiner“ |
So erstellen Sie beispielsweise die CC2538-Beispielplattform nur zur Verwendung als Joiner:
./script/build -DOT_JOINER=ON
Flashen Sie jede Binärdatei auf das gewünschte Gerät. Ein Gerät dient als Commissioner, das andere als Joiner.
Eine detaillierte Anleitung zum Erstellen und Flashen unterstützter Plattformen finden Sie im OpenThread-Repository der jeweiligen Plattform. Das Repository finden Sie in der OpenThread-GitHub-Organisation.
Netzwerk erstellen
Erstellen Sie ein Netzwerk auf dem Gerät, das als Commissioner fungiert:
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
Warten Sie einige Sekunden und prüfen Sie, ob das Gerät zu einem Thread-Leader geworden ist:
state
leader
Done
Commissioner-Rolle starten
Starten Sie auf demselben Gerät die Commissioner-Rolle:
commissioner start
Done
Mit dem Platzhalter „*“ können Sie jeden Joiner mit den angegebenen Joiner-Anmeldedaten im Netzwerk in Betrieb nehmen. Die Joiner-Anmeldedaten werden zusammen mit der erweiterten PAN-ID und dem Netzwerknamen verwendet, um den vorinstallierten Schlüssel für das Gerät (Pre-Shared Key for the Device, PSKd) zu generieren. Der PSKd wird dann verwendet, um ein Gerät während der Thread-Inbetriebnahme zu authentifizieren. Die Joiner-Anmeldedaten müssen für jedes Gerät eindeutig sein.
commissioner joiner add * J01NME
Done
Auf einen bestimmten Joiner beschränken
Wenn Sie die Inbetriebnahme auf ein bestimmtes Joiner-Gerät beschränken möchten, verwenden Sie den Parameter eui64. Das ist die vom Hersteller zugewiesene IEEE EUI-64 des Geräts.
Rufen Sie auf dem Gerät, das als Joiner fungiert, die EUI-64 ab:
eui64
2f57d222545271f1
Done
Verwenden Sie diesen Wert anstelle des Platzhalters „*“ im Befehl commissioner joiner auf dem Commissioner-Gerät:
commissioner joiner add 2f57d222545271f1 J01NME
Done
Joiner-Rolle starten
Setzen Sie das Gerät, das als Joiner fungiert, auf die Werkseinstellungen zurück und aktivieren Sie dann die Joiner-Rolle mit denselben Joiner-Anmeldedaten, die auf dem Commissioner angegeben wurden:
factoryresetifconfig upDonejoiner start J01NMEDone
Warten Sie einige Sekunden auf die Bestätigung:
Join success!
Das Joiner-Gerät wurde erfolgreich beim Commissioner authentifiziert und hat Anmeldedaten für das Thread-Netzwerk erhalten.
Starten Sie jetzt Thread auf dem Joiner-Gerät:
thread start
Done
Authentifizierung validieren
Prüfen Sie den Status auf dem Joiner-Gerät, um zu bestätigen, dass es dem Netzwerk beigetreten ist. Innerhalb von zwei Minuten ändert sich der Status von „child“ zu „router“:
statechild Done ...staterouter Done