Configurer la connectivité serveur-client du protocole d'enregistrement de service (SRP) avec la CLI OT

<ph type="x-smartling-placeholder"></ph> Consulter le code source sur GitHub

OpenThread offre à la fois des fonctionnalités de serveur et de client SRP, permettant aux appareils pour enregistrer des services DNS à l'aide de la mise à jour DNS standard envoyée en tant que monodiffusion paquets. Cette fonctionnalité active la détection de services basés sur le DNS.

Ce guide décrit les tâches de base qui utilisent certaines des srp server les plus courantes. et srp client.

Commandes du serveur SRP

Pour obtenir la liste des commandes srp server, saisissez help:

srp server help
addrmode
auto
disable
domain
enable
help
host
lease
seqnum
service
state
Done

Commandes du client SRP

Pour obtenir la liste des commandes srp client, saisissez help:

srp client help
autostart
callback
help
host
keyleaseinterval
leaseinterval
service
start
state
stop
ttl
Done

Documentation de référence sur les commandes CLI

Pour obtenir la description et la syntaxe de toutes les commandes, consultez la documentation de référence sur les commandes CLI. Les commandes du serveur SRP commencent par ordre alphabétique par serveur srp (enable,disable). Les commandes du client SRP commencent par ordre alphabétique par srp client autostart (get) :

Atelier de programmation sur le routeur de bordure Thread

Atelier de programmation sur le routeur de bordure OpenThread inclut des informations sur la configuration de l'appareil final du client SRP.

Présentations de certaines commandes SRP de base

Les commandes client et serveur SRP peuvent être utilisées dans l'ordre pour effectuer des tâches SRP types:

  1. Démarrez le serveur SRP.

    srp server enable active le serveur SRP une fois le réseau Thread créé.

  2. Démarrez le client SRP.

    • srp client host name définit le nom d'hôte à utiliser par le client.

    • srp client host address (set) active soit le mode d'adresse automatique du client hôte, soit définit explicitement la liste des adresses des clients hôtes.

    • srp client service add ajoute un service avec un nom d'instance donné (service son nom et son numéro de port.

    • srp client autostart enable active le mode de démarrage automatique. Vous pouvez également Démarrez le client en exécutant srp client start.

  3. Vérifiez l'état du service.

    • srp client host et srp client service indiquent l'état l'hôte et le service client ont été enregistrés avec succès sur le nœud client.

    • srp server host et srp server service fournissent l'état de l'hôte et du service sur le nœud de serveur.

  4. Supprimez le service.

    srp client service remove supprime un service, mais en conserve le nom.

  5. Supprimez les noms d'hôte et de service.

    srp client host remove supprime l'hôte et tous les services enregistrés.

Exemples d'utilisation de commandes clientes et de serveurs SRP

Ces exemples utilisent les commandes CLI de base pour configurer un réseau Thread, démarrer le serveur et le client SRP, vérifier l'état du serveur et supprimer un service. Exemple de données est utilisée à titre d'illustration uniquement.

Démarrer le serveur SRP

  1. Démarrez le nœud du serveur SRP:

    ./output/simulation/bin/ot-cli-ftd 1
    
  2. Configurez un réseau Thread, puis activez le serveur SRP en exécutant la commande srp server enable:

    dataset init new
    Done
    dataset
    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
    Done
    dataset commit active
    Done
    ifconfig up
    Done
    thread start
    Done
    state
    leader
    Done
    ipaddr
    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
    Done
    srp server enable
    Done
    

Démarrer le client SRP

  1. Démarrez le nœud client SRP:

    ./output/simulation/bin/ot-cli-ftd 2
    
  2. Rejoignez le réseau Thread, définissez le nom et l'adresse d'hôte du client, et enregistrez un service:

    dataset networkkey 7fcbae4153cc2955c28440c15d4d4219
    Done
    dataset commit active
    Done
    ifconfig up
    Done
    thread start
    Done
    state
    child
    Done
    ipaddr
    fded: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-host
    Done
    srp client host address fded:5114:8263:1fe1:44f9:cc06:4a2d:534
    Done
    srp client service add my-service _ipps._tcp 12345
    Done
    srp client autostart enable
    Done
    

    Comme indiqué ci-dessus, utilisez la commande srp client autostart enable pour activer le mode de démarrage automatique sur le client. Le client surveille les données réseau pour identifier serveurs SRP disponibles dans le réseau Thread, le client se lance automatiquement.

  3. Si vous démarrez manuellement le client, exécutez la commande suivante et incluez l'adresse et le port SRP:

    srp client start fded:5114:8263:1fe1:68bc:ec03:c1ad:9325 49154
    Done
    

    Le port UDP d'écoute du serveur SRP est c002(49154) dans l'exemple ci-dessus.

Vérifier l'état du service

  1. Vérifiez que l'hôte et le service ont bien été enregistrés sur le nœud client:

    srp client host
    name:"my-host", state:Registered, addrs:[fded:5114:8263:1fe1:44f9:cc06:4a2d:534]
    Done
    srp client service
    instance:"my-service", name:"_ipps._tcp", state:Registered, port:12345, priority:0, weight:0
    Done
    

    Assurez-vous que le résultat affiche state:Registered pour les commandes d'hôte et de service. comme dans l'exemple ci-dessus.

  2. Vérifiez l'hôte et le service sur le nœud de serveur:

    srp server host
    my-host.default.service.arpa.
    deleted: false 
    addresses: [fded:5114:8263:1fe1:44f9:cc06:4a2d:534]
    Done
    srp 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]
    Done
    

    Assurez-vous que la sortie affiche deleted: false pour srp server host et srp server service, comme dans l'exemple ci-dessus.

Supprimer le service

  1. Supprimez le service via le nœud client:

    srp client service remove my-service _ipps._tcp
    Done
    
  2. Vérifiez via le nœud de serveur que le service a bien été supprimé:

    srp server service
    my-service._ipps._tcp.default.service.arpa.
    deleted: true
    Done
    

    L'entrée de service est répertoriée dans le résultat, car le nom du service est non supprimées.

Supprimer les noms d'hôte et de service

  1. Supprimez l'hôte et tous ses services enregistrés:

    srp client host remove 1
    Done
    
  2. Vérifiez qu'aucune entrée d'hôte ou de service n'est répertoriée sur le nœud de serveur:

    srp server host
    Done
    srp server service
    Done
    >