banner
raye~

Raye's Journey

且趁闲身未老,尽放我、些子疏狂。
medium
tg_channel
twitter
github
email
nintendo switch
playstation
steam_profiles

surge入坑指南(一)

biaoti22

なぜ surge を使うのか?#

surge の三端ユーザーとして、mac 端 + スマートフォン端 + Apple tv 端

image image image

surge のインターフェースは確かに美しいと言わざるを得ません(

  • 主な用途:ストリーミング視聴 + 海外アプリ使用 + ChatGPT
  • 次に:京東の価格比較、アリババクラウドの自動サインイン、Bilibili の UI 変更など多様なモジュール
  • 開発用途:パケットキャプチャ、会員破解

実際には、私が使用している機能は surge が含むものには遠く及びません。ゲートウェイ設定、内網透過、DHCP サーバーなどの高度な機能も試したことがありますが、日常的にはあまり関与しないので詳しくは言及しません。

もちろん、上記の機能は実際には QuanX、clashX、小火箭も代替品として使用可能で、価格も比較的安価です(clashX は無料)。もし surge に本気でハマるつもりなら、課金の準備をしておいてください、ハハ。

surge に入るにはどうすればいいのか?

ウェブサイトでの購入を強くお勧めします、App Store 内での購入ではなく、私に感謝することになるでしょう(なぜなら、海外の Apple ID アカウントは簡単に禁止され、他人と共有するのも難しいからです)。

ウェブサイトでの購入では、複数のデバイスをサポートするプランを購入することをお勧めします。共有して往復できるので、個人で購入するのは少し損です🥹。

surge を手に入れたら、まだ終わりではありません。空港サービスを購入する必要があります(自分でノードを構築することも可能ですが、面倒で封鎖されやすいです)。私がずっと使っている空港をお勧めします(私のリンクから登録すると割引が得られます😄)。

https://rabbitpro.net/auth/register?code=JEBu

さて、次のステップは設定をインポートすることです。空港は自動的に設定を提供しており、開箱後すぐに使用可能です。

Untitled 2

設定をインポートした後、現在の設定のコピーを作成することをお勧めします。後で編集しやすくなります(現在の設定は変更できません)。

surge の基本インターフェースについても紹介します:

image image image image image

さて、あなたは正式に入門しました。次は surge の魔力を目撃することです。

基本的な分流ルール#

まず、分流とは何かを理解する必要があります。この点については統一された定義はないようですが、私の理解は以下の通りです:

インターネットを使う本質は、サーバーとのデータ転送です。転送されるデータはバイト数で統計され、どれだけのトラフィックになるかを示します(余談ですが、『アップロードされた新生』というドラマを見ることをお勧めします。トラフィックについてより深く理解できるでしょう)。

私たちとサーバーの間には多くの接続があります。これらの接続は簡単に分類できます。例えば、国内のサービス、国外で壁に阻まれていないサービス、国外で壁に阻まれているサービスです。

分流とは、国外で壁に阻まれているサービスをすべて空港のプロキシを通じて通過させ、壁の封鎖を回避することです。ここには図が必要ですが(実際にはありません🐶)。

簡単にまとめると:

  • 国内のサービス
  • 国外で壁に阻まれていないサービス
  • 国外で壁に阻まれているサービス

この中で、国外で壁に阻まれているサービスは地域の制限によって無形の壁が加わります。例えば、OpenAI のサービスは香港の IP がブロックされています。

したがって、私たちはさらに分流を進め、国外のサービスを異なる地域のノードに分流する必要があります。例えば、一般的な香港、アメリカ、インド、ナイジェリア、トルコ、アルゼンチン(私は精神的なアルゼンチン人です!)などです。

前のセクションでインポートした surge 設定ファイルの中には、この分流を行うための大部分が含まれています。

この時、surge を開くと、「ルールモード」に切り替える必要があります。3 つのモードはそれぞれ以下のように理解できます:

  • 直接接続:surge は小透明に変身し、すべてのトラフィックを一括で通過させます。
  • グローバルモード:surge は大魔王に変身し、すべてのトラフィックが surge のプロキシを通ります。
  • ルールモード:surge は検査官に変身し、私たちが設定した分流ルールに従って分流します。

ルールモードに切り替えた後、現在の戦略グループはまだ比較的シンプルで、国内、国外、Apple、その他の 4 つのカテゴリに分かれています。

例えば、ChatGPT サービスにアクセスしたい場合、ChatGPT のサービスをすべてアメリカのノードを通じてアクセスする必要がありますので、いくつかのことが必要です:

  • ChatGPT のサーバーはどれか
  • アメリカのノード
  • 分流ルール

では、ChatGPT のサービスは何でしょうか?すでに誰かが整理してくれています。surge rule chatgpt githubを検索すれば見つかります:ios_rule_script/rule/Surge/OpenAI/OpenAI.list at master · blackmatrix7/ios_rule_script (github.com)

ここにリストされているのは、私たちが取得する必要のある元の raw リンクです。

https://raw.githubusercontent.com/blackmatrix7/ios_rule_script/master/rule/Surge/OpenAI/OpenAI.list

もちろん、jsdelivr で加速されたものを使用することをお勧めします(raw.github のリンクはブロックされているため、後のリソース更新でエラーが発生しやすいです):

jsdelivr の加速方法は、github のドメイン名を cdn.jsdelivr.net/gh に置き換えるだけです。

https://cdn.jsdelivr.net/gh/blackmatrix7/ios_rule_script/rule/Surge/OpenAI/OpenAI.list

Untitled 8

第一歩が準備できたら、第二歩としてアメリカ関連のノードを準備します。空港からインポートした設定を使用している場合、すでに多くのノードが自動的に追加されています。もちろん、自分の VPS ノードを手動で追加することもできます。

これらのノードを地域ごとに分類することができます。[プロキシサーバー]をクリックして最下部にドラッグし、新しい戦略グループを追加します:

surge はプロキシサーバーと戦略グループ(つまりプロキシサーバーの集約)をすべてプロキシサーバーとして扱います。

アメリカのノードをすべてドラッグします(他の地域で OpenAI の安定性を解除するのは一般的に難しいため、アメリカのノードが最も安定しています)。

image

第三歩として、分流ルールを設定します。この時点で、ChatGPT への分流ルールを直接追加できます。

image image

さて、成功しました。ChatGPT にアクセスしてみてください。

補足#

空港のノードは安定していない場合があり、一時的に使用できないことがあります。

この時、戦略グループに切り替え、速度テストをクリックして、接続がスムーズなノードに切り替えます(人工的な負荷分散です🤣)。

手動で切り替えるのが面倒な場合は、戦略グループ内で次の 2 つを選択できます。

  • URL 遅延自動テスト:自動的に遅延が最も低いものを選択します。
  • URL 可用性自動テスト:利用できない場合はランダムに利用可能なものを選択します。
  • 負荷分散:毎回ランダムに切り替えます。

image image

上級分流ルール#

すでに最初のルールを追加したので、次はたくさんのルールを追加してみたいと思います。例えば Netflix、HBO、pornhub(大雾)。

いじる前に忘れないでください。これらのルールを追加する本質は、無感知のインターネットを実現することです。つまり、国内外のサービスにアクセスする際、surge は自動的にプロキシを選択するか、プロキシを使用しないようにします。

これらのルールはここで見つけることができます:https://github.com/blackmatrix7/ios_rule_script.git、ゆっくりいじってみてください。

ルールの微調整#

いくつかのルールは期限切れの可能性があります。例えば HBO のルールは、ネットで見つかるものはほとんどが期限切れです。したがって、次のようにできます:

  1. まず、グローバルモードに切り替え、ノードをアメリカに設定します。この時、surge の大魔王はすべてのトラフィックをアメリカのノードを通過させることを強制します(この時、国内のドラマを見ないでください。速度が遅く、トラフィックを無駄にします)。
  2. この時、HBO MAX アプリを開き、【最近のリクエスト】ページでどのドメインにアクセスしたかを観察します(surge はリアルタイムで観察できる浮き窓も提供しています)。
  3. 追加したいルールのドメインを選択します。一般的に非常に特徴的です。例えば、[hbo.com](http://hbo.com)[max.com](http://max.com)などです。一般的にはDOMAIN-SUFFIXを選択します(後でこれが何か説明します)。

一時的なルールまたは永久的なルールを選択できます。これはテストのために考慮されています。

image image image

ルールの詳細#

前述のように、私たちが使用しているのはルールセットであり、一連の分流ルールが含まれています。surge ではこれをRULE-SETと呼びます。

RULE-SETの形式は、一行に一つのルールが含まれています。surge のルールは、ドメインの分流だけでなく、IP やプロセス(mac 上)にも適用できます。

一般的なルール形式には以下があります:

  • ドメインルール
    • DOMAIN:特定のドメインを厳密に一致させます。
    • DOMAIN-SUFFIX:特定のドメインおよびそのサブドメインに一致します。例えば、DOMAIN-SUFFIX,apple.com は apple.com と www.apple.com に一致しますが、anapple.com には一致しません。
  • IP アドレスルール
  • その他のルール
    • PROCESS-NAME:Mac バージョンのみ有効で、プログラム名に一致します。
    • SRC-IP:接続元 IP アドレスに一致します。他のデバイスの接続を引き継ぐ際に使用できます。
    • IN-PORT:Mac バージョンは複数ポートのリスニングをサポートしており、異なるリスニングポートに特定のルールを設定できます。

詳細については、ドキュメントを参照してください:Surge 公式中国語ガイド:Surge の原理を理解する (nssurge.com)

スクリプト&モジュール#

スクリプトとモジュール機能を使用する前に、MITM を開くことをお勧めします。

MITM を開くには証明書の信頼操作が必要です。ここでは詳しくは言及しませんので、Google で調べることをお勧めします。

その後、【変更】画面に切り替え、スクリプトとモジュール機能を使用できます。

実際、これら二つは本質的にリクエストとレスポンスを変更し、自動化された作業を完了するものですが、個人的にはモジュールの方がスクリプトよりも使いやすいと感じています。その理由は:

  • スクリプトの設定は比較的面倒で、MITM のドメインを自分で追加する必要があります。
  • モジュールは比較的簡単で、一鍵インストールできます(ただし、モジュールの作者の開発品質に依存します。以前、あるモジュールの作者が私のskip-proxy設定を直接上書きしてしまい、後で原因を見つけるのに苦労しました)。

image image

以下は、すぐに使えるモジュールのいくつかです:

さらに進んだモジュールのテクニックは boxjs と組み合わせて使用する必要があります。インストールリンク:https://raw.githubusercontent.com/chavyleung/scripts/master/box/rewrite/boxjs.rewrite.surge.sgmodule

ドキュメント:紹介 - BoxJs

例えば、Bilibili の UI をカスタマイズするモジュール:https://raw.githubusercontent.com/BiliUniverse/Enhanced/main/modules/BiliBili.Enhanced.sgmodule

boxjs と組み合わせることで、ホームページに表示する内容を自由に選択できます。

image image

今後の内容#

これまでのところ、いくつかの経験をまとめて書きました。次回は設定ファイル、スクリプトの作成、モジュールについて書く予定です。

参考#

  1. Surge Mac 使用ガイド | by Alan He | Jan, 2024 | Medium
  2. Surge 公式中国語ガイド:Surge の原理を理解する (nssurge.com) surge 公式のドキュメントで、ネットワークプロトコルを深く理解するのに大いに役立ちます。
  3. GetSomeCats/Surge 新手から Apple ID の登録から返金まで.md at Surge・getsomecat/GetSomeCats (github.com) これは非常に詳細に書かれています。
  4. 最小構成をお勧めします。設定ファイルを理解するために 中国区ユーザーに最小構成をお勧め - Surge Tech Community (nssurge.com)
読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。