TUN 模式解决什么问题
Mihomo Party 项目目前以 Clash Party 名称继续维护,旧文章与配置目录里仍可能出现 Mihomo Party。TUN 模式在系统中创建虚拟网络接口,并配合路由规则把更多流量送入 Mihomo 内核。它主要解决“应用不读取系统代理”的问题,例如部分游戏启动器、命令行程序或自带网络栈的软件。
系统代理只是告诉遵循系统设置的应用去连接本地 HTTP/SOCKS 端口;TUN 则在更低一层接管流量。两者不是速度档位,也不需要为了“更强”同时打开。浏览器已经能通过系统代理正常访问时,继续启用 TUN 只会增加路由、DNS 与虚拟网卡冲突的排查面。
开启前保存基线并清理冲突变量
先更新订阅,选择一个已通过实际网页访问验证的固定节点,并记录当前代理模式。关闭其他 VPN、加速器或会创建虚拟网卡的软件,暂时退出 VirtualBox、Docker 网络实验或企业安全客户端。它们并非一定不兼容,但多个程序同时修改默认路由时,很难从结果判断是谁生效。
- 保留当前可用配置或导出备份。
- 只开系统代理,确认浏览器和测试站可访问。
- 关闭系统代理,确认直连网络仍正常。
- 退出其他隧道软件,再启动 Clash Party。
- 准备好关闭“虚拟网卡/TUN”开关的回退路径。
若直连本来就存在 DNS 或 IPv6 故障,TUN 不会自动修好基础网络。先把系统时间、默认网关与名称解析恢复正常,再判断是否需要接管更多应用。
在客户端中开启虚拟网卡
在 Clash Party 主界面找到“虚拟网卡”或 TUN 开关。不同版本的布局可能调整,因此应以当前界面文字为准。首次开启通常会触发系统权限操作:Windows 可能需要管理员授权与防火墙放行,macOS 可能要求网络扩展或系统权限,Linux 则需要创建 TUN 接口和修改路由的权限。
开启后不要立刻改协议栈、DNS 与规则。先等待内核运行状态稳定,确认系统出现 TUN 接口,再访问一个直连页面和一个需要代理的页面。连接日志中应能看到目标域名、命中规则、策略组与最终节点。若开关很快自动关闭,优先查核心日志与权限错误,而不是反复点击。
tun,避免一边开启、一边被覆写关闭。协议栈、自动路由与 DNS 劫持怎么理解
Mihomo 官方 TUN 配置包含 stack、auto-route、auto-detect-interface、dns-hijack 和 strict-route 等选项。官方文档列出 system、gvisor 与 mixed 三种协议栈,并在没有兼容问题时建议尝试 mixed。默认值与客户端预设可能随版本变化,不应照抄旧截图。
YAMLtun:
enable: true
stack: mixed
auto-route: true
auto-detect-interface: true
dns-hijack:
- any:53
auto-route 负责把流量导入虚拟接口,auto-detect-interface 自动选择出口网卡;同时连接有线、Wi-Fi 与热点时,自动判断可能不是你期望的出口。dns-hijack 将匹配的 DNS 请求交给内核,但 Windows 与 macOS 对发往局域网的 DNS 请求存在官方注明的限制。strict-route 会强化路由约束,亦可能让 VirtualBox 等应用在部分环境异常,排障时不要第一步就启用。
开启后断网时按四层检查
| 现象 | 先检查 | 验证动作 |
|---|---|---|
| 开关无法保持开启 | 权限、内核启动 | 查看核心日志,重新授予必要权限 |
| 所有域名打不开 | DNS 与默认路由 | 分别测试 IP、A/AAAA 解析和网关 |
| 局域网设备失联 | strict-route、排除网段 | 先关闭严格路由并测试本地地址 |
| 换网络后失效 | 出口接口 | 重启内核或明确指定正确网卡 |
| 只有 UDP 应用异常 | 协议栈与节点 UDP | 固定节点,单独切换 stack 交叉验证 |
一次只改变一个变量:先保持节点、规则与 DNS 不变,仅关闭 TUN。如果网络立即恢复,继续检查 TUN 层;如果关闭后仍坏,问题不在虚拟网卡本身。随后分别验证 IP 连通和域名解析,避免把 DNS 故障误判为节点故障。
Linux 上若启用了防火墙,官方文档建议在确有问题时检查 TUN 接口的出站放行;Windows 使用 system 或 mixed 栈遇到防火墙阻断,也应放行实际的 Mihomo 核心程序。不要直接永久关闭整个防火墙作为解决方案。
验证成功后的日常设置
稳定运行的判据不是开关变蓝,而是实际应用产生连接、日志显示预期规则与节点、局域网和直连流量也符合计划。换 Wi-Fi、接入公司 VPN、唤醒电脑或更新客户端后,应快速复测这条链路。长时间会议或下载使用固定节点,避免自动组切换导致现有连接重建。
需要恢复时,先关 TUN,再退出客户端,确认系统默认路由和 DNS 已回到原网络。如果残留虚拟接口或路由,优先通过操作系统的正常网络重连或重启恢复,不要在不清楚目标的情况下批量删除路由。配置项的平台差异可查看 Mihomo TUN 官方文档;客户端名称、发行版与已知问题则以 Clash Party 官方仓库为准。
最实用的原则仍是:系统代理够用就保持简单;只有目标应用确实绕过代理时才启用 TUN。这样既能得到需要的覆盖范围,也能保留清晰、可回退的网络状态。
官方来源与版本边界
版本号、文件名和界面文字可能随项目更新而变化,操作前请以链接中的项目文档为准。