连接排障 · Clash 技术博客

Clash Verge Rev macOS TUN 开启失败怎么修?

macOS 上系统代理正常,TUN 却提示无权限或服务异常时,检查应用位置、版本与辅助服务。通过官方入口重装服务,逐项复测授权和真实请求;仍失败时保持 TUN 关闭,使用系统代理。

  • Clash Verge Rev
  • macOS
  • TUN
  • 服务模式
本文目录

macOS 的 TUN 需要后台服务帮助创建虚拟网卡,因此浏览器能通过代理上网,开关仍可能无法启用。遇到这种状态,保住可用的系统代理,再看应用启动位置和本次最早的错误,才能判断是否需要处理服务权限。

系统代理能用,TUN 却无法启用

macOS 上,同一份 Profile 和固定节点通过系统代理可以访问网页,开启 TUN 后却立即关闭、提示服务模式异常,或日志出现 operation not permitted。这个对照说明订阅和节点至少具备基础可用性。

在系统代理已确认可用时,才继续核对 TUN 创建虚拟网卡、调整路由与接管 DNS 的权限。系统代理也不可用,或代理页没有节点时,回到订阅、节点与内核启动错误,不反复安装特权服务。

macOS 上开启 TUN 的权限链
  1. Clash Verge Rev保存开关并生成运行时配置
  2. 特权服务以受控权限启动 Mihomo
  3. TUN 与路由创建虚拟网卡并接管目标流量
  4. DNS 与实际连接完成解析、规则匹配和出站

operation not permitted 通常发生在特权服务到 TUN 这一段;TUN 已开启但网页超时,则应继续检查 DNS、规则和出站。

升级正式版,并从“应用程序”目录启动

Clash Verge Rev v2.5.2 的官方发布说明包含一项 macOS 修复:应用处于 App Translocation(运行位置被系统临时改变)状态时,服务安装或启动可能异常。即使新版本已经处理这个场景,也不建议长期从 DMG、下载目录或临时副本直接运行。

只改变版本与启动位置

  1. 记录当前状态

    记下客户端版本、Mac 芯片、服务模式状态和日志中的第一条错误。

  2. 关闭 TUN 与客户端

    确认系统网络已经恢复,再退出菜单栏进程,不让旧服务在安装期间切换路由。

  3. 安装匹配芯片的正式版

    若当前版本早于 v2.5.2,从项目 Release 取得对应芯片的正式包:M 系列选择 Apple Silicon,Intel Mac 选择 Intel。退出旧程序后把 Clash Verge.app 拖入“应用程序”,保留原 Profile。

  4. 从“应用程序”重新打开

    暂时不改 DNS、覆写和节点,只检查服务状态与原错误是否消失。

第一条 TUN 错误能区分权限与断网

重新启动后只开启一次 TUN,从日志顶部向下找本次操作出现的第一条 error。开关回落与网页超时不是同一种失败:前者常发生在创建网卡之前,后者说明网卡可能已经存在,问题进入 DNS、路由或上游连接。

官方 macOS FAQ 说明,TUN 开启时客户端会临时调整系统 DNS,关闭后应恢复。修复前先记录原 DNS;若 TUN 已关闭而设置没有恢复,先在系统网络设置中恢复原值,再继续测试。

configure tun interface: operation not permitted

内核没有完成创建 TUN 所需授权,检查服务模式与旧服务残留。

服务安装按钮报错,日志没有进入内核启动

确认应用位于 /Applications,再检查安全软件或设备管理策略是否阻止特权服务。

TUN 保持开启,连接页出现请求但全部 timeout

创建 TUN 的授权已完成,转查 DNS、规则、节点或其他 VPN 的路由冲突。

关闭 TUN 后系统代理仍正常

保留可用的系统代理作为恢复办法;只修服务,不重建订阅。

跨过 v2.4.5 后服务仍失败,怎样重装?

