研究活動では、論文検索、出版社サイトへのアクセス、参考文献の同期、Overleafでの共同執筆など、性質の異なる通信を一日に何度も切り替えます。すべてを同じ経路へ送ると、国内サイトまで遅くなったり、Zoteroの同期が不安定になったり、Overleafの編集画面だけ接続が切れたりします。この記事では、ClashまたはMihomoを使って学術サービスを用途別に振り分ける方法を解説します。所属機関やサービスの利用規約、ライセンス条件を確認し、正規の認証と契約範囲の中で利用してください。

研究者の通信を用途別に設計する

研究者向けのプロキシ設定で重要なのは、対象サイトを一括して「すべてプロキシ」にすることではありません。論文検索は検索エンジンや出版社のドメインへ接続し、参考文献管理はAPIや同期サーバーへ接続し、Overleafは編集画面・コンパイル環境・画像やGit連携へ接続します。それぞれ必要なドメインや通信特性が異なるため、サービス単位で整理するとトラブルの原因を見つけやすくなります。

作業代表的な通信推奨ルート確認ポイント
論文検索検索エンジン、出版社、DOIサービス状況に応じてプロキシ検索結果と本文の提供元を分けて考える
Zotero同期アカウント認証、同期API、添付ファイル専用ルールで安定した経路同期完了表示とエラーログを確認
Overleaf執筆WebSocket、HTTPS、コンパイル関連通信プロキシまたは遅延の少ないノード編集保存、コンパイル、PDF表示を個別に確認
機関サイト学内ポータル、図書館、VPN認証通常はDIRECT学内IPや証明書認証を壊さない
一般サイトニュース、ローカルサービス、OS更新DIRECT不要なプロキシ利用を避ける

まず「必ずプロキシを通すサイト」「通常接続するサイト」「動作を見ながら決めるサイト」の3群を作ります。特に大学のシングルサインオン、図書館の電子ジャーナル、研究室のファイルサーバーは、プロキシを通すことで認証元の判定が変わる場合があります。学内VPNを利用している場合は、Clashのルールより先にVPN側の設計を確認しましょう。

Zoteroの同期を安定させるルール

Zoteroは文献情報、コレクション、ノート、タグなどを同期します。さらにPDFなどの添付ファイルをクラウド同期する場合、メタデータ同期とファイル転送が別の負荷になることがあります。文献情報だけは成功しているのに添付ファイルだけ失敗する場合は、認証ドメイン、同期API、ファイル配信先が異なる可能性を考えてください。

Clashの接続ログでは、Zoteroを操作した直後に発生したドメインを確認します。アプリ名だけを見て判断するのではなく、実際の接続先、適用されたルール、選択されたプロキシグループを記録することが大切です。ルールを広くしすぎると、Zoteroが参照するローカルファイルや機関内のWebDAVサーバーまでプロキシされることがあります。

Zotero向けルール例
proxy-groups:
  - name: Research-Proxy
    type: select
    proxies:
      - Auto-Select
      - DIRECT

rules:
  # 実際に利用するホスト名は接続ログで確認して調整
  - DOMAIN-SUFFIX,zotero.org,Research-Proxy
  - DOMAIN-SUFFIX,doi.org,Research-Proxy
  - DOMAIN-SUFFIX,crossref.org,Research-Proxy
  - DOMAIN-SUFFIX,university.example,DIRECT
  - MATCH,DIRECT

上の例は考え方を示すテンプレートです。所属機関のドメインや利用しているストレージのホスト名は環境ごとに異なります。DOMAIN-SUFFIXはサブドメインを含めて扱えるため便利ですが、広いドメインを指定すると関係のない通信まで同じグループに入ります。最初は必要なドメインだけを追加し、ログで動作を確認してから範囲を広げてください。

同期テストのコツ:Zoteroで小さなテストコレクションを作り、メタデータ、ノート、添付PDFの順に同期します。すべてを一度に変更すると、どの通信が失敗したのか分かりにくくなります。

Overleafの編集・コンパイルを整える

Overleafでは、ページの表示だけでなく、入力内容の保存、共同編集、コンパイル要求、生成されたPDFの取得など複数の処理が行われます。Webページが開いていても、WebSocketが切断されていると共同編集や自動保存が不安定になることがあります。反対に、ノードの遅延が大きい場合は、編集はできてもコンパイル結果の表示に時間がかかります。

まずブラウザでOverleafへログインし、プロジェクトを開いて短い変更を保存します。その後、コンパイル、PDFプレビュー、共同編集者の変更反映を順番に確認します。接続ログで同じサービスに複数のホストが現れる場合、トップレベルのドメインだけでなく、ログに出た実ホストを確認してください。サブドメインの構成はサービス側の更新で変わるため、古い設定を無条件に信頼しないことが重要です。

Overleafを専用グループへ振り分ける例
proxy-groups:
  - name: Writing-Proxy
    type: url-test
    proxies:
      - node-jp-01
      - node-us-01
    url: https://www.gstatic.com/generate_204
    interval: 300
    tolerance: 80

rules:
  - DOMAIN-SUFFIX,overleaf.com,Writing-Proxy
  - DOMAIN-SUFFIX,overleafusercontent.com,Writing-Proxy
  - MATCH,DIRECT

