Clashを使っているのにChatGPTへ接続できない理由
ChatGPTが開かない、ログイン画面だけが読み込み中のまま止まる、送信後に「ネットワークエラー」やタイムアウトが表示される。このような症状では、最初から「ノードが遅い」と決めつけないことが重要です。Clashでは、通信先のドメインをルールで判定し、DNSで名前を解決し、選択されたポリシーグループからノードへ接続します。どこか一つでも経路が分かれると、ブラウザのトップページは表示できても、ログインや会話の送信だけが失敗することがあります。
ChatGPTの利用時には、画面本体だけでなく、認証、セッション更新、API、静的ファイル、ストリーミング応答など複数の接続が発生します。たとえばログイン画面が表示されても、認証用ホストが別のルールで DIRECT に送られていれば、ログイン完了後のリダイレクトで止まります。また、会話一覧は開けるのに回答生成だけがタイムアウトする場合は、APIまたは長時間接続の経路に問題がある可能性があります。
最初に確認するモード・ポート・システムプロキシ
Clash Verge、Clash Verge Rev、Clash for Windows、ClashX、Clash for Android、Mihomo系クライアントでは、画面の名称や配置が異なりますが、確認する順序はほぼ共通しています。まずClash本体が起動しているか、現在のプロファイルが有効か、コアがエラーなく動作しているかを確認してください。プロファイルを読み込んだだけでは通信がClashを通るとは限らず、モードやOS側のプロキシ設定が別途必要になる場合があります。
ブラウザをシステムプロキシで動かす構成なら、Clashの mixed-port またはHTTPプロキシポートと、OSやブラウザが指定しているポート番号が一致している必要があります。たとえばClashが 7890 で待ち受けているのに、WindowsやmacOS側が 7891 を参照していれば、プロキシをオンにしても接続は失敗します。別のVPN、企業用PAC、ブラウザ拡張のプロキシ設定が残っている場合も、Clashとは異なる経路へ流れる原因になります。
TUNモードを使う場合は、システムプロキシがオフでもアプリ通信を捕捉できる一方、仮想ネットワークインターフェース、権限、DNS設定、他のVPNとの競合を確認しなければなりません。トラブル発生時は、まずTUNを一時的に無効にしてシステムプロキシだけで試すか、逆にブラウザのプロキシを切ってTUNだけで試します。二つの方式を同時に変更すると、どの設定が原因だったのか分からなくなります。
| 症状 | 優先して見る場所 | 考えられる原因 |
|---|---|---|
| ページ自体が開かない | モード、ポート、ノード | Clashを経由していない、または出口が利用できない |
| ログイン後に戻される | 認証関連の接続ログ | 認証ホストだけDIRECT、CookieやTLSの経路が不安定 |
| 回答生成で止まる | APIとストリーミング接続 | ルール漏れ、ノードの遅延、長時間接続の切断 |
| 一部の画像や画面だけ欠ける | DNSとCDNの接続先 | 静的アセットの名前解決失敗、地域別CDNの経路不整合 |
ChatGPT関連通信をルールとDNSの両面で確認する
接続ログに表示されたホストが、意図したプロキシグループへ入っているかを確認します。ChatGPT本体のドメインだけを追加しても、認証やAPI、静的コンテンツが別ホストから配信される構成では不十分なことがあります。特定のホスト名を推測して大量に登録するより、実際に失敗した接続を一つずつ観測し、必要な範囲だけ DOMAIN や DOMAIN-SUFFIX で整理する方が安全です。
ルールの順序も重要です。Clashは通常、上から順番に評価し、最初に一致したルールで出口を決定します。ChatGPT向けの行を広い広告ブロック、地域別GEOIP、一般的なCDNルールより下へ置くと、先に別ルールへ捕捉される場合があります。反対に、対象範囲を広げすぎて全通信を同じグループへ送ると、国内サイトまで遅くなり、問題の原因が見えにくくなります。
DNSの問題では、ブラウザが表示したエラーだけでは判断しにくいことがあります。ClashのDNSが無効になっている、OSのDNSへフォールバックしている、IPv6だけ別経路になっている、Fake-IPとRedir-Hostの方式がクライアントやTUN設定と合っていない、といった差が接続結果に影響します。まず同じホストを複数回解決したときに極端な揺れがないか、Clashログで名前解決エラーや接続先アドレスの変化がないかを確認してください。
実際に行う五段階の復旧手順
ここでは、ClashのGUIが異なる場合でも追いやすいように、設定項目ではなく作業の順番で進めます。問題が再現する端末とブラウザを一つに固定し、各段階の結果をメモしてください。
- Clashの稼働状態を確認する。有効なプロファイル、実行中のコア、現在のモード、混合ポート番号を確認します。購読更新直後なら、YAMLの構文エラーやプロキシグループ名の欠落もログで確認してください。
- 経路を一つに絞る。TUNとシステムプロキシを同時に使わず、短時間だけ片方を無効にします。ブラウザの手動プロキシ、PAC、他社VPN、セキュリティソフトのHTTPS検査も一時的に差分確認します。
- 単一ノードでテストする。自動選択、負荷分散、チェーンなどをいったん避け、遅延が安定しているノードを明示的に選びます。ノードを変えるたびに、トップページ、ログイン、短い送信の三つを同じ順序で試します。
- 接続ログから失敗箇所を探す。タイムアウトした時刻の前後を見て、認証、API、CDNのどのホストが失敗したかを区別します。すべての通信がログにないなら、そもそもブラウザがClashを経由していない可能性があります。
- ルールとDNSを一項目ずつ戻す。必要なホストだけを適切なポリシーへ割り当て、設定を保存してからプロファイルを再読み込みします。最後にブラウザのキャッシュやCookieを確認し、ネットワーク設定を変えた直後の古いセッションをそのまま使わないようにします。
変更後にページが開いても、短い会話を一度送信して終わりにしないでください。ストリーミング応答が数十秒続く場合、最初のTLS接続だけ成功しても途中で接続が切れることがあります。短文、長文、コードブロックを含む回答など、通信時間の異なる操作を試し、同じノードと同じポリシーで最後まで維持できるかを確認します。
ルール追加時の考え方
次の断片は考え方を示す最小例です。実際のホスト名やグループ名は、利用中のサービス仕様と自分の接続ログに合わせて置き換えてください。既存のルールで先に一致している場合は、単に行を追加するだけでは効果がありません。
rules:
- DOMAIN-SUFFIX,openai.com,CHATGPT_POLICY
- DOMAIN-SUFFIX,chatgpt.com,CHATGPT_POLICY
- DOMAIN-SUFFIX,oaistatic.com,CHATGPT_POLICY
- MATCH,FINAL_POLICY
設定を反映した後は、ルール名がConnections画面に表示されるかを確認します。CHATGPT_POLICY が実際のポリシーグループ名と一致していない、購読更新でグループが消えている、またはインデントが崩れている場合は、ルール自体が読み込まれません。YAMLを編集する際はタブを使わず、バックアップを残したうえで構文エラーの有無を先に確認してください。
タイムアウトが続くときのノード品質と設定の見直し
同じルールと同じDNSでも、ノード品質によって結果が変わることがあります。レイテンシが低いノードでも、ChatGPTのAPIやストリーミングに必要な長時間接続が安定するとは限りません。接続開始が速いか、TLS確立後に応答が継続するか、一定時間後にRSTやEOFが出ないかを分けて見てください。自動テストURLの数値だけで判断せず、実際のサービス操作とClashログを組み合わせることが大切です。
複数ノードを使う場合も、最初からload-balanceを採用するより、まずselectで安定した出口を特定する方が原因を追いやすくなります。ログインやセッション更新の途中で出口IPが変わる構成は、サービス側のリスク判定やCookieの扱いと相性が悪い場合があります。安定後に自動選択へ戻すなら、切り替え頻度、失敗時のフォールバック、同一サービス内での出口固定を確認してください。
また、Clashのタイムアウト値をむやみに延長するだけでは解決になりません。名前解決が失敗している場合や、ルールがDIRECTへ送っている場合、待ち時間を増やしても正しい経路にはなりません。先にDNS、ルール、ポート、ノードの順で観測し、それぞれが正常だと確認できた段階で、必要に応じて接続維持や待機時間の設定を調整します。
判断の目安:複数のノードで同じホストだけが失敗するならルールまたはDNSを疑い、特定ノードだけが失敗するならノード品質や出口側の問題を疑います。ChatGPT以外の同じ経路のサービスも同時に止まるなら、Clash全体、OSのネットワーク、または上流回線の切り分けを優先してください。
旧式クライアントではTUN、DNS、HTTP/2、購読形式の扱いが現在の設定と合わないことがあります。また一般的なVPNアプリは接続自体を簡単にできても、ドメイン単位のルール確認やポリシーごとのログ観測が弱く、ChatGPTだけを安定させたい場面では調整しにくいことがあります。Clash V.COREなら、プロファイル、ルール、DNS、TUN、接続ログを同じ運用画面で確認しながら、問題のホストだけを個別に切り分けられます。設定を手元に残して再現性を高めたい方は、環境に合うビルドをダウンロードして、まず単一ノードと最小ルールから復旧を始めてください。
// エディターズ・チョイス
ChatGPTの接続経路を見える化するClash V.CORE
ノード、DNS、ルール、TUNの状態を順番に確認し、タイムアウトの原因を推測ではなくログから切り分けられます。
- 接続ログで失敗ホストを確認
- ルールごとの出口を整理
- DNS方式とTUNを個別に調整
- 複数プロファイルを安全に管理
- 安定ノードを手動で比較