ClashでChatGPTだけ開けない場合は、ノード障害だけでなく、モード設定やルーティング、DNSが原因かもしれません。よくある症状を切り分け、設定画面で確認する手順をまとめました。
CODENAME: CLASH / CONNECTION BRIEFING
ChatGPTだけ接続タイムアウトになるときの症状を整理する
ChatGPTのページを開こうとすると、読み込みが終わらない、ログイン画面から先へ進まない、「接続がタイムアウトしました」と表示される、または画面は表示されてもメッセージ送信だけが失敗することがあります。ほかのウェブサイトが正常に開く場合、インターネット回線全体が停止しているとは限りません。ChatGPTのウェブ画面、認証処理、API通信、ストリーミング応答のいずれかが、異なる経路で処理されている可能性があります。
最初に確認したいのは、問題がChatGPTだけに限定されているかどうかです。通常の検索サイト、動画サイト、別の海外サイトを同じブラウザで開き、Clashのトラフィック画面に通信が表示されるかを確認します。ChatGPTを開いた瞬間にリクエストがまったく記録されないなら、ブラウザがClashを使っていない、システムプロキシが無効、またはTUNの対象外になっている可能性があります。通信は記録されるのに失敗する場合は、ノード、DNS、ルール、TLS接続のどこかで止まっていると考えます。
ChatGPT側の障害やアカウント制限も原因になり得ます。Clashの設定を大きく変更する前に、同じノードでほかのサービスが使えるか、別のブラウザや端末でも同じ症状が出るかを確認してください。
まずモードとノードを確認する:ルール分岐の誤判定を切り分ける
Clashのルールモードでは、通信先のドメインやIP、ルールセットの内容に応じて、プロキシグループ、DIRECT、REJECTなどの処理先が決まります。ChatGPTのドメインがDIRECTへ送られている場合、ブラウザ全体は正常でも、対象サービスだけ接続できないことがあります。逆に、誤ったルールがREJECTへ振り分けている場合は、ノードを変更しても改善しません。
切り分けでは、まず現在のモードを確認します。通常利用はRuleが基本ですが、検証目的で一時的にGlobalへ切り替え、ChatGPTが開くかを比較します。Globalで開くなら、ノードそのものよりもルールのマッチングやプロキシグループの選択に問題がある可能性が高くなります。Globalでも開かない場合は、現在選択しているノード、DNS、ローカルポート、または外部ネットワークを確認します。検証後はGlobalのまま放置せず、必要なルールを直してRuleへ戻してください。
| 確認項目 | 表示・操作 | 判断 |
|---|---|---|
| 動作モード | Rule / Global / Direct | Globalだけ成功するならルールを確認 |
| プロキシグループ | 現在のノード名 | 別ノードでも同じ結果か比較 |
| 通信ログ | ChatGPT関連ドメインの接続先 | DIRECT、REJECT、Proxyのどれかを確認 |
| システムプロキシ | 有効・無効のスイッチ | ブラウザの通信がClashへ入るか確認 |
特定のノードだけがタイムアウトするなら、そのノードの経路やサーバー側障害が疑われます。複数のノードを順に試し、ChatGPT以外の海外サイトも同時に確認してください。すべてのノードでChatGPTだけ失敗する場合は、単純なノード交換よりもルーティングとDNSの確認を優先します。
設定画面で行う実践手順:ルール、ログ、DNSを順番に確認する
ここでは、設定を一度に複数変更せず、原因を一つずつ切り分けます。クライアントによって画面名は異なりますが、「Profiles」「Proxies」「Rules」「DNS」「Logs」に相当する項目を探してください。
- 設定ファイルをバックアップする:現在使用中のプロファイルを複製するか、編集前の内容を保存します。サブスクリプションから自動生成される設定は、手動編集後の更新で上書きされる場合があるため、変更箇所を記録しておきます。
- Proxies画面でノードを変更する:現在のノードを別の地域または別のサーバーへ切り替えます。遅延テストが成功していても、特定サービスへの接続が正常とは限らないため、ChatGPTを実際に開いて比較します。
- Ruleモードで通信ログを開く:ChatGPTのページを再読み込みし、要求されたドメインがどのポリシーへ送られたか確認します。ChatGPT関連のドメインがDIRECTやREJECTになっている場合は、上位にあるルールやルールセットの順序を調べます。
- 一時的にGlobalで比較する:GlobalでChatGPTが開くなら、ルールの誤判定が有力です。Globalでも失敗するなら、ノード、DNS、TLS、または回線側の制限を次に確認します。
- DNSキャッシュを消去して再接続する:Clash側のDNSキャッシュをクリアし、必要であればOSやブラウザも再起動します。古い名前解決結果が残っていると、現在利用できないIPへ接続し続ける場合があります。
- 最後にTUNを比較する:システムプロキシを使用している場合だけ、TUNを一時的に有効化して同じページを試します。TUNで改善するなら、ブラウザまたはアプリがシステムプロキシを正しく利用していなかった可能性があります。
確認の記録例:
mode: Rule
proxy group: Proxy
selected node: node-02
chatgpt domain policy: Proxy
dns mode: fake-ip
result: login page opens, response stream times out
このように、モード、ノード、判定ポリシー、DNSモード、失敗した段階を記録すると、同じ操作を繰り返さずに済みます。設定変更後はブラウザのタブを閉じて新しいタブを開き、既存の接続やCookieの状態に影響されないように確認します。
ChatGPT関連通信をルールで正しくプロキシへ送る
ChatGPTは単一のページだけで完結するとは限りません。ウェブ画面の表示、ログイン、静的ファイルの読み込み、APIリクエスト、ストリーミング応答などで複数のホスト名が使われます。そのため、トップページのドメインだけをプロキシへ送っても、ログイン後のAPIや応答ストリームがDIRECTへ分岐すると、画面表示はできるのに会話だけ失敗することがあります。
ルールは上から下へ評価され、最初に一致した行で処理が終了します。ChatGPT用のルールを追加する場合は、広すぎるDIRECTルールやGEOIPルールより前に置く必要があります。サブドメインをまとめて対象にする場合はDOMAIN-SUFFIXを使い、サービスの公式ドメインを確認したうえで必要な範囲だけ指定します。DOMAIN-KEYWORDを広範囲に使うと、無関係なドメインまで同じプロキシへ送る可能性があるため、常用設定では慎重に扱います。
rules:
- DOMAIN-SUFFIX,openai.com,Proxy
- DOMAIN-SUFFIX,chatgpt.com,Proxy
- DOMAIN-SUFFIX,oaistatic.com,Proxy
- MATCH,Proxy
上記は構造を理解するための例であり、実際の設定では使用中のサブスクリプションが提供するプロキシグループ名に合わせて書き換えます。グループ名が「Proxy」ではなく「海外」「手動選択」などの場合、存在しない名前を指定すると設定エラーや意図しないフォールバックの原因になります。ルール追加後は設定の構文チェックを実行し、再読み込みしてログで判定結果を確認してください。
サービスのドメインを推測して無制限に追加するのは適切ではありません。公式の接続先やクライアントログで確認できるホストだけを対象にし、認証情報や個人データをログへ貼り付けないでください。
DNSとTUNの確認:ページ表示後に応答だけ失敗する場合
DNSに問題があると、ブラウザは「サイトが見つからない」「接続できない」と表示します。名前解決は成功していても、DNS応答が物理回線側へ漏れていたり、ローカルDNSが返した到達不能なアドレスを使っていたりすると、ChatGPTだけが不安定になることがあります。ClashのDNS設定では、nameserver、fallback、fake-ip、redir-hostなどの組み合わせが動作に影響します。
まずDNSを極端に複雑な構成へ変更せず、現在のモードを確認します。fake-ipを使っている場合は、fake-ip-filterに対象ドメインが誤って登録されていないかを見ます。redir-hostの場合は、名前解決された実IPとルールの判定が関係するため、ログ上の接続先も確認します。DNS設定を変更した後はキャッシュを削除し、古い結果を使った接続を避けます。
TUNモードを利用する場合は、仮想アダプタ、DNSハイジャック、システムVPN、ほかのプロキシソフトが競合していないか確認します。TUNを有効にした直後からすべての通信が止まったなら、ドライバー権限やルーティングテーブルの競合が疑われます。ChatGPTだけを直す目的でTUNを常時有効にする必要はありません。ブラウザがシステムプロキシを利用できるなら、通常のシステムプロキシモードのほうが構成は簡単です。
- ページ自体が開かない:ノード、ルール、DNS、システムプロキシを順に確認します。
- ログインだけ失敗する:認証関連ドメインの判定、ブラウザ拡張、Cookie、時刻設定を確認します。
- 会話送信だけタイムアウトする:ストリーミング接続、長時間接続の扱い、ノードの安定性、TUNまたはHTTPプロキシの経路を確認します。
- 数分後に切断される:ノードの混雑、接続のアイドルタイムアウト、複数VPNの併用を確認します。
最終的には、別ノード、別ブラウザ、別ネットワークの三つを組み合わせて比較します。別ノードで直るなら経路品質、別ブラウザで直るならブラウザ側、別ネットワークで直るなら現在の回線やDNS制限が主な原因です。設定を初期化する前に、この比較結果を残しておくと復旧後の再設定も容易になります。
Clashクライアントを入手する
接続経路を確認したら、使用中のプラットフォームに対応したClashクライアントと設定ファイルを整え、ノード、ルール、DNS、TUNを一項目ずつ検証してください。