url-testはレイテンシを基準にノードを選びますが、測定先への遅延が低いことと、Overleafの実際の編集操作が快適であることは必ずしも同じではありません。自動選択で接続が頻繁に切り替わる場合は、selectグループに変更して安定したノードを固定する方法もあります。編集中にノードを切り替えると、既存のWebSocket接続が再確立されるため、長時間の執筆中は手動切り替えを避けるのが無難です。

動作確認をしながら設定する手順

Clash Verge、Clash Verge Rev、Mihomoを利用する場合、設定ファイルの編集方法や画面名はクライアントによって異なります。ただし、検証の順番は共通化できます。いきなり大量のルールを投入せず、最小構成で一つずつ確認してください。

  1. 現在の設定ファイルを別名で保存し、変更前にロールバックできる状態にします。
  2. 利用するノードまたはプロキシグループの接続テストを行い、遅延と安定性を記録します。
  3. Clashの接続ログを開き、Zotero、Overleaf、論文検索を操作した直後のドメインを確認します。
  4. 最初にDOMAIN-SUFFIXの狭いルールを追加し、対象グループへ送ります。
  5. ブラウザのプライベートウィンドウで論文検索、ログイン、本文表示を試します。
  6. Zoteroではメタデータと添付ファイルを別々に同期し、同期履歴と接続ログを照合します。
  7. Overleafでは保存、コンパイル、PDF取得、共同編集の4項目を確認します。
  8. 問題がなければルールを整理し、重複するドメインや不要なワイルドカードを削除します。

テスト中は、ブラウザのキャッシュや既存セッションが結果に影響することがあります。ログイン状態だけでなく、別ブラウザやプライベートウィンドウでも試すと切り分けが容易です。また、論文本文が表示されない場合はClashだけが原因とは限りません。出版社側の認証、大学の契約、Cookie設定、ブラウザ拡張機能、機関VPNの経路も確認してください。

DNSとルール優先順位を確認する

学術サービスの振り分けでは、ルールを書いたのに期待した経路へ進まない問題がよく起きます。Clashのルールは通常、上から順に評価され、最初に一致したルールが使われます。先にMATCH,DIRECTを置くと、その下に追加したZoteroやOverleafのルールへ到達しません。具体的なドメインルールを上へ置き、最後に包括的なフォールバックを配置してください。

DNSモードは、ドメイン名でルーティングしたい環境ではfake-ipが扱いやすい場合があります。Clashがアプリの接続をドメインとして認識しやすく、IPの変化に左右されにくいためです。ただし、機関内システム、ローカルプリンター、特殊な認証クライアントなどはfake IPと相性が悪いことがあります。その場合はfake-ip-filter*.localや学内の必要なドメインを除外し、実IPを使わせます。

認証情報に注意:設定ファイルへアカウントのパスワード、APIキー、出版社の個人用トークンを直接書かないでください。設定を共有したりGitで管理したりする場合は、秘密情報が漏えいする可能性があります。Clashの設定には必要最小限の情報だけを置き、漏えいが疑われる場合は直ちにトークンを無効化してください。

よくある不具合と長期運用

「論文検索はできるが本文が開かない」場合は、検索エンジンと出版社の経路が異なる可能性があります。出版社ドメインのルール、機関認証の状態、ブラウザCookieを確認してください。「Zoteroの情報は同期するがPDFだけ失敗する」場合は、添付ファイルの保存先やWebDAV設定を点検します。「Overleafは開くが保存されない」場合は、WebSocketを遮断している拡張機能、プロキシのタイムアウト、ノードの切り替え頻度を確認します。

設定を安定させるには、変更履歴を残すことも有効です。日付、変更したルール、テストしたサービス、結果を短く記録しておけば、サービス側の仕様変更やネットワーク環境の変化があったときに原因を追跡できます。Rule Providerを利用する場合も、外部リストを無条件に信頼せず、内容、更新元、更新頻度を確認してください。研究室で設定を共有するなら、個人の認証情報を除いたテンプレートだけを配布し、各自が自分の環境に合わせて調整する方法が安全です。

症状確認する場所対処の方向性
ルールが適用されないルールの順序、接続ログ具体的なルールをMATCHより上へ移動
接続が頻繁に切れるノード遅延、url-testの切替安定したノードをselectで固定
学内サイトだけ開かないVPN、DNS、認証元IP必要な学内ドメインをDIRECTへ分離
PDF取得が遅い添付ファイルの保存先、帯域メタデータとファイル通信を分けて確認

研究用途では、速度だけでなく再現性と安全性も重要です。必要なサービスだけを明示的に振り分け、ローカルサイトや機関認証への影響を抑え、ログで定期的に見直す構成が長く使いやすい設計になります。Clashの基本設定を整えたうえで、自分の検索環境、Zoteroの同期方式、Overleafの共同執筆スタイルに合わせて少しずつ調整していきましょう。

はじめる

Clash でトラフィックを完全制御

Windows・macOS・Linux・Android・iOS 対応。柔軟なルール、すぐに使えます。

無料ダウンロード セットアップガイドを見る →