1081 words
5 minutes
Chromiumネットワークエラーコード完全仕様:net_error_list.hに基づく体系的解説
last_modified: 2026-01-27
技術的根拠: 本記事の分類およびコード定義は、Chromiumプロジェクトのソースコード
net/base/net_error_list.hを「唯一の信頼できる情報源(Single Source of Truth)」として参照しています。
1. エラーコードの内部構造と範囲定義
Chromiumのネットワークスタックは、エラーを以下の範囲(Range)で管理している。この構造を理解することで、エラー番号から障害レイヤーを即座に特定可能となる。
| 範囲 (Range) | カテゴリ | 主な対象 |
|---|---|---|
| 0 〜 -99 | System & Generic | OSレベルのIOエラー、汎用的な失敗 |
| -100 〜 -199 | Connection | TCP/IP接続、DNS解決、アドレス管理 |
| -200 〜 -299 | Certificate (SSL/TLS) | 証明書検証、チェーン検証、失効確認 |
| -300 〜 -399 | HTTP & Protocol | HTTPレスポンス、リダイレクト、HTTP/2 |
| -400 〜 -499 | Cache | ディスクキャッシュの読み書き整合性 |
| -500 〜 -599 | (Reserved) | 未使用領域 |
| -600 〜 -699 | FTP | FTPプロトコル(現在サポート縮小傾向) |
| -700 〜 -799 | Certificate Manager | クライアント証明書ストア操作 |
| -800 〜 -899 | DNS Resolver | 内部DNSリゾルバの詳細挙動 |
※Chromiumの実装上、エラーコードは負の値(例: -105)で返されるが、コンソール等では正の値(ERR_NAME_NOT_RESOLVED)として表示されることが多い。
2. System & Generic Layer (0 to -99)
ネットワーク以前の、システムコールやAPIレベルでの障害。
- ERR_FAILED (
-2)- 意味: 汎用的な失敗。より具体的なエラーコードに該当しない場合の「Catch-all」として機能する。
- ERR_ABORTED (
-3)- 意味: ユーザー操作(停止ボタン押下)や、ページのナビゲーション変更によってリクエストが中断された。
- ERR_INVALID_ARGUMENT (
-4)- 意味: 関数への引数が無効。内部ロジックのバグや不正な設定値。
- ERR_ACCESS_DENIED (
-10)- 意味: ファイルやソケットへのアクセス権限不足。OSのパーミッション設定やサンドボックス制限。
3. Connection Layer (-100 to -199)
物理層からトランスポート層までの接続確立プロセス。
アドレス・インターフェース関連
- ERR_ADDRESS_INVALID (
-108)- 意味: IPアドレスのフォーマットが無効、または到達不可能なアドレス(
0.0.0.0等への接続試行)。
- 意味: IPアドレスのフォーマットが無効、または到達不可能なアドレス(
- ERR_ADDRESS_IN_USE (
-147)- 意味: ローカルポートの競合。指定されたポート番号が既に他のプロセスに占有されている。
- ERR_NETWORK_CHANGED (
-21)- 意味: 通信中にネットワークインターフェースの変化(Wi-Fiから4Gへの切り替え、IPアドレス変更)が検知された。
接続確立・維持
- ERR_CONNECTION_TIMED_OUT (
-118)- 意味: SYNパケットに対するACK応答なし。ファイアウォールによるドロップの可能性大。
- ERR_CONNECTION_RESET (
-101)- 意味: TCP RST受信。Deep Packet Inspection (DPI) やサーバー側の強制切断。
- ERR_SOCKET_NOT_CONNECTED (
-15)- 意味: データ送受信を試みたが、ソケットが接続状態にない。パイプライン処理の不整合など。
4. Certificate & SSL/TLS Layer (-200 to -299)
現代のWebにおいて最もトラブルシューティングが困難なセキュリティレイヤー。
検証・信頼性
- ERR_CERT_COMMON_NAME_INVALID (
-200)- 意味: 証明書のSANsとホスト名の不一致。
- ERR_CERT_DATE_INVALID (
-201)- 意味: 有効期限切れ(Expired)または開始前(Not Valid Yet)。クライアント時刻ズレも原因となる。
- ERR_CERT_AUTHORITY_INVALID (
-202)- 意味: 未知の認証局(自己署名証明書など)。
高度なセキュリティ要件
- ERR_CERT_REVOKED (
-205)- 意味: CRLやOCSPにより、証明書の失効(Revocation)が確認された。
- ERR_CERT_WEAK_SIGNATURE_ALGORITHM (
-208)- 意味: SHA-1など、暗号学的に脆弱な署名アルゴリズムが使用されている。
- ERR_CERTIFICATE_TRANSPARENCY_REQUIRED (
-214)- 意味: Certificate Transparency (CT) ログへの登録が確認できない。EV証明書や特定のブラウザポリシーで必須。
5. HTTP & Protocol Layer (-300 to -399)
アプリケーションプロトコル固有のエラー。HTTP/2やQUICの普及により重要度が増している。
HTTP/1.1 & General
- ERR_TOO_MANY_REDIRECTS (
-310)- 意味: リダイレクトループ検出(通常20回以上)。
- ERR_EMPTY_RESPONSE (
-324)- 意味: 接続は確立したがデータが0バイトで切断された。
Modern Protocols (HTTP/2, QUIC)
- ERR_HTTP2_PROTOCOL_ERROR (
-337)- 意味: HTTP/2のフレーミングエラー、ヘッダ圧縮(HPACK)の不整合、またはストリーム管理の違反。
- ERR_QUIC_PROTOCOL_ERROR (
-356)- 意味: QUIC接続におけるUDPパケットの不整合や暗号化ハンドシェイクの失敗。ファイアウォールによるUDP遮断でTCPへフォールバックする過程で記録されることもある。
6. Cache Layer (-400 to -499)
ブラウザのディスクキャッシュに関連するIOエラー。
- ERR_CACHE_READ_FAILURE (
-401)- 意味: ディスクからのキャッシュデータ読み出しに失敗。ファイルシステムの破損やディスク障害の可能性。
- ERR_CACHE_WRITE_FAILURE (
-402)- 意味: キャッシュ書き込み失敗。ディスク容量不足(Disk Full)で発生頻度が高い。
- ERR_CACHE_MISS (
-400)- 意味: 必要なリソースがキャッシュに存在しない(「フォーム再送信の確認」画面などで発生)。
7. 結論
Chromiumのエラーコード体系は、単なるトラブルシューティングの識別子ではなく、ブラウザがネットワークをどのように抽象化・階層化しているかを映す鏡である。
net_error_list.h に定義されたこれらのコードを理解することは、Webアプリケーションのデバッグのみならず、ネットワークプロトコルの深い理解へと繋がる。
Chromiumネットワークエラーコード完全仕様:net_error_list.hに基づく体系的解説
https://ss0832.github.io/posts/20260127_errr_code_browser/ Related Posts
ドメイン再登録時におけるDNS伝播遅延とネガティブキャッシュのメカニズム:DNS_PROBE_POSSIBLEの解析
2026-01-27
同一ドメインの再登録時に発生する接続不可事象について、DNSのネガティブキャッシュ(NXDOMAIN)、ChromiumのDNSプローブ機構、およびSSL証明書プロビジョニングの競合状態(Race Condition)の観点から論じる。
Chromium系ブラウザにおけるネットワークエラーコードの体系的分類と診断
2026-01-27
Google ChromeおよびMicrosoft Edge等で発生する内部エラーコード(net::ERR_)の一覧とその技術的要因について、OSI参照モデルの階層別に解説する。
ドメイン再登録時におけるDNS伝播遅延とネガティブキャッシュのメカニズム
2026-01-27
同一ドメインを異なるホスティング環境へ付け替える際に発生する接続不可事象について、DNSのネガティブキャッシュ(NXDOMAIN)およびSSL証明書発行プロセスの観点から論じる。