Thread ボーダー ルーターは、Thread ネットワークを Wi-Fi やイーサネットなどの他の IP ベースのネットワークに接続します。Thread ネットワークでは、他のネットワークに接続するために Border Router が必要です。
Thread ボーダー ルーターは、少なくとも次の機能をサポートします。
- Thread ネットワークと Wi-Fi/イーサネット ネットワーク間の双方向 IP 接続
- mDNS(Wi-Fi/イーサネット リンク)と SRP(Thread ネットワーク)を介した双方向サービス ディスカバリ。
- IP ベースのリンクで Thread パーティションをマージする Thread-over-Infrastructure。
- Thread デバイスを認証して Thread ネットワークに接続するための外部 Thread コミッショニング(スマートフォンなど)。
OpenThread のボーダー ルーターの実装は OpenThread ボーダー ルーター(OTBR)と呼ばれ、無線コプロセッサ(RCP)設計をサポートしています。プラットフォームを選択する際は、RCP を使用する次の利点を考慮してください。
- その他のリソース: OpenThread は、ホスト プロセッサのリソースを利用できます。これは通常、802.15.4 SoC のリソースをはるかに上回ります。
- 費用対効果の向上: 802.15.4 SoC のリソース要件を最小限に抑えることで、費用対効果の高いソリューションを実現できます。
- デバッグが簡単: 処理の大半はホスト プロセッサ上で行われるため、より高性能なデバッグ ツールをホスト プロセッサ上で使用できます。
- より安定した 802.15.4 SoC ファームウェア: RCP はサブ MAC と PHY のみを実装し、802.15.4 SoC がファームウェアを更新する必要がある頻度を減らします。
- ホスト IPv6 ネットワーク スタックとの統合が容易: ホストで OpenThread を実行すると、ホスト IPv6 スタックとのより直接的な統合が可能になります。
機能とサービス
OTBR には次のような多くの機能が含まれています。
- 構成と管理のためのウェブ GUI
- 外部コミッションをサポートする Thread ボーダー エージェント
- Thread ネットワークの IPv6 接頭辞を取得するための DHCPv6 接頭辞の委任
- IPv4 ネットワークに接続するための NAT64
- Thread デバイスが IPv4 専用サーバーへの名前で通信を開始できるようにする DNS64
- OpenThread の組み込み機能を使用した Thread インターフェース ドライバ
- Docker のサポート
ボーダー ルーター サービス
OTBR は以下のサービスを提供します。
- mDNS パブリッシャー - 外部コミッショナーが OTBR とそれに関連する Thread ネットワークを検出できるようにします。
- PSKc ジェネレータ - PSKc 鍵の生成用
- ウェブサービス - Thread ネットワークを管理するためのウェブ UI
ボーダー ルーター サービス用のサードパーティ コンポーネントには、ウェブ UI のフレームワーク用の Simple Web Server と Material Design Lite があります。
OTBR ファイアウォール
OTBR は iptables
と ipset
を使用して、次の上り(内向き)フィルタリング ルールを実装します。
- オフメッシュ ルーティング(OMR)アドレスとメッシュローカル接頭辞ベースのアドレスなど、オンリンク アドレスのソースで開始された受信パケットをブロックします。
- 宛先アドレスが OMR アドレスまたは Domain Unicast Address(DUA)でない受信ユニキャスト パケットをブロックします。
- 送信元アドレスまたは宛先アドレスがリンクローカルである受信ユニキャスト パケットをブロックします。このルールはカーネルによって処理され、明示的には設定されません。