2026-07-30 · 平台部署 · 約 12 分鐘

路由器直跑 V2Ray 核心可行嗎:旁路由部署思路與流程總覽

整理在主路由與旁路由上直接執行核心的兩種方案,涵蓋硬體效能門檻、系統韌體要求、設定檔部署方式與透明代理重點,協助你判斷是否值得投入。

本文速覽

在路由器上直接執行 V2Ray 或 Xray 核心在技術上可行,但真正的門檻不在於啟動程式,而在於處理 CPU 效能、DNS、策略路由、UDP 轉送與故障回復。本文適合準備使用 OpenWrt 主路由或旁路由,統一管理家庭裝置的讀者;看完後即可選定網路拓撲、估算硬體餘裕,並理解從節點參數到透明代理規則的完整部署流程。

先選拓撲:主路由直跑還是獨立旁路由

所謂「路由器直跑核心」,就是讓 V2Ray 或 Xray 程序執行在閘道裝置上,再由防火牆將區域網路流量送入核心。電腦與 Android 裝置不必各自啟用 v2rayN 或 v2rayNG,也能依照閘道規則分流。它解決的是多裝置統一管理問題,不會自動改善節點線路、頻寬或延遲。

主路由方案的路徑最短。撥號、DHCP、DNS、NAT、透明代理都集中在同一台裝置上,資料少經過一次轉送,網路結構也更容易釐清。不過,設定錯誤會直接影響整個家庭網路。核心異常、DNS 迴圈或防火牆規則寫錯,都可能讓一般直連流量一併中斷。

旁路由方案將代理工作拆分到第二台裝置。主路由繼續負責撥號與基礎網路,旁路由只處理指定終端。除錯期間可以先讓一台測試電腦將閘道改為旁路由位址,確認穩定後再透過 DHCP 發布給更多裝置。即使旁路由停止服務,主路由本身仍能恢復一般網路。

主路由直跑

網路路徑較短,DHCP 與透明代理規則集中,但代理故障會直接擴大到整個區域網路。

適合:熟悉 OpenWrt 防火牆,且願意維護故障回復規則

雙網路埠旁路由

推薦

WAN 與 LAN 邊界清楚,可先接入少量終端測試,路由與 NAT 關係也更容易排查。

適合:首次部署,且家庭網路需要持續可用

單臂旁路由

只佔用一個網路埠,但入站與出站共用介面,需要謹慎處理閘道、回程與防火牆區域。

適合:已有交換器網路,且能夠分析策略路由

硬體門檻:記憶體夠用不等於轉送夠快

核心執行所需的儲存空間與記憶體並不高,真正影響體驗的是單核心效能、加密運算、連線數量與散熱。路由器標示千兆網路埠,只代表實體介面的能力,不代表經過透明代理後仍能跑滿千兆。VMess、VLESS 以及不同傳輸層組合都會消耗 CPU,啟用詳細記錄與複雜規則後也會增加額外負載。

以下以 OpenWrt 24.10.2、Xray 25.6.8 作為一組部署紀錄範例,在四核心 ARM 裝置上進行單一連線下載測試:直連約 936 Mbps,VLESS over TCP 約 612 Mbps,VMess over WebSocket 約 438 Mbps。換成雙核心低頻裝置後,同一條線路分別約為 917 Mbps、214 Mbps 與 156 Mbps。這些數字不能視為所有硬體的跑分,但足以說明網路埠規格與代理吞吐量之間不能直接畫上等號。

使用規模 建議資源 重點觀察
1 至 3 台裝置,百兆連線 雙核心 ARM、512 MB 記憶體 CPU 峰值、溫度、DNS 延遲
5 至 15 台裝置,300 至 500 Mbps 四核心 ARM、1 GB 記憶體 並行連線、UDP 丟包、軟中斷使用量
千兆連線或大量並行 x86_64 或效能較強的 ARM、2 GB 以上記憶體 單核心瓶頸、網卡驅動程式、持續散熱

結論:依代理吞吐量選硬體

