ブルートゥース®メッシュサブネット ブリッジング

ブルートゥース®メッシュサブネット ブリッジング

技術概要

リリース: 1.0.0
文書バージョン:   1.0
最終更新日: 2023年9月19日
著者:   

マーティン・ウーリー、BluetoothSIG
オムカー・クルカルニ、ノルディック・セミコンダクター
ピョートル・ウィニアルチク、シルベア社

改訂履歴

Version

Date

Author

Changes

1.0.0

September 19, 2023

Martin Woolley, Bluetooth SIG
Omkar Kulkarni, Nordic Semiconductor
Piotr Winiarczyk, Silvair

Initial version

 

Bluetooth Mesh Profile Specificationは名称が変更され、Bluetooth Meshと呼ばれるようになりました。 プロトコル仕様と呼ばれるようになりました。本書および関連論文では、バージョン1.1仕様に言及する場合はこの名称を使用しますが、バージョン1.0仕様については引き続きBluetooth Mesh プロファイル仕様と呼びます。

 

1.背景

サブネットブリッジングは ブルートゥース® Meshプロトコル仕様のバージョン1.1で導入されました。Bluetooth Meshサブネット 機能と利点を十分に理解するには、Bluetooth Mesh バージョン 1.0 の特定の側面を理解する必要があります。このセクションでは、Bluetooth Meshサブネット ブリッジングの機能検討をサポートするコンテキストと背景を説明します。

1.1 サブネット

ブルートゥース® メッシュネットワークは、すべてのユニキャストアドレスのアドレス 空間を構成します。ブルートゥース・メッシュ・ネットワークは、この共通のアドレス 空間を共有する1つまたは複数のサブネットで構成されます。サブネット 一意のネットワークキー NetKey)を持っており、ノードのプロビジョニング時にこのNetKey 提供された場合、そのノードはそのサブネット メンバー です。

しかし、Bluetooth Meshプロファイル仕様のバージョン1.0では、1つのサブネット 別のサブネット サブネット メッセージを渡す方法はありませんでした。サブネットは互いに完全に分離されていました。

1.2 エリア・アイソレーション

ネットワークを複数の異なるサブネットに分割することで、ネットワークのある部分を別の部分から分離できることは、多くのメリットをもたらす。

1.2.1 エリアの隔離とセキュリティ

あるサブネット 内のデバイスが他のサブネット内のデバイスと相互作用できないようにすることは、セキュリティ上の理由から有用であり、あるいは不可欠でさえある。ホテルの部屋を考えてみよう。部屋のスマートデバイスは、同じ部屋の他のデバイスと通信することはできるが、部屋の外のデバイスと通信することはできない。ホテルの各部屋のデバイスをそれぞれのサブネット 配置することで、各部屋のデバイスを他の部屋のデバイスから隔離し、ホテルの客室のセキュリティ要件を満たすことができます。

図1

図1-ホテルの客室とサブネット 地区の分離

1.2.2 エリア分離とネットワーク効率

また、サブネットを使用して、ネットワーク・トラフィックを建物の1つのエリアに封じ込めることもできます。これは、メッセージが意図されたすべての宛先 ノードに到達するために中継が必要であり、Bluetoothフラッディング 使用されている場合に特に役立ちます。サブネットは、メッセージが中継されてもその境界を越えることができないように、デバイスのグループの周囲に境界を置くと考えることができ、ターゲット・デバイスが存在しないネットワークの部分に無関係なメッセージを中継することが避けられます。

この技法は、オフィスにおいてある階と別の階を分離するためによく使われ、これを図2に示す。3階の照明スイッチから送信されたメッセージは、同じサブネット一部であるため、その階の天井にある中継ノードによって中継されるが、スイッチからの送信を受信する可能性のある上下の階の中継ノードはそれを直ちに破棄するため、メッセージは階を越えて伝播することはない。

図2

図2 - オフィス内のサブネット

1.3 リプレイ攻撃とシーケンス番号

悪意のあるデバイスが受動的にメッセージを受信し、それを後で再送信することで、おそらくネットワークに不正な変更を引き起こす可能性がある。このような攻撃はリプレイ攻撃と呼ばれます。ブルートゥース®メッシュは、リプレイ攻撃を防ぐリプレイ保護メカニズムを定義しています。

リプレイプロテクションは、すべてのメッセージに関連する ノンスこの値には24ビットのシーケンスナンバー (SEQ)が含まれており、送信元ノードは新しいメッセージを送信するたびにこの値をインクリメントしなければならない。ノードが5秒に1回メッセージを送信する場合、SEQ値はラップアラウンドが必要になるまで2年以上かかることになる。しかし、これを防ぐために、SEQ値はネットワーク全体で共有される32ビットの初期化ベクトル(IV)値によって拡張される。IVは、SEQ値が枯渇する危険性があるたびに、IVアップデート 手順と呼ばれる手順によって自動的に更新される。

