測試連線

前往 GitHub 查看原始碼

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

建立執行緒網路

OTBR Web GUI 首頁

在執行 OTBR Docker 的機器上:

打開一個網絡窗口,然後瀏覽至 127.0.0.1:8080。如果 OTBR Docker 正常運作,就會載入 OTBR Web GUI。

選取 [表單] 選單選項,然後變更部分預設憑證。建議您保留預設的 Channel 和 On-Mesh 前置字串值。不論您使用哪一種方法,請記下這些資料夾,以便稍後測試個別的 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 網路連上網際網路,才能輸出這個檔案。

啟動第二個執行緒節點

在 OTBR Docker 啟動並執行後,請在 Thread 網路中新增獨立的 Thread 節點,並測試該節點可連上網際網路。

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

實體執行緒節點

在您選擇的支援的平台上,建立並建構一個獨立的 Thread 節點。這個節點不一定要使用任何特定的建構開關進行建構。

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

如需建構和閃爍北歐 nRF52840 平台的詳細操作說明,請參閱使用 nRF52840 電路板和 OpenThread 程式碼研究室建立執行緒網路

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

    screen /dev/ttyACM1 115200
    

  2. 按下 Enter 鍵,開啟 > OpenThread CLI 提示。

模擬的執行緒節點

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

  2. 啟動 CLI 應用程式以產生模擬節點:

    cd ~/openthread
    ./output/simulation/bin/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 位址,以確保該 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)

此時,您應該能夠從獨立的 Thread 節點對公開 IPv4 位址進行連線偵測 (ping)。Thread 僅使用 IPv6,如要連線公開的 IPv4 位址,您必須將其轉譯為 IPv6,並將其與 OTBR 中網路位址轉譯 (NAT) 使用的已知前置字串 64:ff9b::/64 結合。

  1. 如要取得經過翻譯的 IPv4 位址,請使用類似 findipv6.com 的網站。

  2. 翻譯您要測試的 IPv4 位址。舉例來說,172.217.164.110 會轉譯為 IPv6,就是 ::ffff:acd9:a46e

  3. 只使用產生的 IPv6 位址的最後 4 個位元組,將其與 64:ff9b::/64 的已知前置字串組合搭配使用,以取得新的 IPv6 位址: 64:ff9b::acd9:a46e

  4. 從獨立 Thread 節點的 CLI 連線偵測 (ping) 這個新的 IPv6 位址來測試其網際網路連線。連線偵測 (ping) 地址等同於對原始 IPv4 位址執行連線偵測 (ping):

    ping 64:ff9b::acd9:a46e
    16 bytes from 64:ff9b:0:0:0:0:acd9:a46e: icmp_seq=1 hlim=118 time=45ms
    

完成了,第二個 Thread 節點現在可以透過 OTBR Docker 與網際網路通訊。