測試連線

在 GitHub 上查看來源

啟動 OTBR Docker 後,請建立 Thread 網路並測試與網際網路的連線。

建立 Thread 網路

OTBR Web GUI 首頁

在執行 OTBR Docker 的機器上:

開啟瀏覽器視窗,然後前往 127.0.0.1:8080。如果 OTBR Docker 運作正常,OTBR Web GUI 就會載入。

選取「表單」選單選項,然後變更部分預設憑證。建議保留預設的「Channel」和「On-Mesh Prefix」值。無論您使用哪個值,請記下這些值,以便日後測試個別的 Thread 節點。

參數 範例值
網路名稱 OTBR4444
PAN ID 0x4444
網路金鑰 33334444333344443333444433334444
擴充 PAN ID 3333333344444444
通關密語 444444
頻道 15
網格前置字串 fd11:22::

選取「FORM」,即可建立 Thread 網路。請在執行 OTBR Docker 的終端機視窗中查看輸出內容。您應該會看到 otbr-agent 記錄輸出內容,說明如何新增連結網內前置字元和 SLAAC 位址:

otbr-agent[224]: [INFO]-CLI-----: execute command: prefix add fd11:22::/64 pasor

這個輸出值是 Thread 網路的網際網路連線功能所需。

顯示第二個 Thread 節點

在 OTBR Docker 啟動並運作後,請將獨立的 Thread 節點新增至 Thread 網路,並測試網路連線功能。

如果使用實體 RCP 搭配 OTBR Docker,請使用第二個實體 Thread 節點進行測試。如果將模擬 RCP 與 OTBR Docker 搭配使用,請使用第二個模擬節點進行測試。

實體執行緒節點

在您選擇的支援平台上,建構及閃燈獨立的 Thread 節點。這個節點不必使用任何特定的建構切換來建構。

如需基本建構操作說明,請參閱「建構 OpenThread」。

請參閱「使用 nRF52840 開發板和 OpenThread 程式碼研究室建構 Thread 網路」,瞭解如何建構及刷新 Nordic nRF52840 平台的詳細操作說明。

  1. 建構及刷新後,透過 USB 將 Thread 裝置連接至執行 OTBR Docker 的機器。在新終端機視窗中使用 screen 存取 CLI。舉例來說,如果裝置已掛載至 /dev/ttyACM1 連接埠:

    screen /dev/ttyACM1 115200
    

  2. 按下 Enter 鍵,即可顯示 > OpenThread CLI 提示。

模擬的 Thread 節點

  1. 在執行 OTBR Docker 的機器上,開啟新的終端機視窗。

  2. 啟動 CLI 應用程式以顯示模擬節點:

    cd ~/openthread
    ./build/simulation/examples/apps/cli/ot-cli-ftd 2
    

  3. 按下 Enter 鍵,即可顯示 > OpenThread CLI 提示。

加入第二個節點至 Thread 網路

使用 OpenThread CLI 為實體或模擬的 Thread 節點,將節點加入由 OTBR Docker 建立的 Thread 網路。

  1. 使用 OTBR Docker 的最低要求值,更新節點的 Thread 網路憑證:

    dataset networkkey 33334444333344443333444433334444
    Done
    dataset commit active
    Done
    

  2. 開啟 Thread 介面並啟動 Thread:

    ifconfig up
    Done
    thread start
    Done
    

  3. 節點應會自動加入 OTBR Thread 網路。兩分鐘內,其狀態應為 router

    state
    router
    

  4. 檢查節點的 IP 位址,確認其 IPv6 位址含有在 Thread 網路形成期間指定的 fd11:22::/64 網路上前置字元:

    ipaddr
    fd11:22:0:0:614e:4588:57a1:a473
    fd33:3333:3344:0:0:ff:fe00:f801
    fd33:3333:3344:0:1b5f:db5:ecac:a9e
    fe80:0:0:0:e0c4:5304:5404:5f70:98cd
    

對公開位址執行連線偵測 (ping)

此時,您應該可以從獨立的執行緒節點 ping 公開的 IPv4 位址。由於 Thread 只使用 IPv6,因此公開 IPv4 位址會與 Thread 網路中的 NAT64 前置字串結合,自動轉譯為 IPv6。

  1. 如要查看 Thread 網路中的 NAT64 前置字元,請按照下列步驟操作:

    netdata show
    Prefixes:
    fd11:22:0:0::/64 paros med d400
    Routes:
    fdb5:7875:8e0e:2:0:0::/96 sn low d400
    fd11:1111:1122:2222::/64 s med d400
    Services:
    44970 5d fd5179ed685532847aaa91505f016bbad11f s d400
    44970 01 00000500000e10 s d400
    Done
    
    fdb5:7875:8e0e:2:0:0::/96 是 Thread 網路中的 NAT64 前置字元。

  2. 從獨立 Thread 節點的 CLI 執行連線偵測 (ping) IPv4 位址,以測試其網際網路連線:

    ping 8.8.8.8
    Pinging synthesized IPv6 address: fdb5:7875:8e0e:2:0:0:808:808
    16 bytes from fdb5:7875:8e0e:2:0:0:808:808: icmp_seq=15 hlim=119 time=48ms
    

大功告成!第二個 Thread 節點現在可以透過 OTBR Docker 與網際網路通訊。