Mesh-Netzwerk-Inbetriebnahme

<ph type="x-smartling-placeholder"></ph> Quelle auf GitHub ansehen

Beauftragte und Tischler

Für die Inbetriebnahme sind ein Gerät mit der Rolle „Beauftragter“ und ein Gerät erforderlich mit der Rolle „Joiner“. Der Commissioner ist entweder ein Thread-Gerät in einem bestehenden Thread-Netzwerk oder ein Gerät außerhalb des Thread-Netzwerks (z. B. die die Rolle des Beauftragten ausüben. Der Teilnehmende ist das Gerät die dem Thread-Netzwerk beitreten möchten.

Mit einem Thread Commissioner wird ein Gerät im Netzwerk authentifiziert. Er tut Folgendes: Thread-Netzwerkanmeldedaten wie das Netzwerk nicht übertragen oder im Besitz dieser Anmeldedaten sind. .

Dieser Leitfaden behandelt die grundlegende Inbetriebnahme am Netzwerk ohne externen Beauftragten. oder Border Router. Informationen zur Verwendung eines externen Beauftragten finden Sie unter Extern: Thread-Inbetriebnahme.

Ein Beispiel für die Inbetriebnahme mit virtuellen Geräten finden Sie auf der OpenThread-Simulations-Codelab

Rollen aktivieren

Verwenden Sie die folgenden Optionen, um die Rollen „Provisioner“ und „Joiner“ zu aktivieren:

Option Beschreibung
-DOT_COMMISSIONER=ON Aktiviert die Rolle „Provisioner“
-DOT_JOINER=ON Aktiviert die Joiner-Rolle

So erstellen Sie beispielsweise die CC2538-Beispielplattform, die nur als Joiner verwendet werden soll:

./script/build -DOT_JOINER=ON

Jedes Binärprogramm wird für das gewünschte Gerät flashen. Ein Gerät dient als „Beauftragter“, als JOINer.

Spezifische Anweisungen zum Erstellen und Flashen unterstützter Plattformen finden Sie hier: im OpenThread-Repository jeder Plattform. Das Repository finden Sie in der GitHub-Organisation zu OpenThread.

Netzwerk erstellen

Erstellen Sie auf dem Gerät ein Netzwerk, das als Beauftragter fungiert:

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

Warten Sie einige Sekunden und prüfen Sie, ob das Gerät ein Thread-Leader wurde:

state
leader
Done

Rolle „Beauftragte“ übernehmen

Weisen Sie auf demselben Gerät die Rolle „Beauftragter“ zu:

commissioner start
Done

Verwenden Sie den Platzhalter *, damit jeder Join-Nutzer mit den angegebenen Anmeldedaten folgende Schritte ausführen kann: auf das Netzwerk zu übertragen. Es werden die Joiner-Anmeldedaten (zusammen mit den erweiterte PAN-ID und Netzwerkname), um den vorinstallierten Schlüssel für das Gerät zu generieren . Der PSKd wird dann zur Authentifizierung eines Geräts während des Threads verwendet Inbetriebnahme. Die Joiner-Anmeldedaten sollten für jedes Gerät eindeutig sein.

commissioner joiner add * J01NME
Done

Auf einen bestimmten Joiner beschränken

Um die Inbetriebnahme auf ein bestimmtes Joiner-Gerät zu beschränken, verwenden Sie die eui64 Parameter, der dem werkseitig zugewiesenen IEEE EUI-64 des Geräts entspricht.

Rufen Sie den EUI-64 auf dem Gerät ab, das als Joiner dient:

eui64
2f57d222545271f1
Done

Verwenden Sie diesen Wert anstelle des Platzhalters * im commissioner joiner-Befehl für das Gerät des Commissioner:

commissioner joiner add 2f57d222545271f1 J01NME
Done

Einstiegsrolle starten

Setzen Sie das Gerät, das als Joiner dient, auf die Werkseinstellungen zurück und aktivieren Sie dann Joiner-Rolle mit denselben Anmeldedaten, die im Kommissar angegeben sind:

factoryreset
ifconfig up
Done
joiner start J01NME
Done

Warten Sie einige Sekunden auf die Bestätigung:

Join success!

Das Gerät des Teilnehmenden hat sich beim Beauftragten authentifiziert. und hat Anmeldedaten für das Thread-Netzwerk erhalten.

Starten Sie Thread auf dem Joiner-Gerät:

thread start
Done

Authentifizierung validieren

Prüfen Sie den Status des Joiner-Geräts, um sicherzustellen, dass es dem Netzwerk. Innerhalb von zwei Minuten wechselt der Status von „Child“ zu „Router“:

state
child
Done
...
state
router
Done