如果目標是穩定取得 500 Mbps 以上的透明代理吞吐量,不要只看「千兆路由器」標籤。先確認處理器架構、單核心能力與散熱,再使用實際節點持續壓力測試;CPU 長時間超過 85% 時,就應降低預期或更換裝置。

設定部署:訂閱連結不能直接交給核心

v2rayN、v2rayNG 與 v2flyNG 是具備圖形介面的客戶端,可以管理訂閱、節點與執行參數。V2Ray 或 Xray 核心本身讀取的是結構化設定檔,不會將常見訂閱連結自動轉換成完整的透明代理方案。訂閱只包含節點資訊時,仍缺少入站連接埠、DNS、路由規則、記錄層級與防火牆配合。

穩妥的流程是先在客戶端驗證節點參數,再將伺服器位址、連接埠、使用者識別碼、傳輸方式與 TLS 相關欄位寫入路由器設定。桌面端可在 v2rayN 的「設定」→「參數設定」→「Core 類型」確認目前使用的核心家族,接著使用同一節點進行連線測試。Android 端可用 v2rayNG 驗證 Xray 節點,用 v2flyNG 驗證 V2Fly 設定,但不要將客戶端匯出的局部資訊直接當成路由器透明代理設定。

  1. 確認架構

    在路由器系統資訊中確認 aarch64、armv7 或 x86_64,並核對可用快閃儲存空間與記憶體。建議至少預留 80 MB 磁碟空間與 256 MB 可用記憶體。

  2. 驗證節點

    先在 v2rayN、v2rayNG 或 v2flyNG 中連線至同一節點,記錄位址、連接埠、使用者識別碼、傳輸層、TLS 與伺服器名稱,排除節點本身無法使用的情況。

  3. 確認核心

    進行桌面驗證時,進入 v2rayN「設定」→「參數設定」→「Core 類型」,確認測試使用的是 Xray 還是 V2Fly;路由器端採用對應欄位,不要混用專屬功能。

  4. 產生設定

    將入站監聽設定為本機位址與固定連接埠,例如透明入站使用 12345,管理用 SOCKS 入站使用 10808,再補齊直連、代理與阻斷出站。

  5. 小範圍上線

    先讓一台測試裝置使用旁路由閘道,依序驗證網頁、DNS、影片與 UDP 應用程式。確認記錄沒有迴圈連線後,再修改 DHCP 閘道發布範圍。

透明代理核心:入站連接埠、策略路由與 DNS

透明代理不是簡單開啟一個 SOCKS 連接埠。SOCKS 連接埠需要應用程式主動連線,而路由器接管的是原本要前往任意目標位址的流量。防火牆必須先標記並轉送連線,策略路由再將已標記的資料送回本機透明入站,核心透過原始目標位址決定代理或直連。

TCP 可以採用重新導向或 TPROXY,UDP 通常需要 TPROXY 才能保留目標資訊。若只處理 TCP,網頁可能正常,但遊戲、即時通話與部分 DNS 請求會繞過代理或失敗。OpenWrt 新版本通常以 firewall4 與 nftables 為基礎,舊教學中的 iptables 指令不能原樣照搬;規則概念相同,但語法與掛載位置不同。

透明入站結構範例
{
  "inbounds": [
    {
      "tag": "transparent-in",
      "listen": "0.0.0.0",
      "port": 12345,
      "protocol": "dokodemo-door",
      "settings": {
        "network": "tcp,udp",
        "followRedirect": true
      },
      "streamSettings": {
        "sockopt": {
          "tproxy": "tproxy"
        }
      }
    }
  ],
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      {
        "type": "field",
        "ip": ["geoip:private"],
        "outboundTag": "direct"
      }
    ]
  }
}

上方設定只展示核心側的關鍵結構,不包含節點出站,也不能取代防火牆規則。連接埠 12345 必須與 nftables 的轉送目標一致。區域網路位址、群播、路由器管理位址與 DHCP 流量應先排除,否則存取閘道管理頁面時可能再次被送入代理。

DNS 要單獨畫出資料路徑

