Skip to content

zh Hant Routing

Parsa Radfar edited this page Nov 8, 2026 · 1 revision

路由

路由模式決定大多數流量的去向。自定義規則決定例外:哪些網站、應用、國家或地址始終走代理、直連或被阻止。

路由模式

在連線欄、菜單欄面板、Settings → Routing 或快捷指令中選擇。

模式 未匹配任何規則的流量
Global 走伺服器
Bypass regions 屬於已啓用地區(伊朗、中國、俄羅斯)時直連,否則走伺服器
Rules Only 直連;只有匹配 Proxy 規則的流量走伺服器
Direct 直連;只使用 Block 規則

Settings → Routing → Traffic that matches no rule 可以覆蓋模式:Follow mode(預設)、Proxy、Direct 或 Block。它也會替換完整配置自身的兜底規則。

地區包

Bypass regions 至少需要一個地區包。在 Settings → Routing 中啓用;V2Mac 會下載 geosite 和 geoip 檔案、校驗並保持更新(預設每周,或每天 / 從不,另有 Update Now)。伊朗使用 Chocolate4U/Iran-v2ray-rules;中國和俄羅斯使用 Loyalsoldier/v2ray-rules-dat。

路由設定:Bypass Iran

規則

規則窗口

可以從側邊欄底部的玻璃按鈕、Settings → Routing 中的 Open Rules…、Connections 中的連線或菜單欄打開 Rules。左側列表從上往下檢查,第一條匹配的規則決定流量去向:

  1. Before your rules: 本地網路(本機、局域網和 printer.local 等名稱始終直連)、Block QUIC(開關),以及使用代理端口的應用(在 Settings → Proxy 中設定)。
  2. My rules,按你的順序。拖動可重新排序;每條都有開關。
  3. After your rules: 路由模式自己的規則,然後是 Everything else(跟隨模式、Proxy、Direct 或 Block)。

所有修改都是草稿:修改過的規則帶有圓點,⌘Z 可撤銷,Apply(⌘S)保存並讓正在運行的連線重啓一次。窗口有未應用的修改時,關閉前會先詢問。

一條規則

  • Send to: Proxy(當前連線的伺服器)、Via 某台伺服器或某個分組(分組中響應最快的伺服器)、Direct 或 Block。
  • Matches any of: 應用、域名、精確名稱、關鍵字、地址和範圍、國家及服務列表。在同一個輸入框中輸入並從建議中選擇(已安裝的應用、帶條目數的服務、國家),一次粘貼多行,或點擊 Browse… 使用應用清單、服務卡片和世界地圖。右鍵點擊網站可將其改為精確名稱、關鍵字或正則表達式。點擊應用可查看它在此 Mac 上匹配什麼。
  • Only when(可選):端口(443、8000-8100)、TCP 或 UDP、協議(TLS、HTTP、QUIC、BitTorrent)和應用。每一項還必須滿足這些條件。例如,含 *.example.com 且“Only when: Safari”的規則只匹配 Safari 訪問該網站的流量。

只有“Only when”而沒有條目的規則會匹配所有此類流量:“UDP、BitTorrent → Direct”會讓種子流量直連。

New Rule ▾ 可從模板開始:AI 服務、開發者工具、Apple 服務、社交和聊天、流媒體、地區網站直連、種子直連、廣告和跟蹤器。

經由另一台伺服器(Via)

Via 讓規則的流量經由與當前連線不同的伺服器,例如讓 AI 網站走另一個國家的伺服器。選擇一台伺服器,或選擇一個分組以使用其中響應最快的伺服器(每 30 秒檢查一次,失敗時由下一台接替)。

當它的伺服器都沒有響應時,規則的流量預設會失敗,絕不會走其他路徑。開啓 If its servers fail, use the current server 則改用當前伺服器。規則會顯示有多少台伺服器響應,全部無響應時菜單欄會發出警告。

流量去哪兒?

