macOS 上的 Clash Verge Rev 2.5.6,系统代理模式一切正常,一打开 TUN(虚拟网卡)就连百度都打不开。直接连 mihomo 内核的 API 排查,发现是两个独立的根因叠在一起:一是 Hysteria2 节点的 UDP 出站没有绑定到物理网卡,被 TUN 路由吸回自己,形成回环;二是系统 DNS 被 Tailscale MagicDNS(100.100.100.100)接管,查询走 Tailscale 的 utun,Clash 的 dns-hijack 拦不到,拿回来的是被污染的 IP。修法只需两段 Merge 覆写:route-exclude-address 把节点 IP 排除出 TUN,再打开 sniffer 从 SNI 还原域名。文中每一步都附复现命令和实测输出。
一台跑 sing-box(VLESS-REALITY + Hysteria2)的洛杉矶 VPS,装上 Tailscale 第二天 VPN 全断。systemctl、端口、证书全部正常,根因藏在 /etc/resolv.conf:Tailscale 默认接管 DNS,tailnet 后台没配全局 nameserver,dhclient 续租时 resolv.conf 被读成空文件,tailscaled 从此对所有公网域名回 SERVFAIL,REALITY 握手连 www.apple.com 都解析不了。本文给出完整时间线、每一步的证据命令、三种修法,以及让 AI 助手(Claude Code)以后不再踩这个坑该写进 CLAUDE.md 的几条规则。