圍繞 v2rayN 路由規則,講清 geosite 與 geoip 的標籤含義、規則優先順序、一份可直接複製的中國大陸直連/海外代理規則組,以及規則不生效時的三步排查順序。
為什麼需要分流
預設情況下,v2rayN 開啟系統代理後,所有流量都會送往代理節點。對於存取中國大陸網站來說,這帶來三個實際問題:第一,中國大陸 CDN 資源(影片、直播、網盤)繞行海外,延遲增加 50-100ms,速度明顯下降;第二,部分中國大陸應用程式(網銀、政務、影片會員)會偵測代理 IP 並拒絕存取;第三,流量全部經過代理節點,在流量計費節點上會快速消耗套餐額度。
分流的思路很簡單:讓流量先經過路由規則匹配,中國大陸網域和 IP 走直連,海外網域和 IP 走代理,區域網路位址不經過代理。
在 v2rayN 7.24.1 中,這套邏輯由「路由規則列表」和「預設出站」共同實現。
認識 v2rayN 的路由規則介面
開啟 v2rayN 7.24.1,點擊頂部選單「設定」→「參數設定」,在左側選擇「路由」標籤頁。這裡可以看到路由規則列表、網域策略和預設出站三個設定區域。路由規則列表是核心,預設情況下 v2rayN 會內建幾條基礎規則,你可以在這個基礎上新增、刪除或調整順序。
每條規則包含網域、IP、連接埠、協定和出站方式。出站方式有三個選項:直連、代理、阻斷。
| 欄位 | 作用 | 範例 |
|---|---|---|
| 網域 | 匹配目標網域 | geosite:cn |
| IP | 匹配目標 IP | geoip:cn |
| 連接埠 | 匹配目標連接埠 | 80,443 |
| 協定 | 匹配傳輸協定 | tcp,udp |
| 出站 | 命中後的通道 | direct / proxy / block |
規則按從上到下的順序匹配,第一條命中的規則生效。因此,「中國大陸直連」規則必須排在「預設代理」之前。
geosite 與 geoip:兩個規則庫怎麼選
v2rayN 內建了 geosite 和 geoip 兩個規則庫,分別按網域和 IP 位址給流量分類。geosite 是網域分類庫,由 Project V 社群維護,常用標籤有 geosite:cn(中國網域)、geosite:geolocation-!cn(非中國網域)、geosite:ads(廣告網域)、geosite:private(私有網域);geoip 是 IP 分類庫,常用標籤有 geoip:cn(中國 IP 段)、geoip:private(私有位址)、geoip:lan(區域網路)。
對於「中國大陸直連」,需要同時匹配 geosite:cn 和 geoip:cn;對於「其餘走代理」,可以讓預設出站處理,不需要額外寫規則。
geosite:cn
- 類型
- 網域分類庫
- 覆蓋範圍
- 中國大陸網域與 CDN
- 典型標籤
- geosite:cn
用於匹配中國大陸網站網域,命中後直連。
geoip:cn
- 類型
- IP 分類庫
- 覆蓋範圍
- 中國 IP 位址段
- 典型標籤
- geoip:cn
用於匹配中國大陸伺服器 IP,命中後直連。
兩個規則庫隨客戶端更新,無需手動維護。在 v2rayN 7.x 中,它們以 .dat 檔案形式存放在安裝目錄的 bin 資料夾下。
完整規則組設定:中國大陸直連、海外走代理
在 v2rayN 路由設定頁面,點擊「新增」按鈕,按以下順序建立規則。注意順序不能顛倒,否則分流效果會失效。
規則 1: 網域 geosite:cn → 出站 direct
規則 2: IP geoip:cn → 出站 direct
規則 3: IP geoip:private → 出站 direct
規則 4: 預設出站 → 出站 proxy
建立完成後,點擊「確定」儲存,然後重啟 v2rayN 核心。此時存取中國大陸網站會直連,海外網站走代理,區域網路位址不經過代理。
結論:規則順序決定分流效果
在 v2rayN 中,規則按列表順序從上到下匹配,一旦命中就停止。中國大陸直連規則必須放在最前面,否則中國大陸流量也會被「預設代理」規則搶先命中。
規則不生效時的檢查順序
配置完成後,如果發現分流沒有生效,按以下順序排查:
- 檢查規則是否儲存並重啟核心。修改路由規則後,點擊 v2rayN 右下角圖示選擇「重啟核心」,新規則才會載入。
- 檢查預設出站是否為「代理」。如果預設出站是「直連」,海外流量會直連,導致無法存取。
- 檢查網域策略是否為「AsIs」。在路由設定中,網域策略選「AsIs」時,網域按原樣匹配;選「IPIfNonMatch」時,會額外解析 IP 再匹配 IP 規則。
- 檢查 DNS 設定。如果 DNS 把中國大陸網域解析到了海外 IP,即使網域命中 geosite:cn,實際連接的 IP 也不屬於 geoip:cn,流量會走代理。
其中 DNS 設定最容易被忽略。在「設定」→「參數設定」→「DNS」中,把 DNS 伺服器設為 223.5.5.5 或 119.29.29.29,可避免中國大陸網域被解析到海外 IP 的問題。
中國大陸網站還是走代理,怎麼回事?
先檢查規則順序:geosite:cn 和 geoip:cn 的直連規則是否排在「預設代理」規則之前。再確認預設出站是「代理」而不是「直連」。
海外網站打不開,是直連了嗎?
檢查預設出站是否被改成了「直連」。v2rayN 的預設出站只在沒有任何規則命中時生效,如果預設出站是直連,海外流量會直接發往目標伺服器。
改完規則要不要重啟客戶端?
需要。修改路由規則後,點擊 v2rayN 右下角圖示選擇「重啟核心」,或者直接重啟 v2rayN 程式,新規則才會載入。
進階:按應用程式分流
除了按網域和 IP 分流,v2rayN 7.x 還支援按程式名稱分流。在規則列表中新增規則,在「程式」欄位填入程式名稱,可讓特定應用程式走代理或直連。
- 要讓某個遊戲直連:程式填 game.exe,出站選「直連」。
- 要讓瀏覽器走代理:程式填 chrome.exe,出站選「代理」。
- 要讓中國大陸聊天軟體直連:程式填 qq.exe,出站選「直連」。
注意程式名稱需要完整且區分大小寫。如果程式名稱不匹配,規則不會生效。