RTSP 401 Unauthorized および 404 Not Found: カメラ URL と認証エラーの診断
資格情報、URL パス、ONVIF 検出、およびストリーム プロファイルの証拠を分離することで、RTSP 401 Unauthorized および 404 Not Found のカメラ エラーをトラブルシューティングする方法。
「401 Unauthorized」と「404 Not Found」という 2 つの RTSP エラーがサポート チケットに何度も表示されます。単純そうに聞こえます。 1 つはログインの問題のように見え、もう 1 つは不正な URL のように見えます。実際のカメラの展開では、どちらもより微妙になる可能性があります。
カメラは Web UI で同じ認証情報を受け入れますが、RTSP を拒否する場合があります。レコーダは、メイン ストリームとサブ ストリームに異なるパスを公開する場合があります。 ONVIF スキャンにより、後で変更される URL が検出される場合があります。ベンダーは、チャネル番号、ストリームサフィックス、またはプロファイルトークンを必要とする場合があります。一部のカメラは、パスが長すぎる場合、ストリームが無効になっている場合、または認証モードがクライアントと互換性がない場合に、誤解を招くステータス コードを返します。
Google 検索の場合、ユーザーのクエリは通常、「RTSP 401 許可されていないカメラ」、「RTSP 404 が見つかりません」、「VLC は動作しますが、NVR は信号がありません」、または「ONVIF カメラの RTSP URL が動作していません」などの直接的なものです。有用な記事は、魔法の URL が 1 つあるように見せかけるべきではありません。証拠を収集する方法を示す必要があります。
失敗した RTSP メソッドから開始する
最終エラーのみを記録しないでください。どの RTSP メソッドがそれを返したかを記録します。
- 「オプション」
- 「説明する」
- 「セットアップ」
- 「遊ぶ」
「OPTIONS」が 401 で失敗した場合、認証またはサーバー ポリシーにより、メタデータが要求される前にセッションがブロックされています。 「DESCRIBE」が 401 で失敗した場合、カメラは接続を受け入れますが、そのストリーム パスへのアクセスを拒否することがあります。 「DESCRIBE」が 404 を返した場合、通常、パスはストリーム プロファイルにマップされていません。 「DESCRIBE」が成功した後に「SETUP」が失敗した場合、URL は有効である可能性がありますが、トラック コントロール パス、トランスポート モード、またはメディア プロファイルに問題があります。
次のアクションが変わるため、この区別は重要です。資格情報の修正では、失われたストリーム パスは修復されません。 URL サフィックスを変更しても、ダイジェスト認証の不一致は修復されません。
資格情報をストリーム パスから分離する
クリーンなトラブルシューティング マトリックスは次のようになります。
- 同じユーザー名/パスワードがカメラ Web UI で機能します
- RTSPサービスが有効になっています
- RTSP ポートがクライアント ネットワークから開いています
- URL パスがベンダーのメイン ストリーム パターンまたはサブ ストリーム パターンと一致する
- ストリームプロファイルがカメラで有効になっています
- 認証モードはクライアントと互換性があります
- パスワード内の特殊文字は正しくエンコードされています
Password characters are a frequent source of false failures. A password that contains @, :, /, ?, #, or spaces may need URL encoding when embedded in an RTSP URL. A better test is to use a client that sends credentials separately rather than relying on an inline URL.
404 がネットワークではなくプロファイルまたはパスを意味することが多い理由
「404 Not Found」は、サーバーに到達し、リソースを拒否するのに十分なリクエストを理解したことを意味します。カメラ ストリームの場合、これは多くの場合、次のいずれかを指します。
- 間違ったチャンネル番号
- 間違ったストリームサフィックス
- メインストリームが無効になっている
- サブストリームが無効になっています
- レコーダーのパスはカメラのパスとは異なります
- ONVIF プロファイル トークンが変更されました
- ベンダー固有のアクセス名が必要です
- ストリームは設定で RTSP を有効にした後にのみ存在します
最も有用な証拠は、「DESCRIBE」リクエスト URI と応答ステータスです。 SDP の前にカメラが 404 を返した場合、メディア セッションはまだありません。 URL が実際のストリームにマッピングされていることを確認する前に、RTP 損失またはコーデックのデバッグにジャンプしないでください。
ONVIF 検出は役立ちますが、証拠と同じではありません
ONVIF 検出ではストリーム URI とプロファイル情報を提供できますが、検出された RTSP URI はまだテストする必要があります。一部のシステムは ONVIF を正しく公開しますが、RTSP 認証またはパスの動作は異なります。後で無効化または変更されるプロファイルに対してのみ有効な URI を返すものもあります。
診断シーケンスは次のようになります。
- RTSP URLを検出または入力します
OPTIONSとDESCRIBEを実行します- ステータスコードとヘッダーをキャプチャする
- SDP が返されるかどうかを検査する
- その後のみ、「SETUP」、「PLAY」、RTP、およびコーデックの証拠を検査します。
この順序により、エンジニアはすべての失敗を「カメラがオフライン」の問題として扱うことができなくなります。
RTSP インスペクターの使用方法
RTSP Inspector は、プレーヤー、ONVIF マネージャー、またはカメラ検出製品ではありません。その役割は、何が起こったのかを説明できるように RTSP トランザクションを可視化することです。 401 および 404 の場合、有用な出力は次のとおりです。
- リクエストURI
- 失敗したメソッド
- ステータスコード
- 認証境界
- SDPが返されたかどうか
- 失敗はメディア交渉前に起こったかどうか
- 推奨される次の所有者: 認証情報、カメラ プロファイル、ベンダー URL 形式、ネットワーク ポート、またはストリームの有効化
これはまさに、フィールド インテグレーターやビデオ プラットフォーム エンジニアがカメラ ベンダーにエスカレーションしたり、レコーダーの設定をやみくもに変更したりする前に必要な証拠です。
サポート チケットに「RTSP が機能していません」と表示されている場合は、メソッド、ステータス コード、および SDP 境界を尋ねてください。これにより、一般的な苦情が解決可能なケースに変わります。