Testare la connettività

Visualizza il codice sorgente su GitHub

Dopo aver avviato Docker OTBR, forma una rete Thread e testa la sua connettività a internet.

Formare la rete Thread

Avvia una sessione ot-ctl.

docker exec -it otbr ot-ctl

Genera e visualizza la nuova configurazione di rete.

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 15
Wake-up Channel: 16
Channel Mask: 0x07fff800
Ext PAN ID: 39758ec8144b07fb
Mesh Local Prefix: fdf1:f1ad:d079:7dc0::/64
Network Key: f366cec7a446bab978d90d27abe38f23
Network Name: OpenThread-5938
PAN ID: 0x5938
PSKc: 3ca67c969efb0d0c74a4d8ee923b576c
Security Policy: 672 onrc 0
Done

Esegui il commit del nuovo set di dati nel set di dati operativo attivo in uno spazio di archiviazione non volatile.

dataset commit active
Done

Attiva l'interfaccia Thread.

ifconfig up
Done
thread start
Done

Esci dalla sessione ot-ctl:

exit

Usa ifconfig per visualizzare la nuova interfaccia di rete Thread:

ifconfig wpan0
wpan0: flags=4305  mtu 1280
        inet6 fe80::3c98:89e8:ddec:bda7  prefixlen 64  scopeid 0x20
        inet6 fd4d:b3e5:9738:3193:0:ff:fe00:fc00  prefixlen 64  scopeid 0x0
        inet6 fd4d:b3e5:9738:3193:0:ff:fe00:f800  prefixlen 64  scopeid 0x0
        inet6 fd4d:b3e5:9738:3193:39c4:ee02:ca9e:2b1d  prefixlen 64  scopeid 0x0
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
        RX packets 16  bytes 1947 (1.9 KiB)
        RX errors 0  dropped 3  overruns 0  frame 0
        TX packets 7  bytes 1152 (1.1 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Apri un secondo nodo Thread

Una volta avviato Docker OTBR, aggiungi un nodo Thread autonomo alla rete Thread e verifica che sia connesso a internet.

Crea e esegui il flashing di un nodo Thread autonomo sulla piattaforma supportata di tua scelta. Questo nodo non deve essere compilato con opzioni di compilazione specifiche.

Per istruzioni di base sulla compilazione, consulta Compilare OpenThread.

Consulta la sezione Creare una rete Thread con schede nRF52840 e il Codelab OpenThread per istruzioni dettagliate su come compilare e eseguire il flashing della piattaforma Nordic nRF52840.

  1. Dopo la compilazione e il flashing, utilizza screen in una nuova finestra del terminale per accedere all'interfaccia a riga di comando. Ad esempio, se il dispositivo è montato sulla porta/dev/ttyACM1:

    screen /dev/ttyACM1 115200
    

  2. Premi il tasto Invio per visualizzare il prompt > dell'interfaccia a riga di comando OpenThread.

Collega il secondo nodo alla rete Thread

Utilizzando OpenThread CLI per il secondo nodo Thread, connetti il nodo alla rete Thread creata da OTBR Docker.

  1. Aggiorna le credenziali di rete Thread per il nodo utilizzando i valori minimi richiesti da OTBR Docker:

    dataset networkkey f366cec7a446bab978d90d27abe38f23
    Done
    dataset commit active
    Done
    

  2. Mostra l'interfaccia Thread e avvia Thread:

    ifconfig up
    Done
    thread start
    Done
    

  3. Il nodo dovrebbe connettersi automaticamente alla rete Thread dell'OTBR. Entro due minuti lo stato dovrebbe essere router:

    state
    router
    

Inviare un ping a un indirizzo pubblico

A questo punto dovresti essere in grado di eseguire un ping a un indirizzo IPv4 pubblico dal nodo Thread autonomo. Poiché Thread utilizza solo IPv6, l'indirizzo IPv4 pubblico verrà tradotto automaticamente in IPv6 combinandolo con il prefisso NAT64 nella rete Thread.

  1. Per visualizzare il prefisso NAT64 nella rete Thread:

    netdata show
    Prefixes:
    fd3e:d39b:d91:1::/64 paros low 1800
    Routes:
    ::/0 s med 1800
    fd3e:d39b:d91:2:0:0::/96 sn low 1800
    Services:
    Contexts:
    fd3e:d39b:d91:1::/64 1 c
    Commissioning:
    12156 - - -
    
    Qui fd3e:d39b:d91:2:0:0::/96 è il prefisso NAT64 nella rete Thread.

  2. Invia un ping a un indirizzo IPv4 dalla CLI del nodo Thread autonomo per verificarne la connettività a internet:

    ping 8.8.8.8
    Pinging synthesized IPv6 address: fd3e:d39b:d91:2:0:0:808:808
    16 bytes from fd3e:d39b:d91:2:0:0:808:808: icmp_seq=1 hlim=113 time=73ms
    1 packets transmitted, 1 packets received. Packet loss = 0.0%. Round-trip min/avg/max = 73/73.0/73 ms.
    Done
    

Operazione riuscita. Il secondo nodo Thread ora può comunicare con internet tramite Docker OTBR.