什么是 TUN 模式?
TUN(Network TUNnel)模式是 ClashX 提供的增強代理模式,它通過創建虛拟網絡接口(TUN 設備),在操作系統的網絡層實現全局流量拦截和轉發。
TUN 模式工作在網絡層(Layer 3),可以捕獲系統中所有應用的網絡流量,無论该應用是否支持代理設置。這意味着你可以實現真正的"全局代理",包括命令行工具、后臺服務、甚至是不支持系統代理的應用程序。
TUN 模式的主要優势
- 真正的全局代理:所有應用的網絡流量都会被代理,無一遗漏
- 無需應用配置:不需要為每个應用單獨配置代理設置
- 支持 UDP 流量:可以代理 UDP 協議,支持游戲、視频会議等場景
- 更好的 DNS 控制:可以完全控制 DNS 解析過程,防止 DNS 泄露
- 規则優先級更高:在網絡層工作,規则匹配更精確
- 防止代理繞過:應用無法繞過代理直接連接
TUN 模式的工作原理
當 TUN 模式啟動后,ClashX 会創建一个虛拟網絡接口(通常命名為 utun),系統会将所有網絡流量路由到這个虛拟接口。ClashX 接收到流量后,根据配置的規则決定是通過代理服務器轉發,还是直接連接目標地址。
TUN 模式 vs 系統代理模式對比
了解 TUN 模式和傳統系統代理模式的區別,有助于你選择最適合的代理方式。
| 對比項 | TUN 模式 | 系統代理模式 |
|---|---|---|
| 工作層級 | 網絡層(Layer 3) | 應用層(Layer 7) |
| 覆盖范围 | 所有應用 | 僅支持代理的應用 |
| UDP 支持 | ✓ 完全支持 | ✗ 不支持 |
| DNS 控制 | 完全控制 | 部分控制 |
| 權限要求 | 需要管理员權限 | 無需特殊權限 |
| 性能影響 | 輕微影響(<5%) | 几乎無影響 |
| 配置復雜度 | 中等 | 簡單 |
| 兼容性 | 完美(所有應用) | 有限(部分應用) |
推荐使用 TUN 模式的場景:需要代理所有應用、使用命令行工具、游戲加速、防止 DNS 泄露。推荐使用系統代理的場景:僅需代理浏覽器、追求最低性能開销、快速臨時使用。
前置準備
在開啟 TUN 模式之前,請確保满足以下條件:
系統要求
- macOS 版本:macOS 10.15 Catalina 及以上版本
- ClashX 版本:ClashX 1.90.0 及以上版本(建議使用最新版)
- 管理员權限:必須具有 macOS 管理员账戶權限
- 系統完整性保護:無需關閉 SIP,TUN 模式可正常工作
硬件兼容性
在 Apple Silicon(M1/M2/M3)Mac 上,ClashX 的 TUN 模式已经過充分優化,性能表現優于 Intel 版本。ARM64 原生架構使得網絡處理效率更高,功耗更低,是使用 TUN 模式的最佳平臺。
準備工作清單
- ☑️ 確保 ClashX 已正常安装並能够使用系統代理模式
- ☑️ 準備好管理员账戶密码(配置過程中需要授權)
- ☑️ 備份當前配置文件(避免配置出错導致無法恢復)
- ☑️ 關閉其他代理工具(避免端口衝突)
- ☑️ 確認訂閱或配置文件正常可用
5步開啟 TUN 模式
按照以下步骤,你可以在 10 分鐘内成功開啟並配置 ClashX 的 TUN 模式。
第1步:授予系統權限
TUN 模式需要創建虛拟網絡接口,必須先授予 ClashX 相應的系統權限。
- 打開 系統偏好設置 → 安全性与隐私
- 点擊左下角锁圖標,輸入管理员密码解锁
- 切换到 隐私 標簽页
- 在左侧列表中找到 完全磁盘访問權限
- 点擊 + 号,添加 ClashX 應用(通常在 /Applications 目录)
- 確保 ClashX 旁边的勾選框已選中
- 在 ClashX 菜單栏中,点擊 配置 → 實驗性功能 → 安装網絡擴展
- 輸入管理员密码,等待安装完成
首次安装網絡擴展時,系統可能会弹出安全提示,請在系統偏好設置的 安全性与隐私 → 通用 中点擊"允许"按鈕。如果遇到權限問題,重啟 Mac 后再次尝試。
第2步:編輯配置文件
在配置文件中添加 TUN 模式的配置項。
- 点擊 ClashX 菜單栏圖標 → 配置 → 打開配置文件夹
- 使用文本編輯器(如 TextEdit、VS Code)打開當前使用的配置文件
- 在配置文件的顶部(general 配置區域)添加以下内容:
# TUN 模式配置
tun:
enable: true
stack: system # 或 gvisor,system 性能更好
dns-hijack:
- any:53
auto-route: true # 自动配置路由表
auto-detect-interface: true # 自动检测出口网卡
stack 參數:建議使用 system,性能最佳。如遇兼容性問題可尝試 gvisor。dns-hijack:劫持所有 DNS 請求到 Clash,防止 DNS 泄露。auto-route:自動配置系統路由表,無需手動設置。
第3步:配置 DNS 設置
TUN 模式需要配置 DNS 以實現最佳性能和隐私保護。
在配置文件中添加或修改 DNS 配置(与 tun 配置同級):
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip # 或 redir-host,fake-ip 性能更好
fake-ip-range: 198.18.0.1/16
nameserver:
- 223.5.5.5 # 阿里 DNS
- 119.29.29.29 # 腾讯 DNS
- 114.114.114.114 # 114 DNS
fallback:
- https://1.1.1.1/dns-query # Cloudflare DoH
- https://dns.google/dns-query # Google DoH
fallback-filter:
geoip: true
ipcidr:
- 240.0.0.0/4
第4步:設置路由規则
配置代理規则,決定哪些流量走代理,哪些直連。
確保配置文件中包含基本規则(通常訂閱配置已包含):
rules:
# 本地网络直连
- DOMAIN-SUFFIX,local,DIRECT
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 国内网站直连
- GEOIP,CN,DIRECT
# 其他流量走代理
- MATCH,PROXY
第5步:啟用並驗證
- 保存配置文件
- 在 ClashX 菜單中点擊 配置 → 重載配置文件
- 点擊 ClashX 菜單 → 設置為系統代理(取消勾選,TUN 模式下不需要)
- 点擊 ClashX 菜單 → 增強模式 → TUN 模式(確保已勾選)
- 選择一个可用的代理節点
- 打開浏覽器或任何應用測試網絡連接
當 TUN 模式成功啟動后,ClashX 的菜單栏圖標旁会顯示一个小圆点,且狀態栏会顯示"增強模式已啟用"。此時所有應用的網絡流量都会通過 ClashX 的代理規则處理。
DNS 配置優化
DNS 配置是 TUN 模式性能和隐私的關键。合理的 DNS 配置可以顯著提升访問速度並防止 DNS 泄露。
Fake-IP vs Redir-Host
Fake-IP 模式(推荐)
- 工作原理:返回虛假 IP 地址(198.18.0.0/16 段),直接通過域名連接
- 優势:連接建立快,DNS 解析延遲低,規则匹配精確
- 劣势:部分應用可能不兼容(如 NAS 访問、本地服務)
- 適用場景:日常使用、游戲加速、流媒體访問
Redir-Host 模式
- 工作原理:返回真實 IP 地址,正常 DNS 解析流程
- 優势:兼容性好,適合所有應用場景
- 劣势:DNS 解析需要額外時間,連接速度稍慢
- 適用場景:需要访問本地服務、NAS、路由器管理界面
DNS 服務器選择
119.29.29.29
8.8.8.8
防止 DNS 泄露
確保配置文件中包含以下設置,防止 DNS 請求泄露到本地 ISP:
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
fake-ip-filter: # 这些域名不使用 fake-ip
- '*.lan'
- 'localhost.ptlogin2.qq.com'
nameserver:
- 223.5.5.5
- 119.29.29.29
fallback:
- https://1.1.1.1/dns-query
- https://dns.google/dns-query
fallback-filter:
geoip: true # 国内 IP 使用 nameserver,国外 IP 使用 fallback
geoip-code: CN
規则配置建議
合理的規则配置可以優化網絡性能,减少不必要的代理流量。
基础規则模板
rules:
# 屏蔽广告域名
- DOMAIN-KEYWORD,adservice,REJECT
- DOMAIN-SUFFIX,googlesyndication.com,REJECT
# 局域网直连
- DOMAIN-SUFFIX,local,DIRECT
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
# 常用国内网站直连
- DOMAIN-SUFFIX,cn,DIRECT
- DOMAIN-KEYWORD,baidu,DIRECT
- DOMAIN-KEYWORD,taobao,DIRECT
- DOMAIN-KEYWORD,jd,DIRECT
# 流媒体服务走代理
- DOMAIN-KEYWORD,youtube,PROXY
- DOMAIN-KEYWORD,netflix,PROXY
- DOMAIN-SUFFIX,twitter.com,PROXY
# 国内 IP 直连
- GEOIP,CN,DIRECT
# 其他流量走代理
- MATCH,PROXY
規则優先級
Clash 按照從上到下的顺序匹配規则,一旦匹配成功就不再繼續。因此應该将:1. REJECT 規则(廣告拦截)放在最前面2. 精確匹配(DOMAIN)放在前面3. 模糊匹配(DOMAIN-KEYWORD)放在中間4. IP 規则放在后面5. MATCH(兜底規则)放在最后
規则集推荐
使用規则集可以簡化配置,自動更新規则。推荐以下規则集:
- Loyalsoldier 規则集:涵盖常用網站分流規则
- ACL4SSR 規则集:精细化分流,適合高級用戶
- DivineEngine 規则集:注重隐私和廣告拦截
驗證 TUN 模式是否生效
通過以下方法可以驗證 TUN 模式是否成功啟動並正常工作。
方法1:檢查網絡接口
打開終端(Terminal),执行以下命令:
ifconfig | grep utun
如果看到 utun 開頭的網絡接口(如 utun3、utun4),說明 TUN 設備已成功創建。
方法2:檢查路由表
执行以下命令查看路由表:
netstat -nr | grep utun
如果看到路由條目指向 utun 接口,說明路由配置成功。
方法3:測試應用連接
測試不支持系統代理的應用(如命令行工具)是否能正常使用代理:
curl -I https://www.google.com
如果能够成功访問 Google,說明 TUN 模式正常工作。
方法4:檢查 DNS 解析
驗證 DNS 是否被正確劫持:
nslookup www.google.com
如果返回的 DNS 服務器是 127.0.0.1(本地),說明 DNS 劫持成功。
如果以上 4 个方法都驗證成功,說明 TUN 模式已完美配置。現在你的 Mac 上所有應用的網絡流量都会通過 ClashX 的代理規则進行處理,實現了真正的全局代理。
常見問題排查
在使用 TUN 模式過程中可能遇到的問題及解決方法。
問題1:TUN 模式無法開啟
点擊"增強模式"→"TUN 模式"后,菜單項無法勾選,或勾選后立即取消。
解決方法- 檢查是否已安装網絡擴展:ClashX 菜單 → 配置 → 實驗性功能 → 安装網絡擴展
- 授予完全磁盘访問權限:系統偏好設置 → 安全性与隐私 → 隐私 → 完全磁盘访問權限
- 檢查系統偏好設置 → 安全性与隐私 → 通用,是否有需要"允许"的提示
- 重啟 ClashX 或重啟 Mac
問題2:開啟后無法上網
TUN 模式已開啟,但所有網絡連接都無法使用。
解決方法- 檢查代理節点是否可用:切换到其他節点測試
- 檢查 DNS 配置是否正確:確保 dns.enable: true
- 檢查規则配置:確保有 MATCH 兜底規则
- 尝試關閉 TUN 模式,使用系統代理模式測試節点是否正常
問題3:部分應用無法連接
大部分應用正常,但某些應用(如 NAS 访問、本地服務)無法連接。
解決方法- 将局域網 IP 段添加到直連規则:IP-CIDR,192.168.0.0/16,DIRECT
- 如果使用 fake-ip 模式,将本地域名添加到 fake-ip-filter
- 尝試切换到 redir-host 模式:enhanced-mode: redir-host
問題4:網絡速度變慢
開啟 TUN 模式后,網絡速度明顯下降。
解決方法- 使用 stack: system 而非 gvisor,性能更好
- 使用 fake-ip 模式代替 redir-host
- 優化規则配置,将國内網站和 IP 設為直連
- 檢查代理節点質量,切换到延遲更低的節点
問題5:權限错誤提示
弹出"權限不足"或"需要管理员權限"的错誤提示。
解決方法- 打開終端,执行:sudo chown root:admin /Applications/ClashX.app/Contents/Library/LaunchServices/ClashX.HelperTool
- 执行:sudo chmod +s /Applications/ClashX.app/Contents/Library/LaunchServices/ClashX.HelperTool
- 重新安装網絡擴展:ClashX 菜單 → 配置 → 實驗性功能 → 安装網絡擴展
- 重啟 Mac 后再次尝試
性能優化技巧
通過以下優化技巧,可以進一步提升 TUN 模式的性能表現。
1. 選择最佳協議栈
推荐配置:stack: system
- system 栈:使用系統原生網絡栈,性能最佳,延遲最低
- gvisor 栈:Go 語言實現的用戶態網絡栈,兼容性更好但性能稍低
- 在 Apple Silicon Mac 上,system 栈優势更明顯
2. 優化 DNS 配置
- 使用 fake-ip 模式,避免 DNS 解析延遲
- 使用距离最近的 DNS 服務器(國内用阿里/腾訊,海外用 Cloudflare)
- 啟用 DoH(DNS over HTTPS)提升安全性和抗干扰能力
- 合理配置 fake-ip-filter,排除本地服務域名
3. 精簡代理規则
- 将高频访問的域名放在規则列表前面,加快匹配速度
- 使用 GEOIP,CN,DIRECT 讓國内流量直連,减少代理负載
- 避免過多的 DOMAIN-KEYWORD 規则,影響匹配效率
- 定期清理不再使用的規则
4. 選择優質節点
- 使用延遲測試功能,選择延遲最低的節点
- 優先選择支持 XTLS 或 Reality 協議的節点,性能更好
- 避免使用過于拥挤的公共節点
- 啟用自動選择最快節点功能(如果訂閱支持)
5. 系統級優化
- 關閉不必要的 VPN 或其他代理工具,避免衝突
- 確保 macOS 系統版本是最新的,獲得最佳兼容性
- 定期重啟 ClashX,清理缓存和連接
- 在 Apple Silicon Mac 上,確保使用 ARM64 原生版本
在 MacBook Pro M2 上,经過優化的 TUN 模式配置:• 網絡延遲增加:5-8ms• 速度损失:<3%• 内存占用:60-80MB• CPU 占用:<2%(空闲時)
常見問題 FAQ
Q1: TUN 模式和增強模式是一回事吗?
是的。在 ClashX 中,"增強模式"就是指 TUN 模式。菜單中顯示為"增強模式",配置文件中使用 tun 字段。
Q2: 開啟 TUN 模式后还需要開啟系統代理吗?
不需要。TUN 模式在網絡層工作,無需配置系統代理。實際上,同時開啟系統代理和 TUN 模式可能導致衝突。建議關閉系統代理,僅使用 TUN 模式。
Q3: TUN 模式能代理 Docker 容器的流量吗?
可以。TUN 模式工作在網絡層,可以代理包括 Docker 容器在内的所有網絡流量。但需要確保 Docker 的網絡配置正確,避免与 TUN 設備的 IP 段衝突。
Q4: 使用 TUN 模式会被檢測到吗?
TUN 模式本身不会增加被檢測的风险。流量特征主要取決于你使用的代理協議(如 Shadowsocks、VMess、Trojan)。TUN 模式只是改變了流量捕獲方式,不影響流量加密和伪装。
Q5: 可以在多臺 Mac 上使用相同的 TUN 配置吗?
可以。TUN 模式的配置文件可以在多臺 Mac 上通用。但需要注意,每臺 Mac 都需要單獨授予權限和安装網絡擴展。配置文件可以直接復制使用。
Q6: TUN 模式支持 IPv6 吗?
支持。ClashX 的 TUN 模式支持 IPv6 流量。如果你的網絡環境和代理節点支持 IPv6,TUN 模式会自動處理 IPv6 連接。可以在配置中添加 ipv6: true 啟用。
Q7: 為什么有時候 TUN 模式会自動關閉?
可能原因:1) 配置文件重載時出错;2) 網絡擴展崩溃;3) 系統權限變化。解決方法:檢查配置文件語法是否正確,重新授予權限,或重啟 ClashX。
Q8: TUN 模式和 Surge 的增強模式有什么區別?
工作原理相同,都是在網絡層創建虛拟網絡接口。主要區別在于實現细節和配置選項。Surge 的增強模式功能更丰富(如 MITM),但 ClashX 的 TUN 模式完全免费且開源。
如果你在使用 TUN 模式時遇到本文未涵盖的問題,可以:• 访問 ClashX GitHub 查看 Issues• 查閱 ClashX 常見問題 页面• 參考 完整使用教程