跳到主要內容

首頁 / 部落格 / 功能詳解

系統代理和 TUN 模式怎麼選?六個真實場景逐個對照

系統代理和 TUN 模式怎麼選?六個真實場景逐個對照

上一篇講了 TUN 的原理,這篇只回答一個問題:你的具體情況下,該開哪個。

先把結論表放在最前面。

你要做的事系統代理TUN備註
瀏覽網頁、看 YouTube✅ 開❌ 不用最省事、最省資源
Steam / 戰網下載✅ 開游戲平台不讀系統代理
git clone / npm install✅ 開可選也能用環境變數代替
Netflix / Disney+✅ 開❌ 不用瀏覽器和用戶端都跟隨系統代理
聯機對戰游戲✅ 開需要 UDP,且節點要夠好
公司配發的電腦✅ 開⚠️ 慎開虛擬網路卡易與終端管控衝突

下面逐個說清楚為什麼。

場景一:日常瀏覽網頁

只開系統代理就夠了。

瀏覽器(Chrome、Edge、Firefox)預設跟隨系統代理設定,開一個開關全都覆蓋。TUN 在這個場景下不提供任何額外收益,反而多佔 CPU、多一層 DNS 處理。

日常上網的最簡設定系統代理 開TUN 關規則模式選一個延遲低的節點
這套設定能覆蓋 80% 的日常使用

場景二:Steam / 戰網 / Epic 下載慢

必須開 TUN。

游戲平台的下載器基本都直接走 socket,完全無視系統代理設定。你會看到一個典型現象:瀏覽器能打開 Steam 商店頁面(走了代理),但下載速度只有幾十 KB(下載器沒走代理,還在擠原本的国际出口)。

場景三:命令列工具卡住

git clone 卡在 0%、npm install 一直轉、docker pull 逾時——這些工具都不讀系統代理。

有兩條路:

路線 A:開 TUN,一勞永逸,所有命令列工具自動生效。

路線 B:設環境變數,更輕量,不用裝虛擬網路卡:

# PowerShell(當前會話有效)
$env:HTTP_PROXY="http://127.0.0.1:7897"
$env:HTTPS_PROXY="http://127.0.0.1:7897"

# Git 單獨設定(永久)
git config --global http.proxy http://127.0.0.1:7897
git config --global https.proxy http://127.0.0.1:7897

# npm
npm config set proxy http://127.0.0.1:7897
npm config set https-proxy http://127.0.0.1:7897

Docker 比較特殊:容器內的 127.0.0.1 指向容器自己,不是宿主機。需要用 host.docker.internal 或者直接開 TUN。開 TUN 是最省事的做法。

場景四:串流媒體(Netflix / Disney+ / HBO)

開系統代理即可,TUN 不需要。

網頁端和桌面用戶端都跟隨系統代理。真正影響解鎖的不是 TUN,而是:

串流媒體能不能解鎖,取決於這三件事1節點是不是原生 IP機房 IP 常被識別為代理,家寬2DNS 有沒有泄漏系統用了国內 DNS 會暴露真實地區3規則有沒有把串流媒體網域分對建議單獨建一個串流媒體策略組
TUN 對這三件事都沒有幫助

場景五:聯機對戰游戲

開 TUN,但要有心理預期。

游戲需要 UDP,系統代理不處理 UDP,所以只能靠 TUN。但注意:

  • 節點必須支援 UDP 轉發(很多低價節點不支援或做了限制)
  • 多繞一跳必然增加延遲,除非你的節點是 IPLC/IEPL 專線
  • 部分游戲的反作弊會對虛擬網路卡有反應
游戲場景的設定檢查TUN 模式已開啟,stack 選 mixed 或 gvisor節點支援 UDP(在節點資訊裡能看到 udp: true)把游戲網域測一下丟包率,比測延遲更重要如果延遲反而變高 —— 說明這條線路不適合游戲,換節點或放棄

場景六:公司配發的電腦

慎開 TUN。

企業電腦上通常裝了終端安全軟體(EDR)、VPN 用戶端、或者域策略。TUN 會創建虛擬網路卡並改路由表,容易出現三類問題:

  1. 與公司 VPN 搶路由,導致內網訪問不了
  2. 被 EDR 判定為可疑網路行為並上報
  3. 域策略強制的代理設定與 Clash Verge 衝突

如果確實需要用,建議:

  • 只開系統代理,不開 TUN
  • 在規則裡把公司內網網域和 IP 段明確設為 DIRECT
  • 先跟 IT 部門確認是否允許

三種組合的實际表現

三種設定的資源佔用(同一台機器,空閒狀態參考值)都不開記憶體 ~80 MB僅系統代理記憶體 ~110 MB系統代理 + TUN記憶體 ~180 MB數值為同機對比的相對參考,實际因版本、設定規模、連接數而異

差距不大,現代電腦基本無感。真正的差別在行為複雜度上:TUN 開著的時候,一旦出網路問題,需要排查的層次會多一層。

一個折中方案:只開 TUN,關掉系統代理

如果你既要游戲又要瀏覽器,可以試試這個組合:

  • TUN 開
  • 系統代理關

好處是所有流量走同一條路徑,行為統一,排查簡單。副作用是某些明確寫死「讀系統代理」的軟體可能表現不同,另外瀏覽器外掛裡的代理設定可能會繞過 TUN(比如 SwitchyOmega)。

小結

一句話決策只上網系統代理要下游戲加 TUN命令列環境變數或 TUN公司電腦只用系統代理

不確定的時候,從系統代理開始,缺什麼補什麼,比一上來就全開要好排查得多。

延伸閱讀:TUN 模式原理詳解區域網路共享代理