メインコンテンツまでスキップ

SDK ネットワークの問題解決

SDKコンテナ、Insight UI、DevKit SSH、RTSP、WebRTCビデオ、またはワークスペースの同期が期待どおりに動作しない場合は、ネットワーク診断ツールを使用してください。

診断コマンドは読み取り専用です。ホストのルーティング、Docker コンテナの状態、公開されているポート、Insight ポートマップ、ファイアウォールの状態、および選択されたLinux ネットワークの詳細を調べます。

簡単に確認する​

sima-cli sdk doctor network --devkit <devkit-ip>

複数の SDK コンテナーが存在する場合、コンテナー名を指定してください。

sima-cli sdk doctor network --devkit <devkit-ip> --container <container-name>

サポートに必要な情報をまとめてください。​

SiMaサポートのサポートが必要な場合は、以下の情報をまとめてください。

sima-cli sdk doctor network --devkit <devkit-ip> --collect

出力先を選択するには:

sima-cli sdk doctor network --devkit <devkit-ip> --collect --output ~/sima-sdk-network-doctor.tar.gz

このパッケージには、安全に処理されたホスト、Docker、ルート、ファイアウォール、NetworkManager、およびInsightポートマップ診断が含まれます。これは、ネットワークサポートを目的としています。アーカイブにSSHキー、Dockerの認証情報ファイル、ブラウザのCookie、またはその他の機密情報を手動で追加しないでください。

一般的な所見​

発見意味推奨される対応
vpn-routeDevKit への経路は、VPN またはトンネルインターフェースを経由します。VPNを切断するか、ルーティングを調整して、DevKitが物理的なDevKitに接続されたインターフェースを使用するようにします。
missing-simasdkbridgeSDKコンテナは実行中ですが、simasdkbridge に接続されていません。sima-cli sdk setup を使用して、SDK を再作成または再起動してください。DevKit ワークフローでは、VS Code Dev Containers を直接起動しないようにしてください。
host-network-modeSDKコンテナは、Docker ホストネットワークを使用して起動されました。SDKをsima-cli sdk setupで再作成してください。ホストネットワークは、サポートされているInsightポートモデルではありません。
port-map-mismatchDocker で公開されているポートと、生成された Insight ポートマップが一致しません。SDKコンテナを再作成し、sima-cliによってポートを再生成し、Insightの構成をまとめて更新できるようにします。
stale-port-bindings停止された SDK コンテナーには、現在利用できなくなった Docker ポートバインディングが保存されています。sima-cli sdk setup を使用して、コンテナーを削除または再作成します。
nm-shared-iptables-blockingNetworkManagerの共有ネットワーク機能は、Dockerのルールが適用される前に、SDKブリッジからのトラフィックを拒否します。sima-cli sdk network repair --devkit <devkit-ip> を実行してください。修正を維持する必要がある場合は、--persist を追加してください(再接続や再起動後も有効にする場合)。
container-devkit-reachabilitySDKコンテナは、DevKitへのSSH接続またはpingによる接続確認に失敗しました。DevKitのIPアドレス、ケーブル/ネットワークの経路、DevKitのSSHサービス、およびホストのファイアウォールを確認してください。

DevKit の依存関係のダウンロードに失敗しました。​

DevKit が推奨される共有ネットワークリンクを使用する場合、インターネットへのアクセスはホストに依存します。DevKit でパッケージのインストール、依存関係のダウンロード、または外部サービスへのアクセスが失敗した場合は、以下の点を確認してください。

  • ホストコンピューターはインターネットに接続できます。
  • ホストの共有ネットワークインターフェースは、現在もアクティブな状態です。
  • VPNルーティングで、DevKitのルートが正しく認識されていません。
  • Linux NetworkManager が共有接続を再作成した場合、転送/NAT ルールは依然として有効です。

実行:

sima-cli sdk doctor network --devkit <devkit-ip>

医師が NetworkManager の共有ネットワークの接続に関する問題を発見した場合、医師が出力した内容に示されている修復コマンドを実行してください。

Linux共有ネットワークのルーティングを修復します。​

Ubuntu/Linux ホストで NetworkManager を使用した共有ネットワークを利用している場合は、次のコマンドを実行してください。

sima-cli sdk network repair --devkit <devkit-ip>

実行時の修正を適用した後、永続的なディスパッチャーフックをインストールするには、次の手順を実行します。

sima-cli sdk network repair --devkit <devkit-ip> --persist

今回の修正は、SDKブリッジと検出された箇所に限定されます。 DevKit-共有ネットワークパスに面している。切り替えは行われません。 Docker ネットワークをホストし、グローバル設定は行いません。 FORWARD ポリシーは ACCEPT.

修理後に確認してください。​

もう一度、医師の診断を実行してください。

sima-cli sdk doctor network --devkit <devkit-ip>

次に、以下のURLを開いてください:Insight

neat --json

ブラウザでInsightを開けない場合は、ホストブラウザからmainUIのホストポートにアクセスできること、およびSDKコンテナがsima-cli sdk setupによって起動されたことを確認してください。

Insight ビューアー URL のルーティング​

Insight が有効な SDK コンテナを作成または再作成すると、SDK セットアップはホストからマウントされた insight-config/url-routing ファイルに direct を書き込みます。これにより、proxy を含む以前のルーティング宣言が置き換えられます。コマンドラインパラメーターは不要です。Insight はローカル起動ヒントを共有プロキシのオリジンとして扱う代わりに、ブラウザーのリクエストホストと公開された videoUI ポートからビューアー URL を構築します。

SDK セットアップは launch-url や browser-ice-address を変更しません。CloudEx DevKit のペアリングはブラウザー URL のルーティングとは別です。--no-insight と --minimal はルーティング宣言を書き込みません。既存のコンテナを再利用する場合、この作成時の初期化は実行されません。

ホスト型 ALB/共有イングレスのプロビジョニングでは、SDK セットアップの後にルーティングの上書きを適用する必要があります。公開 URL を launch-url に、proxy を url-routing に書き込み、Insight を再起動して /api/health と /api/viewer-url を確認してください。SDK コンテナを再作成するとルーティングは direct にリセットされるため、ホスティングのプロビジョニング手順で毎回 proxy を再適用する必要があります。この統合はホスティングチームが担当します。CloudEx の転送と ALB/nginx のルールは別途構成します。

古いローカルコンテナが Insight のバックエンドポートのビューアー URL を返して 404 になる場合は、/home/docker/.insight-config/url-routing に direct を書き込み、そのコンテナ内で insight-admin restart を実行してください。このローカル修復をホスト型 ALB/プロキシ環境には適用しないでください。