測試連線

前往 GitHub 查看原始碼

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

組成 Thread 網路

OTBR 網路 GUI 首頁

在執行 OTBR Docker 的機器上:

開啟瀏覽器視窗,然後前往 127.0.0.1:8080。如果 OTBR Docker 正在執行,系統會載入 OTBR Web GUI。

選取 [表單] 選單選項,然後變更部分預設憑證。建議您保留預設的 Channel 和 On-Mesh 前置字串值。無論使用哪一種方法,請記下這些變數,以便稍後測試獨立的 Thread 節點。

參數 範例值
網路名稱 OTBR4444
PAN ID 0x4444
網路金鑰 33334444333344443333444433334444
擴充的永久帳號 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

執行緒網路的網際網路連線需要這個輸出。

啟動第二個執行緒節點

執行 OTBR Docker 後,請在 Thread 網路中新增獨立的 Thread 節點,然後測試該節點與網際網路的連線。

如果使用 OTBR Docker 的實體 RCP,請使用第二個實體 Thread 節點進行測試。如果使用模擬 CP 和 OTBR Docker,請使用第二個模擬節點進行測試。

實體執行緒節點

在您選擇的支援平台上建構及刷新獨立的 Thread 節點。此節點不一定要透過任何特定的建構開關進行建構。

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

請參閱使用 nRF52840 電路板和 OpenThread 程式碼研究室建構 Thread 網路,瞭解建構和刷新北歐 nRF52840 平台的詳細操作說明。

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

    screen /dev/ttyACM1 115200
    

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

模擬執行緒節點

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

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

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

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

將第二個節點加入 Thread 網路

針對實體或模擬的執行緒節點使用 OpenThread CLI,將節點加入由 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 執行緒網路。在兩分鐘內,其狀態應為 router

    state
    router
    

  4. 檢查節點的 IP 位址,確保節點具有在 Thread 網路表單期間指定網格 fd11:22::/64 的 IPv6 位址,且該前置字串為

    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 位址與 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 是執行緒網路中的 NAT64 前置字串。

  2. 從獨立執行緒節點的 CLI 連線 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 與網際網路通訊。