Visualizza il codice sorgente su GitHub
OpenThread offre funzionalità sia server SRP che client, consentendo ai dispositivi di registrare servizi basati su DNS utilizzando l'aggiornamento DNS standard inviato come pacchetti unicast. Questa funzionalità consente il rilevamento dei servizi basato su DNS.
Questa guida fornisce attività di base che utilizzano alcuni dei comandi srp server
e srp client
più comuni.
Comandi SRP del server
Per un elenco di comandi srp server
, digita help
:
srp server help
addrmode
auto
disable
domain
enable
help
host
lease
seqnum
service
state
Done
Comandi client SRP
Per un elenco di comandi srp client
, digita help
:
srp client help
autostart
callback
help
host
keyleaseinterval
leaseinterval
service
start
state
stop
ttl
Done
Riferimento per i comandi dell'interfaccia a riga di comando
Per le descrizioni e la sintassi di tutti i comandi, consulta la documentazione sui comandi dell'interfaccia a riga di comando. I comandi del server SRP iniziano in ordine alfabetico con srp server (enable,disable). I comandi del client SRP iniziano in ordine alfabetico con srp client autostart (get).
Codelab sul router di confine Thread
Il codelab sul router di confine OpenThread include informazioni su come configurare il dispositivo client SRP.
Panoramiche di alcuni comandi SRP di base
I comandi del server e del client SRP possono essere utilizzati in sequenza per eseguire le tipiche attività SRP:
-
srp server enable
attiva il server SRP dopo che hai creato la rete Thread. -
srp client host name
imposta il nome host che deve essere utilizzato dal client.srp client host address (set)
attiva la modalità di indirizzo client dell'host automatico o imposta esplicitamente l'elenco degli indirizzi client host.srp client service add
aggiunge un servizio con un nome istanza, un nome di servizio e un numero di porta specifici.srp client autostart enable
attiva la modalità di avvio automatico. Puoi anche avviare il client manualmente eseguendosrp client start
.
Verifica lo stato del servizio.
srp client host
esrp client service
indicano se l'host e il servizio client sono stati registrati correttamente sul nodo client.srp server host
esrp server service
forniscono lo stato di host e servizio sul nodo server.
-
srp client service remove
rimuove un servizio, ma ne conserva il nome. Rimuovi i nomi host e dei servizi.
srp client host remove
rimuove l'host e tutti i servizi registrati.
Esempi di utilizzo dei comandi SRP per server e client
Questi esempi utilizzano i comandi di interfaccia a riga di comando di base per configurare una rete Thread, avviare il server e il client SRP, verificare lo stato del server e rimuovere un servizio. I dati di esempio vengono utilizzati a scopo illustrativo.
Avvia il server SRP
Avvia il nodo del server SRP:
./output/simulation/bin/ot-cli-ftd 1
Configura una rete Thread, quindi abilita il server SRP eseguendo il comando
srp server enable
:dataset init new
Donedataset
Active 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 Donedataset commit active
Doneifconfig up
Donethread start
Donestate
leader Doneipaddr
fded: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 Donesrp server enable
Done
Avvia il client SRP
Avvia il nodo client SRP:
./output/simulation/bin/ot-cli-ftd 2
Unisciti alla rete Thread, imposta il nome e l'indirizzo dell'host del client e registra un servizio:
dataset networkkey 7fcbae4153cc2955c28440c15d4d4219
Donedataset commit active
Doneifconfig up
Donethread start
Donestate
child Doneipaddr
fded:5114:8263:1fe1:0:ff:fe00:c001 fded:5114:8263:1fe1:44f9:cc06:4a2d:534 fe80:0:0:0:38dd:fdf7:5fd:24e Donesrp client host name my-host
Donesrp client host address fded:5114:8263:1fe1:44f9:cc06:4a2d:534
Donesrp client service add my-service _ipps._tcp 12345
Donesrp client autostart enable
DoneCome mostrato sopra, utilizza il comando
srp client autostart enable
per abilitare la modalità di avvio automatico sul client. Il client monitora i dati di rete per trovare i server SRP disponibili all'interno della rete Thread, quindi si avvia automaticamente.Se avvii manualmente il client, esegui il comando seguente e includi l'indirizzo e la porta SRP:
srp client start fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 49154
DoneNell'esempio precedente, la porta UDP di ascolto del server SRP è
c002(49154)
.
Verificare lo stato del servizio
Verifica se l'host e il servizio sono stati registrati correttamente sul nodo client:
srp client host
name:"my-host", state:Registered, addrs:[fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Donesrp client service
instance:"my-service", name:"_ipps._tcp", state:Registered, port:12345, priority:0, weight:0 DoneAssicurati che l'output mostri
state:Registered
sia per i comandi dell'host che del servizio, come nell'esempio precedente.Controlla l'host e il servizio sul nodo server:
srp server host
my-host.default.service.arpa. deleted: false addresses: [fded:5114:8263:1fe1:44f9:cc06:4a2d:534] Donesrp server service
my-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] DoneAssicurati che l'output mostri
deleted: false
per entrambi i comandisrp server host
esrp server service
, come nell'esempio precedente.
Rimuovi il servizio
Rimuovi il servizio tramite il nodo client:
srp client service remove my-service _ipps._tcp
DoneVerifica tramite il nodo del server che il servizio sia stato rimosso:
srp server service
my-service._ipps._tcp.default.service.arpa. deleted: true DoneLa voce di servizio è elencata nell'output perché il nome del servizio non viene rimosso.
Rimuovi i nomi host e dei servizi
Rimuovi l'host e tutti i relativi servizi registrati:
srp client host remove 1
DoneVerifica sul nodo del server che non siano elencate voci di host o servizio:
srp server host
Donesrp server service
Done >