v2.4.5 的官方发布说明曾提示 macOS 与 Linux 收紧服务 IPC 权限,部分已安装环境需要先卸载旧 TUN 服务再安装新服务。若你跨过这一版本升级,界面内重试仍失败,可以使用发布说明给出的 macOS 工具。

运行前必须确认应用真实位于 /Applications/Clash Verge.app,并已退出客户端。下面先检查工具是否存在;路径不一致或检查失败就停止,不要把命令改成指向下载目录。

公司或受管 Mac 必须先由管理员确认允许安装和运行这项服务,再执行下面的管理员命令。未获允许时停在这里,不以重装服务绕过管理策略。

先检查路径,再执行官方卸载与安装工具
APP="/Applications/Clash Verge.app"
test -x "$APP/Contents/Resources/resources/clash-verge-service-uninstall" &&
test -x "$APP/Contents/Resources/resources/clash-verge-service-install" &&
sudo "$APP/Contents/Resources/resources/clash-verge-service-uninstall" &&
sudo "$APP/Contents/Resources/resources/clash-verge-service-install"

两条 test 命令没有输出且返回成功,才继续输入管理员密码。完成后重新打开客户端,检查服务模式是否激活,再用原 Profile 测试一次。不要从论坛下载同名 service 文件,也不要手动删除 launchd 目录中的未知项目。

公司 Mac 的后台服务与管理员策略

官方 macOS FAQ 把部分闪退和服务安装失败指向安全软件阻止服务。个人电脑可以检查“系统设置 → 通用 → 登录项与扩展”中与 Clash Verge Rev 相关的后台项目;受管电脑则应让管理员确认是否允许该服务。

如果每次登录都出现 osascript 请求更改的提示,先查看相关后台项目是否被关闭。不要永久停用终端防护、移除设备管理或对整个应用递归清除隔离属性;这些动作会把一个权限问题变成更大的安全风险。

受管环境需要确认

  • 客户端来自项目官方 Release,文件与芯片架构匹配
  • 应用已经安装到 /Applications,而不是用户临时目录
  • 管理员明确允许安装和运行 Clash Verge Rev 服务
  • 安全软件没有隔离应用、Mihomo 内核或服务工具
  • 没有同时运行另一款 VPN 或 TUN 客户端争用路由

修复没有完成,就退回系统代理继续使用

服务重新安装后仍出现同一条权限错误,应停止重复授权。关闭 TUN,确认系统 DNS 回到修复前记录的值,再用系统代理和原节点完成一次访问;这能保留基本连接,也避免让故障状态长期占用路由。官方修复或管理员处理前,不继续叠加未知脚本。

如果关闭 TUN 后仍断网,先退出 Clash Verge Rev,并在 macOS 网络设置中关闭代理或恢复原 DNS。不要删除网络服务、重置整台 Mac 的网络配置,也不要清空 Profile;删除这些数据不会补上服务授权。

提交问题前保留可复现证据

  1. 导出脱敏日志

    保留开启 TUN 前后几十行,遮住订阅 URL、节点地址、UUID 和密码。

  2. 记录环境

    写明 macOS 版本、Apple Silicon 或 Intel、客户端版本与安装路径。

  3. 记录最小复现

    说明系统代理是否正常、TUN 开关表现、服务模式状态和第一条 error。

TUN 流量、退出恢复与重新登录的检查

TUN 开关保持蓝色只证明界面保存了状态。还要用不依赖系统代理的请求做对照,并确认关闭 TUN 后路由与 DNS 能正常恢复。

完整验证清单

  • 服务模式显示已激活,日志不再出现 operation not permitted
  • 关闭系统代理、只开 TUN 时,浏览器和终端请求都能进入连接页
  • 连接记录显示预期规则与出口,而不是全部 DIRECT 或持续 timeout
  • 关闭 TUN 后,系统 DNS 与普通直连恢复,不需要重启 Mac
  • 重新登录一次系统后,服务仍可用且不反复请求异常授权

参考资料