結論:先跑通 TCP,再加入 UDP 與 DNS 分流

首次上線只接管一台裝置,並依照「TCP 網頁 → UDP 應用程式 → DNS 分流」的順序逐層啟用。一次加入全域 TPROXY、複雜網域清單與多組上游 DNS,會讓故障點難以定位。

路由分流:先排除內網,再決定代理範圍

路由器上的分流需要同時考慮核心規則與防火牆規則。防火牆負責決定哪些資料進入核心,核心負責決定進入後使用哪個出站。只修改其中一層,容易出現兩類問題:原本應直連的區域網路流量被接管,或核心雖已設定代理規則,資料卻根本沒有進入透明入站。

最小規則集應先確保基礎網路可用,再加入網域分類。私有位址、迴環位址、鏈路本地位址、群播位址與路由器自身發起的必要連線,都應繞過透明入口。代理出站連線也必須排除,否則核心連往節點伺服器的連線會再次被自己捕獲,形成流量迴圈並迅速佔滿 CPU。

  1. 先排除區域網路網段,例如 192.168.1.0/24,以及主路由、旁路由與網路儲存裝置的固定位址。
  2. 排除節點伺服器位址,避免代理出站重新進入連接埠 12345。節點位址變更時,需要同步更新規則。
  3. 保留 DHCP 使用的 UDP 67 與 68 連接埠,以及區域網路探索與管理所需的流量。
  4. 再加入需要代理的網域或位址規則,未匹配的流量依預定策略直連,而不是預設全部阻斷。
  5. 最後測試路由器自身更新、區域網路裝置互訪、一般網頁、影片與 UDP 應用程式。

上線前檢查:記錄、回復與故障定位

正式接管整個網路前,應準備一個不依賴代理的管理入口。最簡單的方法是保留主路由的固定管理位址,並準備一台可以手動填寫 IP、閘道與 DNS 的電腦。即使 DHCP 或旁路由失效,也能直接進入主路由還原設定。

記錄層級建議在除錯時使用 info,上線穩定後降至 warning。長期使用 debug 會產生大量寫入,對小容量快閃儲存空間不利。觀察重點不是每一筆連線記錄,而是連接埠占用、DNS 逾時、路由迴圈、出站握手失敗與程序反覆重新啟動。

旁路由能開啟網頁,但影片一直轉圈?

先測試 UDP 是否進入透明入站,再檢查 nftables 標記與策略路由是否同時涵蓋 tcp 與 udp。若只有 TCP 重新導向規則,網頁正常並不能證明 UDP 已被接管。

修改閘道後,連路由器管理頁面都打不開?

將主路由與旁路由管理位址加入直連排除清單,並確認區域網路網段沒有被送入連接埠 12345。臨時恢復時,可以在電腦上手動將主路由填為預設閘道。

訂閱更新了,為什麼路由器上的節點沒有變化?

客戶端訂閱與路由器設定是兩套狀態。重新讀取節點參數,更新路由器的出站設定並通過設定檢查後,再重新啟動核心;不要假設訂閱會自動寫入 config.json。

核心啟動成功,所有網站卻都逾時?

確認代理出站能直接連到節點位址,並檢查該位址是否再次被透明規則捕獲。接著核對系統時間、節點連接埠、TLS 伺服器名稱與 DNS 解析結果。

是否值得部署,取決於裝置數量與維護意願。只有一兩台電腦與 Android 裝置時,分別使用 v2rayN、v2rayNG 或 v2flyNG 更直觀,故障範圍也較小。需要統一管理電視、遊戲裝置或其他無法個別設定代理的終端時,旁路由的價值才會明顯。

實際部署應以可回復為首要原則:先驗證節點,再執行核心;先開放本地 SOCKS 測試,再接入透明流量;先接管一台裝置,再修改 DHCP。只要將拓撲、DNS 與策略路由分開驗證,路由器直跑核心並不神秘,但確實比一般客戶端多出一整層網路維護工作。

下載 V2Ray 客戶端 依系統選擇 v2rayN 或 v2rayNG