<ph type="x-smartling-placeholder"></ph>
Quelle auf GitHub ansehen
OpenThread bietet sowohl SRP-Server- als auch Clientfunktionen, sodass Geräte Registrieren von DNS-basierten Diensten mithilfe des standardmäßigen DNS-Updates, das als Unicast gesendet wird Pakete. Diese Funktion aktiviert die DNS-basierte Diensterkennung.
In diesem Leitfaden werden grundlegende Aufgaben beschrieben, für die einige der gebräuchlicheren srp server-Funktionen verwendet werden.
und srp client.
Befehle für SRP-Server
Geben Sie help ein, um eine Liste der srp server-Befehle aufzurufen:
srp server help
addrmode
auto
disable
domain
enable
help
host
lease
seqnum
service
state
Done
Befehle des SRP-Clients
Geben Sie help ein, um eine Liste der srp client-Befehle aufzurufen:
srp client help
autostart
callback
help
host
keyleaseinterval
leaseinterval
service
start
state
stop
ttl
Done
CLI-Befehlsreferenz
Beschreibungen und die Syntax aller Befehle finden Sie in der Befehlsreferenz für die Befehlszeile. Die SRP-Serverbefehle beginnen alphabetisch mit srp server (enable,disable) Die SRP-Clientbefehle beginnen alphabetisch mit srp client autostart (get) verwenden.
Codelab für Thread-Border-Router
Codelab für OpenThread-Border-Router enthält Informationen zur Einrichtung des SRP-Client-Endgeräts.
Übersicht über einige grundlegende SRP-Befehle
SRP-Server- und Clientbefehle können nacheinander für typische SRP-Aufgaben verwendet werden:
- 
srp server enableaktiviert den SRP-Server, sobald du das Thread-Netzwerk erstellt hast.
- 
- srp client host namelegt den vom Client zu verwendenden Hostnamen fest.
- srp client host address (set)aktiviert entweder den Modus für die Client-Adresse des automatischen Hosts oder legt die Liste der Host-Client-Adressen explizit fest.
- srp client service addfügt einen Dienst mit einem bestimmten Instanznamen, Dienst Name und Portnummer.
- srp client autostart enableaktiviert den Autostartmodus. Sie können auch manuell Starten Sie den Client, indem Sie- srp client startausführen.
 
- 
- srp client hostund- srp client servicegeben an, ob Der Clienthost und der Clientdienst wurden erfolgreich auf dem Clientknoten registriert.
- srp server hostund- srp server servicestellen Host- und Dienststatus bereit. auf dem Serverknoten.
 
- 
srp client service removeentfernt einen Dienst, behält aber den Dienstnamen bei.
- Entfernen Sie die Host- und Dienstnamen. - srp client host removeentfernt den Host und alle registrierten Dienste.
Beispiele für die Verwendung von SRP-Server- und Clientbefehlen
In diesen Beispielen werden grundlegende CLI-Befehle verwendet, um ein Thread-Netzwerk einzurichten. den SRP-Server und -Client, überprüfen den Serverstatus und entfernen Sie einen Dienst. Beispieldaten wird zur Veranschaulichung verwendet.
SRP-Server starten
- Starten Sie den SRP-Serverknoten: - ./output/simulation/bin/ot-cli-ftd 1
- Richten Sie ein Thread-Netzwerk ein und aktivieren Sie dann den SRP-Server mit dem Befehl - srp server enable:- dataset init newDone- datasetActive Timestamp: 1 Channel: 22 Channel Mask: 0x07fff800 Ext PAN ID: 8d6ed7a05a28fb3b Mesh Local Prefix: fded:5114:8263:1fe1::/64 Network Key: 7fcbae4153cc2955c28440c15d4d4219 Network Name: OpenThread-f7af PAN ID: 0xf7af PSKc: b658e40f174e3a11be149b302ef07a0f Security Policy: 672, onrc Done- dataset commit activeDone- ifconfig upDone- thread startDone- stateleader Done- ipaddrfded:5114:8263:1fe1:0:ff:fe00:fc00 fded:5114:8263:1fe1:0:ff:fe00:c000 fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 fe80:0:0:0:a8cd:6e23:df3d:4193 Done- srp server enableDone
SRP-Client starten
- Starten Sie den SRP-Clientknoten: - ./output/simulation/bin/ot-cli-ftd 2
- Tritt dem Thread-Netzwerk bei, lege den Namen und die Adresse des Client-Hosts fest einen Dienst registrieren: - dataset networkkey 7fcbae4153cc2955c28440c15d4d4219Done- dataset commit activeDone- ifconfig upDone- thread startDone- statechild Done- ipaddrfded:5114:8263:1fe1:0:ff:fe00:c001 fded:5114:8263:1fe1:44f9:cc06:4a2d:534 fe80:0:0:0:38dd:fdf7:5fd:24e Done- srp client host name my-hostDone- srp client host address fded:5114:8263:1fe1:44f9:cc06:4a2d:534Done- srp client service add my-service _ipps._tcp 12345Done- srp client autostart enableDone- Wie oben gezeigt aktivieren Sie mit dem Befehl - srp client autostart enabledie Autostart-Modus auf dem Client. Der Client überwacht Netzwerkdaten, um verfügbaren SRP-Servern im Thread-Netzwerk, dann startet automatisch von selbst.
- Wenn Sie den Client manuell starten, führen Sie folgenden Befehl aus und fügen Sie die SRP-Adresse und den SRP-Port: - srp client start fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 49154Done- Der im obigen Beispiel verwendete SRP-Server, der den UDP-Port überwacht, ist - c002(49154).
Dienststatus prüfen
- Prüfen Sie, ob Host und Dienst erfolgreich auf dem Clientknoten registriert wurden: - srp client hostname:"my-host", state:Registered, addrs:[fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Done- srp client serviceinstance:"my-service", name:"_ipps._tcp", state:Registered, port:12345, priority:0, weight:0 Done- Achten Sie darauf, dass in der Ausgabe - state:Registeredsowohl für Host- als auch für Dienstbefehle angezeigt wird. wie im obigen Beispiel.
- Prüfen Sie Host und Dienst auf dem Serverknoten: - srp server hostmy-host.default.service.arpa. deleted: false addresses: [fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Done- srp server servicemy-service._ipps._tcp.default.service.arpa. deleted: false port: 12345 priority: 0 weight: 0 ttl: 7200 lease: 7200 key-lease: 1209600 TXT: [] host: my-host.default.service.arpa. addresses: [fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Done- Achten Sie darauf, dass in der Ausgabe - deleted: falsesowohl für- srp server hostals auch und- srp server service, wie im obigen Beispiel.
Dienst entfernen
- Entfernen Sie den Dienst über den Clientknoten: - srp client service remove my-service _ipps._tcpDone
- Prüfen Sie über den Serverknoten, ob der Dienst entfernt wurde: - srp server servicemy-service._ipps._tcp.default.service.arpa. deleted: true Done- Der Diensteintrag wird in der Ausgabe aufgeführt, da der Name des Dienstes nicht entfernt. 
Host- und Dienstnamen entfernen
- Entfernen Sie den Host und alle registrierten Dienste: - srp client host remove 1Done
- Prüfen Sie auf dem Serverknoten, ob keine Host- oder Diensteinträge aufgeführt sind: - srp server hostDone- srp server serviceDone >