在搜索框中輸入網站、連結、地址或應用名稱。列表上方會顯示它的去向和原因,例如“api.github.com → Proxy,由 Developer(#8),匹配 geosite:github”,依據的是你當前的規則,無論是否已應用。

Discovered 列出在 Rules 或 Connections 窗口打開期間看到、且沒有任何規則覆蓋的應用和網站。用 Add to 加入到規則、拖到規則上,或選擇 Ignore。網站會以整個域名的形式建議(api.github.com 建議為 github.com)。

規則醫生(規則下方的玻璃按鈕)會檢查整個列表:錯誤、規則之間的衝突,以及可以精簡的規則,例如可由一個域名覆蓋的多個子域名、服務列表已包含的主機,或主機已在規則中的應用。自動修復會完成安全的操作;可能改變流量去向的項目列在由你決定下,並有各自的修復按鈕。在 Apply 之前不會有任何改變。

在 Connections 中右鍵點擊某行,可使用 Add App to Rule、Add Host to Rule 和 Show Rule。菜單欄面板會顯示前台應用、它的去向以及 Add to Rule。快捷指令中有 Add to Rule 操作。

應用

應用可寫成 Telegram.app、Bundle ID(com.example.chat)、通配模式(*code*)、進程名(curl)或完整路徑。

  • 應用規則適用於使用系統代理或連線 V2Mac 端口的應用。
  • TUN 模式下應用規則適用於所有應用,包括不理會代理的應用。
  • System Proxy 關閉時,你手動指向 V2Mac 端口的應用會跳過規則並走伺服器(在 Connections 中顯示為橙色 App's proxy setting)。System Proxy 開啓時,經該端口的所有流量都遵循規則。

主機

用換行、逗號、空格或 ; 分隔條目。以 #、// 或 ! 開頭的行是注釋。

寫法 匹配
example.com、*.example.com、+.example.com、.ir 該域名及所有子域名
full:www.example.com 僅該名稱
keyword:shop、*shop* 包含該詞的任何名稱
regexp:^ads\d+\. 正則表達式
1.2.3.4、10.0.0.0/8、2001:db8::/32、10.0.0.1-10.0.0.9 地址或範圍
geosite:google、geosite:category-ads-all geosite.dat 中的網站列表
geoip:de、geoip:telegram 某國家或服務的地址
ext:region-ir-geosite.dat:ir 地區包中的列表
DOMAIN-SUFFIX,example.com,DIRECT Clash 規則(以規則的動作為準)
0.0.0.0 ads.example.com hosts 檔案行
||ads.example.com^ Adblock 域名行

無法識別的內容會顯示為紅色標記並被跳過。不存在的 geosite: 列表會導致內核無法啓動;記錄會給出名稱。

從其他應用導入

V2Mac 可以讀取其他應用的規則,遷移時無需重新輸入:Proxifier(.ppx)、Clash / Mihomo(.yaml)、sing-box(.json)、v2rayN / v2rayNG / Xray 導出的規則(.json)以及 Shadowrocket / Surge(.conf)。格式會自動識別。

  1. 在規則窗口中,從 ⋯ 菜單選擇 Import…。
  2. 選擇檔案。
  3. 檢查預覽後點擊 Import。在此之前不會有任何改動。

導入 Proxifier 配置預覽:五條規則、一條被跳過的規則以及將開啓 Block QUIC

Export(⋯ 菜單)導出全部或所選規則。配置菜單可保存多套命名規則(家裡、公司、旅行)。

Clash、Shadowrocket 和 Surge

每行 TYPE,value,POLICY 成為規則的一部分:DIRECT → Direct,REJECT → Block,其他策略(代理組)→ Proxy。連續且策略相同的行合併為一條以該策略命名的規則。支持 DOMAIN、DOMAIN-SUFFIX、DOMAIN-KEYWORD、DOMAIN-REGEX、IP-CIDR、GEOIP、GEOSITE 和 PROCESS-NAME;MATCH / FINAL 交給路由模式。DST-PORT、NETWORK 以及由簡單條件組成的 AND 會變為 Only when;RULE-SET、OR 和 NOT 會被跳過,並在預覽中列出。

sing-box 和 v2rayN

每條路由規則成為一條規則,由其 outbound 決定動作(direct、block/reject,其餘為 Proxy)。v2rayN 會保留每條規則的名稱和開關狀態。端口、端口範圍、網路和協議會變為 Only when;限制入站的規則會被跳過,以免導入後範圍變寬;規則集同樣跳過。

Proxifier

Proxifier 中 V2Mac 中
發往本機代理(V2Mac 端口)的規則 Proxy 規則
Direct / Block 規則 相同動作
已停用的規則 導入後保持關閉
發往其他代理或代理鏈的規則 跳過並以橙色列出
Applications 字段 規則的應用("App.app"、Bundle ID、*模式*、進程名)
目標主機(*.example.com、10.0.0.0-10.255.255.255 等範圍) 規則的主機
目標端口 Only when 端口
Block UDP 443 選項 開啓 Block QUIC

導入的規則排在你自己的規則之後,現有規則保持優先。之後它們都是普通的 V2Mac 規則,可以編輯、調整順序或關閉。

與 Proxifier 的區別: 應用規則方面沒有區別:V2Mac 通過系統代理、其端口以及 TUN 模式識別應用。

示例

目標 動作 主機
全局屏蔽廣告 Block geosite:category-ads-all
繞過伊朗時 AI 服務仍走代理 Proxy geosite:openai、geosite:anthropic
Apple 和 Microsoft 更新不走代理 Direct geosite:apple、geosite:microsoft
直連公司網路 Direct 10.0.0.0/8、full:intranet.example.com
只有 Telegram 走代理 Proxy(Rules Only 模式) 應用:Telegram.app

完整 JSON 配置

對完整 Xray 配置,先執行 V2Mac 的規則和模式,再以配置自身路由兜底(在 Connections 中顯示紫色 Config fallback)。

命令行

V2Mac 內置了供代理和終端使用的簽名 v2mac 命令。請在 Settings → About 中安裝;Homebrew 使用同一個內置檔案。先運行 v2mac rules list --json 獲取 revision,每次寫入時都要傳回。--dry-run 可在不保存、不重新連線的情況下驗證更改。CLI 不會直接編輯偏好設定;過期 revision 或未應用的草稿會安全失敗。

Clone this wiki locally