32ビットのIV値そのものはメッセージには含まれない。その代わり、IVIと呼ばれる1ビットのフィールドが、ネットワークが一度に使用する可能性のある2つのIV値のうち、どちらがメッセージに関連するかを示す。

受信デバイスは、各ソースアドレス最後に正常に処理されたメッセージのIV値とSEQ値を追跡する。同じ送信アドレス最後に受信したメッセージよりも数値的に高いIV値とSEQ値の組み合わせを持たないメッセージが受信された場合、それはリプレイ攻撃の可能性が高いとして破棄される。

1.4ブルートゥース® メッシュ1.0におけるサブネットの評価

Bluetooth Meshプロファイル仕様のバージョン1.0で定義されているサブネットは、セキュリティとネットワーク利用効率に優れたメリットをもたらします。しかし、サブネットが課すエリア分離の絶対的な性質により、満たすことが難しい要件もあります。また、利用効率上の理由から、ネットワーク内の無関係な部分へのメッセージの移動を制限するためにサブネットを使用する場合、ネットワークプランナーはその使用方法を慎重に考えなければなりません。インストーラーは、ネットワークを最初に作成する際に、必要なサブネットを設定しなければなりません。

Bluetooth Mesh Directed Forwarding(Bluetooth Mesh Directed Forwardingの技術概要を参照)は、ノード間のトラフィックの流れをネットワークの関連する部分に制限する優れたアプローチを提供します。サブネットでも似たような結果が得られることがありますが、サブネット エリア分離は、Bluetooth Mesh Directed Forwardingほど正確にターゲットを絞った方法では使用できません。現在、Bluetooth Mesh Directed Forwardingは、ネットワーク利用効率のアドレス 満たす方法として推奨されています。

ネットワーク・セキュリティ・メカニズムとしてサブネットを使ったエリア・アイソレーションは強力な能力だ。しかし、あるホテルが各客室にサブネット エリア・アイソレーションを導入したとしよう。技術的にスマートなホテルの部屋ではデバイスやシステムを手動や自動でコントロールすることができ、宿泊客は大喜びです。ホテルの経営陣は、ある部屋の機器が他の部屋の機器に干渉することがないことに満足している。しかし、ホテル経営者は、各部屋のセンサーが稼働率データを報告できるゲートウェイを設置し、TCP/IPベースのGUIシステムに供給することで、部屋の清掃やランドリーサービスのスケジューリングをさりげなく行えるようにしたいと考えている。これは、ブルートゥース® メッシュ1.0サブネットが使用されている場合、ホテルの各部屋にゲートウェイノードを設置しなければ実現できません。

2.サブネット ブリッジについて

サブネット が提供するエリアアイソレーションを損なうことなく、異なるサブネットにあるデバイス間の通信が必要なユースケースが時々あります。Bluetooth Meshサブネット 機能はこれを可能にします。

2.1 能力とメリット

サブネット 機能 、ネットワークはエリア分離のためにサブネットを使用するが、隣接する異なるサブネット内の特定のデバイス間の通信も選択的に許可することができる。

2.1.1サブネット ブリッジングを有効にする

ネットワークプランナーは、ネットワーク内のどのノードをサブネット ブリッジとして機能させ、隣接する2つのサブネット内の特定のノード間の制御された通信を可能にするかを決定する必要があります。ブリッジ設定サーバモデルの存在は、Bluetoothサブネット ノードによってサポートされていることを示します。

ノードをサブネット するには、サブネット 呼ばれる状態 値をenabledに設定する必要があります。その後、ノードの Bluetooth メッシュサブネット 機能を設定するエントリーを、ブリッジング・テーブルと呼ばれるさらなる状態 設定する必要があります。

2.1.2 ブリッジ・テーブル状態

ブリッジングテーブルは、Bluetooth Meshサブネット 実行するソースアドレスと宛先 アドレスを定義するエントリを含む状態 です。エントリは、一方向のみ、または双方向で、一方のアドレス 他方のアドレスへのブリッジングを定義する。どちらの場合も、2つのサブネットの各ネットワークキーのインデックス値も、各ブリッジングテーブルエントリに含まれる。ブルートゥース® メッシュ・プロトコル仕様のセクション4.2.42に、ブリッジング・テーブル・エントリーの完全なフォーマットが記載されているので、図3でも繰り返し説明する。

フィールド

サイズ(ビット)

項目

道順

8

