使用 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 並傳遞 onrc

dataset securitypolicy 672 onrc
Done

資料集元件和 mgmt 指令

搭配其他參數,mgmtgetcommandmgmtsetcommand 可讓您取得及設定 的 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]

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

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

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

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

如要設定 activetimestampsecuritypolicy,請使用下列指令 引數:

dataset mgmtsetcommand active activetimestamp 123 securitypolicy 1 onrc
Done