使用 OT CLI 顯示及管理資料集

前往 GitHub 查看原始碼

執行緒網路設定參數是使用「有效」和「待處理」來進行管理 作業資料集物件。OT CLI 包含取得及設定「主動」的指令 以及待處理資料集

警告 - 正式版用途限制!

用來寫入或變更有效和待處理作業資料集的 CLI 指令,可能會允許設定無效的參數,或 無效的參數組合,用於測試。下列 CLI 指令只能使用:

  • 在新建的 Thread 網路中,為第一部裝置設定網路參數。
  • 用於測試 (不適用於正式版裝置)。

在實際工作環境 Thread 網路中,寫入或變更作業資料集的正確方法是透過 委員 執行調校步驟 非有效執行委員會成員的正式版裝置 Thread 網路中「不得」以任何方式修改作業資料集。

使用中的作業資料集

使用中的作業資料集包含目前正在使用的參數 整個 Thread 網路之間使用中的作業資料集包含:

  • 使用中時間戳記
  • 頻道
  • 頻道遮罩
  • 擴充永久帳號 ID
  • 網格本機前置字串
  • 網路名稱
  • PAN ID
  • PSKc
  • 安全性政策

如要輕鬆將裝置設定為加入 Thread 網路的完整成員,您必須 可以使用 dataset active -x 指令 取得十六進位編碼的 TLV,而 將 dataset set active 指令設為 在新裝置上設定資料集。

在現有裝置上取得十六進位編碼的 TLV:

dataset active -x
0e080000000000010000000300001035060004001fffe00208e227ac6a7f24052f0708fdb753eb517cb4d3051062b2442a928d9ea3b947a1618fc4085a030f4f70656e5468726561642d393837330102987304105330d857354330133c05e1fd7ae81a910c0402a0f7f8
Done

在新裝置上設定使用中的資料集:

dataset set active 0e080000000000010000000300001035060004001fffe00208e227ac6a7f24052f0708fdb753eb517cb4d3051062b2442a928d9ea3b947a1618fc4085a030f4f70656e5468726561642d393837330102987304105330d857354330133c05e1fd7ae81a910c0402a0f7f8
Done

待處理的作業資料集

待處理的作業資料集是用來傳達與作用中的變更 作業資料集。待處理的作業資料集 包含 Active Operational 資料集中的所有參數,具有 新增:

  • 延遲計時器
  • 等待時間戳記

開始使用

如要透過指令列管理資料集,請完成模擬程式碼研究室: Docker 並查看 CLI 指令參考資料。

前往模擬程式碼研究室

前往 CLI 指令參考資料

如需 dataset 指令的清單,請輸入 help:

dataset help
help
active
activetimestamp
channel
channelmask
clear
commit
delay
extpanid
init
meshlocalprefix
mgmtgetcommand
mgmtsetcommand
networkkey
networkname
panid
pending
pendingtimestamp
pskc
securitypolicy
Done

引數對應

安全性政策

安全性政策指令會使用引數對應來進行設定 otSecurityPolicy 成員。例如 dataset active:

dataset active
Active Timestamp: 1
Channel: 13
Channel Mask: 0x07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d::/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done

在此範例中,Security Policy: 0 表示 mRotationTime。

以下列出所有安全性政策 CLI 引數和 每個引數的對應 otSecurityPolicy 成員:

dataset securitypolicy get 和 set 指令也使用相同的引數 對應,例如設定 securitypolicy 並傳遞 o、n、r 和 c:

dataset securitypolicy 672 onrc
Done

資料集元件和 mgmt 指令

搭配其他參數,mgmtgetcommand 和 mgmtsetcommand 可讓您取得及設定 的 otOperationalDatasetComponents 範例,如下所示:

  • activetimestamp
  • pendingtimestamp
  • networkkey
  • networkname
  • extpanid
  • localprefix
  • delaytimer
  • panid
  • channel
  • securitypolicy
,瞭解如何調查及移除這項存取權。

針對 mgmtgetcommand,您可以指定這些元件 (以任意順序取得) 對應的值或者,您也可以傳遞 -x 來使用十六進位 字串,視為 TLV 的位元組序列表示法。這可以是廠商 和一些特定 TLV。

mgmtgetcommand 也可讓您視需要指定 領先如果不是的話,則會使用領導者 ALOC。

dataset mgmtgetcommand {active|pending} [address leader-address] [dataset-components] [-x tlv-list]

例如,如要取得 activetimestamp 和 securitypolicy,請使用以下程式碼 引數:

dataset mgmtgetcommand active address fdde:ad00:beef:0:558:f56b:d688:799 activetimestamp securitypolicy
Done
敬上

如要設定元件,您也可以按任何順序提供資料集元件 後面加上元件值

dataset mgmtgetcommand {active|pending} [dataset-components] [-x tlv-list]

如要設定 activetimestamp 和 securitypolicy,請使用下列指令 引數:

dataset mgmtsetcommand active activetimestamp 123 securitypolicy 1 onrc
Done