ブリッジされたトラフィックの許可された方向

NetKeyIndex1

12

最初のサブネットNetKey

NetKeyIndex2

12

2番目のサブネットNetKey

住所1

16

最初のサブネットノードのアドレス

住所2

16

番目のサブネットノードのアドレス

図3 - ブリッジ・テーブルの状態 エントリーのフォーマット

Directionsフィールドは0x01または0x02の値を取る。

0x01は、ソースアドレス (SRC)がAddress1ブリッジングテーブルエントリに等しく、宛先 アドレス DST)がAddress2に等しいメッセージに対して、一方向のブリッジング のみが許可されることを意味し、メッセージが最初のサブネット 2番目のサブネット 転送されることを許可する。

0x02は、ソースアドレス (SRC)がAddress2に等しく、宛先 アドレス DSTがAddress1に等しいメッセージに対して、 第2のサブネット 第1のサブネット ブリッジングを含む、 どちらかの方向にブリッジングが実行される可能性があることを意味する。

2.1.3サブネット ブリッジングとセキュリティ

あるサブサブネット ノードが別のサブネット ノードと通信するのを防ぐためだ。

サブネット 、サブネットをまたいだ通信が可能になります。しかし、ブリッジング・テーブルは、特定の発信元と宛先 アドレス ペア、および特定のサブネットのペア間でのみ通信が可能であることを保証します。例えば、ホテルの場合、宿泊客は、Bluetooth Meshサブネット Bluetooth Mesh Directed Forwardingを使用して、ホテル全体で宿泊客の部屋が属するサブネット ハウスキーピング・チームにメッセージを送信するボタンを押すことで、ハウスキーピング・チームに部屋を掃除してほしいことを伝えることができるかもしれません。しかし、宿泊客の部屋にある他のデバイスは、そのサブネット外にある他のノードと通信することはできません。Bluetooth Meshサブネット 、サブネットをまたいだ選択的で制御された通信が可能ですが、それ以外ではエリア分離によるセキュリティ上の利点が維持されます。

サブネット 宛先 ノードが行うのと同じ方法でリプレイ防御を実行し、サブネット 処理するメッセージの送信アドレス IVとSEQ値を追跡する。IVとSEQ値の組み合わせが、特定の送信アドレス最後に受信した ブリッジの値よりも数値的に高くない場合、その値は破棄される。このように、サブネット ブリッジは、次のサブネット サブネット 宛先 ノードをサービス拒否攻撃から保護することで、次のサブネット 宛先 ノードの前にリプレイ保護を実行する。

2.1.4サブネット 実際

サブネット 、ブリッジサブネット ノード内のネットワークレイヤー 実行される。メッセージを受信するとブリッジング・テーブルは、Address1とAddress2フィールドがメッセージの送信アドレス 宛先 アドレス 一致するエントリ、またはAddress2がメッセージSRCを含み、Address1がメッセージDST アドレス 含み、Directionsフィールドが双方向ブリッジングをサポートすることを示すエントリをチェックします。方向ブリッジがサポートされていることを示す。さらに、メッセージ・ネットワーク PDU が送信サブネット NetKey で暗号化されていることを確認するためのチェックが行われる。これらの条件が満たされると、メッセージは送信サブネット NetKey復号化され、宛先 サブネット NetKey再暗号化された後、再送される。サブネット 適切なコンフィギュレーションが準備されていれば、メッ セージは複数回再送され、複数のサブネットにまたがることができる。

発信元と宛先 アドレス ブリッジングテーブルにないメッセージは、片方向または 双方向ブリッジングエントリーのいずれの形式でも、他のサブネットに再送 されない。中継またはBluetooth Mesh Directed Forwardingは、適切であれば、メッセージが現在のサブネット 内で再送される可能性がある。

2.1.5サブネット ブリッジングとディレクテッド・フォワーディング

Bluetooth Mesh Directed Forwarding(Bluetooth Mesh Directed Forwarding Technical Overview Paperを参照)はBluetooth Meshサブネット ブリッジングと共に使用することができ、2つのノード依存関係があります。

第一の依存関係は、第一のサブネット ソースノードと、第二のサブネット メンバー サブネット 間に存在する。番目の依存関係は、1番目のサブネット メンバー サブネット 、2番目のサブネット 宛先 ノードとの間に存在する。

サブネット・ブリッジは、両方のノード依存関係においてサポート・ノードとして機能し、依存ノードに代わってパス発見と維持手続き、およびメッセージ転送を実行する。

3.閉じる

サブネット 、クロスサブネットが必要なサブネットの使用を、セキュリティを犠牲にすることなく、より柔軟に、より簡単に設定できるようにします。