本文適合已經使用 v2rayN 路由功能,但遇到分類過期或規則未生效的使用者。操作順序是確認目前核心與資源目錄,使用內建入口更新,重新啟動核心,再從日誌與最終設定檢查分類名稱;內建更新失敗時,再停止核心並手動替換兩份資料檔。
geoip.dat 與 geosite.dat 各自處理什麼
geoip.dat 依 IP 位址範圍分類。路由規則中的 geoip:cn、geoip:private 都會從這份檔案讀取。連線目標已是 IP,或網域解析結果需要繼續進行 IP 比對時,核心會查詢 GeoIP 資料。
geosite.dat 依網域分類。常見寫法包括 geosite:cn、geosite:category-ads-all 與 geosite:geolocation-!cn。它儲存的是網域規則集合,不負責 DNS 解析,也不會直接判斷某個 IP 所屬的地區。
兩份檔案都由執行中的 Xray 或 V2Fly 核心讀取,v2rayN 只負責產生設定、呼叫核心與執行更新。更新檔案不會自動改變規則順序。若前面已有範圍更大的規則先命中,後面的 GeoIP 或 GeoSite 規則仍然不會執行。
| 資源檔案 | 規則前綴 | 典型分類 | 適合處理 |
|---|---|---|---|
| geosite.dat | geosite: |
cn、category-ads-all |
依網域集合分流 |
| geoip.dat | geoip: |
cn、private |
依目標 IP 位址範圍分流 |
更新前先確認核心、目錄與現有規則
先在 v2rayN 主介面查看目前啟用的設定所使用的核心。VLESS、XTLS 或 REALITY 設定通常交由 Xray 處理;一般 VMess 設定也可能使用 Xray。若曾切換核心類型,不能只替換舊目錄中的檔案。
再開啟「設定」→「參數設定」,記下本機監聽連接埠、核心類型與更新相關選項。常見的本機 SOCKS 連接埠是 10808,HTTP 連接埠是 10809。若曾自訂連接埠,請以目前介面為準;更新資源檔案本身不需要修改連接埠。
Xray 資源目錄
- 常見位置
- bin\Xray\
- 執行檔
- xray.exe
- 資料檔案
- geoip.dat、geosite.dat
- 適用設定
- VLESS、VMess
以實際啟動日誌顯示的核心路徑為準,不要根據壓縮檔根目錄猜測。
V2Fly 資源目錄
- 常見位置
- bin\v2ray\
- 執行檔
- v2ray.exe
- 資料檔案
- geoip.dat、geosite.dat
- 規則前綴
- geoip、geosite
目錄名稱會隨 v2rayN 版本與解壓縮結構變化,必須與目前的執行檔相對應。
最後匯出或查看目前的路由設定,確認規則確實引用了 GeoIP 或 GeoSite。只替換資料檔,而設定中沒有 geoip:、geosite: 項目,不會產生可見變化。更新前可以將舊檔案複製到獨立的備份目錄,檔名加上日期即可。
使用 v2rayN 內建入口更新 Geo 檔案
優先使用用戶端內建入口。常見操作路徑是主選單「檢查更新」→「更新 Geo files」。部分 v2rayN 7.x 介面會將該項目放在更新子選單中,中文文案可能顯示為「更新 Geo 檔案」或「更新 Geo 資源」。執行前請先選擇一個可連線的伺服器設定。
- 啟動 v2rayN,確認核心可以正常執行,系統時間與網路連線也正常。
- 開啟「檢查更新」選單,選擇 Geo 檔案更新項目。
- 等待狀態列或日誌顯示下載與寫入完成,寫入期間不要關閉程式。
- 停止目前的核心,再重新啟動核心;僅切換系統代理開關,不足以確保舊資源已釋放。
- 開啟日誌,確認沒有出現找不到分類、無法讀取資源檔案或設定載入失敗等訊息。
自動更新不宜與頻繁切換核心同時進行。v2rayN 中不同核心可能使用不同目錄,一次成功下載只代表目標目錄已完成寫入,不代表另一個核心目錄也同步更新。長期固定使用 Xray 時,只需重點檢查目前的 Xray 目錄與啟動日誌。
更新完成後,不要只用「下載成功」判斷規則是否有效。重新啟動核心,再造訪一個應直連的網域和一個應走代理的網域,分別檢查日誌中的目標位址與出站標籤。只有比對結果符合預期,才算完成更新。
結論:更新後必須重新啟動核心
Geo 資料會在核心啟動階段載入。先停止核心,等待約 3 秒,再重新啟動並查看開頭的日誌,比只切換伺服器或系統代理狀態更可靠。
內建更新失敗時手動替換檔案
手動替換前,請先完全停止核心。若 xray.exe 或 v2ray.exe 仍在執行,檔案可能被占用,複製操作也可能只替換其中一份。可以在 v2rayN 的「伺服器」區域執行停止操作,再確認日誌已停止輸出。
下載來源應與目前核心支援的資源格式相符。取得新的 geoip.dat 與 geosite.dat 後,請保持檔名不變。不要把壓縮檔本身改名為 .dat,也不要將兩份檔案放入額外的巢狀目錄。
v2rayN\
├─ v2rayN.exe
└─ bin\
└─ Xray\
├─ xray.exe
├─ geoip.dat
└─ geosite.dat
- 退出正在執行的核心,記下日誌中顯示的核心執行路徑。
- 開啟該執行檔所在的目錄,確認舊的兩份
.dat檔案位於同一層。 - 將舊檔案複製到備份目錄,例如
backup\2026-08-26\。 - 複製新檔案並覆蓋同名檔案,確認最終檔名沒有重複副檔名。
- 啟動核心,觀察設定載入階段是否回報資源讀取錯誤。
- 各測試一個直連、代理與攔截規則,核對實際出站結果。
覆蓋前
- 核心狀態
- 已停止
- 備份數量
- 2 個檔案
- 目錄依據
- 啟動日誌
- 檔案名稱
- 保持原名
先確認正在使用的目錄,避免更新到舊版本遺留的目錄。
覆蓋後
- 第一步
- 重新啟動核心
- 第二步
- 檢查日誌
- 第三步
- 測試分流
- 異常處理
- 還原舊檔案
兩份檔案應視為同一批次處理,避免分類版本不一致而增加排查成本。
便攜版移動過目錄後,系統中可能存在多個 bin\Xray\。依檔案修改時間搜尋只能協助定位,不能證明該目錄正在使用。最可靠的依據仍是目前啟動日誌中的執行路徑,以及工作管理員中實際執行的核心程序。
GeoIP 與 GeoSite 常用分類名稱怎麼寫
在 v2rayN 路由設定中,網域規則和 IP 規則應放在對應欄位。geosite:cn 寫入網域比對區域,geoip:cn 寫入 IP 比對區域。出站標籤通常選擇 direct、proxy 或 block,具體名稱以最終產生的設定中的標籤為準。
常見的基本順序是:私有位址直連,特定攔截網域阻擋,中國大陸網域直連,中國大陸 IP 直連,其餘流量交由代理出站。若將全域代理規則放在最前面,後續直連分類就沒有命中的機會。
{
"type": "field",
"domain": [
"geosite:cn"
],
"outboundTag": "direct"
},
{
"type": "field",
"ip": [
"geoip:private",
"geoip:cn"
],
"outboundTag": "direct"
},
{
"type": "field",
"domain": [
"geosite:category-ads-all"
],
"outboundTag": "block"
}
geoip:private:比對常見的私有與本機位址範圍,通常安排直連。geoip:cn:依目標 IP 分類,適合作為網域規則之後的補充。geosite:cn:比對收錄於中國大陸網域分類中的項目。geosite:category-ads-all:比對廣告類網域集合,使用前請先確認業務網域沒有被誤攔截。geosite:geolocation-!cn:比對依地理屬性整理的非中國大陸網域集合,分類範圍較廣,應放在精確規則之後。
分類名稱必須存在於目前的 geosite.dat 或 geoip.dat 中。自行寫入看似合理的名稱,不會自動建立分類。核心啟動時若回報類似「找不到 geosite 項目」的錯誤,應先核對拼字、前綴與資料來源,而不是反覆修改本機監聽連接埠。
結論:精確規則應放在廣泛分類之前
先處理單一網域、完整網域和特定分類,再使用 geosite:geolocation-!cn 等廣泛集合,最後設定預設出站。這樣更容易從日誌定位錯誤比對。
更新後規則失效的排查順序
更新後無法啟動核心,先查看日誌中的第一個錯誤。資源檔案路徑錯誤、分類不存在和 JSON 設定語法錯誤是三種不同問題。不要先刪除全部路由規則,否則會失去用於定位故障的上下文。
核心能夠啟動但分流結果不正確時,先確認請求是否帶有網域。某些應用程式會直接連線至 IP,此時 GeoSite 規則沒有可比對的網域,只能依賴 GeoIP。啟用 DNS 改寫、遠端解析或 TUN 模式後,目標資訊的形成過程也可能改變,應配合最終設定判斷。
更新完成後仍顯示找不到分類?
開啟啟動日誌確認實際核心目錄,再檢查規則拼字。例如 geosite:cn 不能寫入 IP 清單,geoip:cn 也不能寫入網域清單。修正後停止核心,等待約 3 秒再啟動。
檔案已經覆蓋,修改時間卻沒有變化?
通常是替換了未被使用的舊目錄。根據日誌定位 xray.exe 或 v2ray.exe 的實際路徑,將兩份檔案放到該執行檔所在的目錄,再重新啟動核心。
更新後所有網站都經過代理?
檢查路由規則順序與目前的路由模式。將私有位址、geosite:cn 和 geoip:cn 的直連規則放在預設代理規則之前,並確認出站標籤確實指向 direct。
廣告分類導致正常頁面資源遺失?
先暫時停用 geosite:category-ads-all 規則以確認原因,再從核心日誌找出遭阻擋的具體網域。將業務所需網域加入更前面的直連或代理規則,不要直接關閉所有分流。
內建更新一直逾時怎麼辦?
先連線至可用的伺服器設定,確認系統時間正確,再重試「檢查更新」→「更新 Geo files」。仍然失敗時,停止核心,依實際核心目錄手動替換,並保留舊檔案以便回復。
還要檢查目前選用的路由模式。v2rayN 切換至全域代理、全域直連或其他預設模式後,自訂規則可能不再是最終生效的設定。應在啟動後查看產生的路由區段,而不是只查看編輯視窗中儲存的內容。
若只有少數網域流向異常,可以先新增一條精確規則進行比對。精確規則能命中而分類規則無法命中,問題多半出在分類名稱、資料檔案或規則欄位;兩者都無法命中,則繼續檢查規則順序、目標類型和出站標籤。
建立可回復的更新週期
Geo 資料沒有必要在每次啟動時強制下載。一般使用可每週檢查一次;依賴細分類規則、經常遇到新網域分類變化時,可每 24 小時檢查一次。更新頻率只會影響分類資料的新舊,不會提升節點傳輸速度。
每次更新只需保留一份最近可用的備份即可。備份內容包括 geoip.dat、geosite.dat 和目前的路由設定。發生分類遺失或錯誤比對時,先還原上一批資料,再分別檢查規則變更,避免同時修改檔案、DNS 和出站設定。
- 更新前:記錄核心類型、執行路徑、路由模式與檔案修改日期。
- 更新時:將兩份資源檔案視為同一批次處理,避免只替換其中一份。
- 更新後:停止並重新啟動核心,檢查啟動日誌與三類出站結果。
- 發生異常:還原最近的備份,再依分類名稱、欄位、順序與目錄逐項排查。
維護完成後,保留一組固定測試目標:本機區域網路位址用於驗證私有位址直連,已知中國大陸網域用於驗證 GeoSite,直接 IP 請求用於驗證 GeoIP,再用一個應經過代理的網域檢查預設規則。固定測試對象比隨機開啟網頁更容易比較更新前後的差異。