Testowanie połączenia

Wyświetl źródło na GitHubie

Po uruchomieniu kontenera Dockera OTBR utwórz sieć Thread i sprawdź jej łączność z internetem.

Tworzenie sieci Thread

Rozpocznij sesję ot-ctl.

docker exec -it otbr ot-ctl

wygenerować i wyświetlić nową konfigurację sieci;

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

Zapisz nowy zbiór danych w aktywnym operacyjnym zbiorze danych na nośniku nieulotnym.

dataset commit active
Done

Włącz interfejs Thread.

ifconfig up
Done
thread start
Done

Aby zamknąć sesję ot-ctl:

exit

Aby wyświetlić nowy interfejs sieci Thread, kliknij ifconfig:

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

Wyświetlanie drugiego węzła wątku

Po uruchomieniu kontenera OTBR Docker dodaj do sieci Thread autonomiczny węzeł Thread i sprawdź, czy ma on połączenie z internetem.

Utwórz i sflashuj samodzielny węzeł Thread na wybranej obsługiwanej platformie. Ten węzeł nie musi być kompilowany z żadnymi konkretnymi przełącznikami kompilacji.

Podstawowe instrukcje tworzenia znajdziesz w artykule Tworzenie OpenThread.

Szczegółowe instrukcje tworzenia i programowania platformy Nordic nRF52840 znajdziesz w Codelab dotyczącym tworzenia sieci Thread z kartami nRF52840 i OpenThread.

  1. Po skompilowaniu i sflashowaniu użyj polecenia screen w nowym oknie terminala, aby uzyskać dostęp do interfejsu wiersza poleceń. Jeśli na przykład urządzenie jest zamontowane na porcie:/dev/ttyACM1

    screen /dev/ttyACM1 115200
    

  2. Naciśnij klawisz Enter, aby wyświetlić prompt > OpenThread CLI.

Dołączanie drugiego węzła do sieci Thread

Używając interfejsu wiersza poleceń OpenThread, połącz drugi węzeł Thread z siecią Thread utworzoną przez kontener OTBR Docker.

  1. Zaktualizuj dane logowania do sieci Thread dla węzła, używając minimalnych wartości wymaganych przez Dockera OTBR:

    dataset networkkey f366cec7a446bab978d90d27abe38f23
    Done
    dataset commit active
    Done
    

  2. Otwórz interfejs Thread i uruchom go:

    ifconfig up
    Done
    thread start
    Done
    

  3. Urządzenie powinno automatycznie dołączyć do sieci OTBR Thread. Po upływie 2 minut stan powinien być router:

    state
    router
    

Pingowanie adresu publicznego

W tym momencie powinieneś mieć możliwość pingowania publicznego adresu IPv4 z samodzielnego węzła Thread. Ponieważ Thread używa tylko IPv6, publiczny adres IPv4 zostanie automatycznie przetłumaczony na IPv6 przez połączenie z preiksem NAT64 w sieci Thread.

  1. Aby wyświetlić prefiks NAT64 w sieci 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 - - -
    
    W tym przypadku fd3e:d39b:d91:2:0:0::/96 to prefiks NAT64 w sieci Thread.

  2. Aby przetestować połączenie z internetem, wyślij ping do adresu IPv4 z poziomu interfejsu wiersza poleceń samodzielnego węzła Thread:

    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
    

Gotowe! Drugi węzeł Thread może teraz komunikować się z internetem za pomocą kontenera OTBR Docker.