OpenThread CLI の概要

GitHub でソースを見る

OpenThread CLI は、コマンドライン インターフェースから Configuration API や Management API を公開します。OT CLI を使用して OpenThread 開発環境を作成するか、アプリケーション コードを追加するためのツールとして OT CLI を使用します。たとえば、OpenThread テスト スクリプトは CLI を使用してテストケースを実行します。

始める

Docker でシミュレーション Codelab を完了し、CLI コマンド リファレンスを確認する。

シミュレーション Codelab に移動 CLI コマンド リファレンスに移動

OT CLI の使用

OT CLI は、OpenThread ボーダー ルーター(OTBR)デバイスと Thread デバイスで使用できます。CLI コマンドは、デバイスタイプとビルドフラグによって異なります。

OTBR

OTBR とともに OT CLI を使用するには、各コマンドの前に次の接頭辞を入力します。

sudo ot-ctl

Thread デバイス

Thread デバイスで CLI コマンドを使用するには、プラットフォームのドキュメント、Codelab、またはガイドをご覧ください。多くの場合、接頭辞を付けずにコマンドの入力を開始できます。

state
router
Done

以下、参考になるリソースをご紹介します。

特殊文字

空白文字(' ')は、コマンド名とさまざまな引数を区切るのに、タブ('\t')と新しい改行文字('\r''\n')に使用されます。

一部の引数には、Thread ネットワーク名などのスペースが含まれることがあります。スペースを含む引数を送信するには、バックスラッシュ文字('\')を使用して区切り文字やバックスラッシュ自体をエスケープします。

networkname Test\ Network
Done
networkname
Test Network
Done

引数のマッピング

OT CLI は、API 構成値に対応する事前定義された引数を使用します。これらのマッピングは CLI コマンドで渡すことも、さまざまなネットワーク データコマンド(netdata show など)のために CLI コンソールに戻ることもできます。

otBorderRouterConfig

prefix add などの一部のコマンドでは、otBorderRouterConfig 値が必要です。コマンドラインから otBorderRouterConfig メンバーを設定するために、OT CLI は各メンバーの対応する文字引数を解析します。たとえば、引数の組み合わせ paros は、mPreferredmSlaacmDefaultRoutemOnMeshmStable のメンバーを連続して設定します。

構文

次の例では、prefix は必須です。otBorderRouterConfig の引数は省略可能です。padcrosnD にマッピングされています。

prefix add prefix [padcrosnD]

使用方法

引数マッピングを使用する場合、文字の間にスペースを入れないでください。

prefix add 2001:dead:beef:cafe::/64 paros

otRoutePreference

otRoutePreference を設定するには、OT CLI コマンドで highmedlow を使用します。

構文

prefix add prefix [padcrosnD] [high|med|low]

使用方法

マッピングされた otBorderRouterConfig パラメータと otRoutePreference パラメータの使用例を次に示します。

prefix add 2001:dead:beef:cafe::/64 paros med
Done

otExternalRouteConfig

otExternalRouteConfig 値の場合、smStable にマッピングされ、nmNat64 にマッピングされます。

構文

publish route prefix [sn]

使用方法

route add 2001:dead:beef:cafe::/64 s
Done

戻り値

ほとんどのコマンドはリクエストされた値を返し、その後に Done を続けます。

br onlinkprefix
fd41:2650:a6f5:0::/64
Done

ネットワーク データを含むその他のコマンドでは、接頭辞、ルート、サービス レコードの引数マッピングが返されることがあります。詳細については、OT CLI を使用したネットワーク データの表示と管理をご覧ください。