Tailscale 代理冲突诊断
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/diagnose-tailscale-and-proxy-conflicts-before-remote-development-stalls-out 技能到 Claude Code。
技能介绍
问题:隧道通了,但关键路径卡住
Tailscale 已连接、ping 正常,但 SSH 到开发机超时、浏览器打不开内网站点、git clone 挂起、Docker 拉取镜像失败。这类「半通不通」的故障通常不是 Tailscale 本身掉了,而是代理、路由或双重隧道(double-tunneling)之间的冲突:shell 或容器继承了 HTTP_PROXY、ALL_PROXY 等环境变量,流量被送进代理而不是隧道;系统代理与 Tailscale 的路由表互相覆盖;或者数据包同时穿过两层隧道,回环丢包。
技能如何工作
tunnel-doctor 在 Claude Code 中按结构化流程逐项排查:
- 检查当前 shell 与目标环境的代理环境变量(
HTTP_PROXY、HTTPS_PROXY、ALL_PROXY、NO_PROXY),确认哪些进程会把流量送进代理。 - 对照 Tailscale 路由表与系统路由,识别路由重叠或优先级冲突。
- 验证是否存在双重隧道:同时运行的 VPN/代理隧道与 Tailscale 争抢同一网段。
- 按 SSH、浏览器、
git、Docker 四类路径分别验证,定位是哪一层(代理、路由还是隧道)在拦截。
适用边界与注意点
- 需要
Read、Grep、Edit、Bash权限,诊断依赖真实环境中的命令执行与配置读取。 - 它定位根因而非直接改写全局网络配置;修复动作仍需你结合环境确认后执行。
- 不同操作系统(macOS、Linux、Windows)的环境变量继承方式与路由命令差异较大,结论需要按平台解读。
使用场景
- Tailscale 显示已连接,但 SSH 到开发机一直超时,需要定位代理或路由配置问题
- git clone 内部仓库时命令挂起,ping 测试正常,需要排查代理环境变量是否拦截流量
- Docker 拉取内部镜像失败,Tailscale 状态正常,需要诊断双重隧道或路由重叠问题
- 浏览器访问内网文档站点超时,Tailscale 路由表看起来没问题,需要检查系统代理是否覆盖了隧道路由
适合人员
- 用 Tailscale 连接远程开发机的后端工程师,需要解决 SSH 无法连接的问题
- 依赖 git clone 内部代码仓库的前端开发者,遇到 clone 挂起需要排查代理配置
- 管理 Docker 开发环境的运维人员,拉取镜像失败需要定位网络冲突
- 使用远程开发环境调试的全栈工程师,浏览器打不开内网站点需要诊断路由