T3 Connect 故障排查¶
T3 Connect 连接按顺序经过四个部分:
- 本设备通过互联网访问 T3 Connect。
- T3 Connect 检查你的登录信息和主机的链接。
- 主机的隧道(主机上的 cloudflared)将请求传送到主机。
- 主机上的 T3 Code 进行响应。
当连接失败时,打开 设置 > 环境,找到环境,然后选择 详细信息。第一个标记为失败的部分就是原因。在下方找到对应的部分。
要查看主机端的情况,请在主机上运行 t3 connect status,或打开主机上的 设置 > 共享与访问。两者都会从主机检查主机的 T3 Connect 地址,并说明失败原因。t3 connect 在完成设置时会运行同样的检查。此检查无法测试另一台设备的网络。如果某台设备出现问题,请在该设备上使用 详细信息。
主机的隧道离线¶
T3 Connect 无法访问主机的隧道。这意味着以下情况之一:
- 主机处于睡眠、关机或离线状态。
- 主机上没有运行 T3 Code。
- 主机的网络阻止了隧道。参见主机上的 7844 端口被阻止。
修复:
- 确保主机已唤醒并且 T3 Code 在其上运行。
- 在主机上运行
t3 connect status。它会指出主机端的问题。 - 如果主机长时间离线,T3 Connect 会移除其隧道。请在主机上启动 T3 Code 并将其更新到最新版本。它会获得一个新隧道。
主机上的 7844 端口被阻止¶
主机上的隧道通过 TCP 和 UDP 在 7844 端口连接到 Cloudflare。两种隧道协议(QUIC 和 HTTP/2)都使用此端口。当主机的网络阻止该端口时,隧道无法启动,但正常的网络流量仍然可以工作。主机看起来在线,因此这个问题很容易被忽略。
常见原因:
- 主机上的 Tailscale 出口节点。 主机的所有互联网流量都经过该出口节点,而该网络阻止了 7844 端口。使用
tailscale set --exit-node=关闭主机上的出口节点,或在出口节点的网络上允许出站 7844 端口。 - 主机上的 VPN。 工作 VPN 通常会阻止未知端口。请允许 7844 端口,或改用直接路由(见下文)。
- 防火墙或严格网络。 允许出站 TCP 和 UDP 7844 端口。
如果无法解除端口阻止,你也可以在不使用 T3 Connect 的情况下连接。当主机和本设备位于同一 Tailscale 网络时,将主机的 Tailscale 地址添加为直接路由。参见通过多种方式访问同一台机器。
隧道正常,但 T3 Code 没有响应¶
主机的隧道已启动,但无法访问主机上的 T3 Code。常见原因:
- 主机上的 T3 Code 已停止、崩溃或仍在启动中。
- T3 Code 在不同的端口上重启(例如更新后),而隧道仍指向旧端口。
- 服务器仅使用
T3CODE_HOST绑定一个网络地址。隧道将请求发送到127.0.0.1,因此服务器也必须在该地址监听。
修复:在主机上重启 T3 Code。对于后台服务,运行 t3 service restart。然后在主机上运行 t3 connect status。
T3 Connect 地址无法解析或无响应¶
主机的 T3 Connect 地址无法解析、拒绝连接、安全(TLS)连接失败,或未及时响应。
修复:
- 确保主机已唤醒并在线。
- 在主机上运行
t3 connect status。 - 如果检查仅在主机上失败,请检查主机的 DNS、VPN 或代理。
本设备无法访问 T3 Connect¶
问题出在本设备的网络上,而不是主机上。本设备无法访问 T3 Connect,或者虽然访问到了 T3 Connect,但无法访问主机的隧道地址。
修复:
- 检查本设备的互联网连接。在强制门户或失效的 Wi-Fi 网络上,设备可能看起来在线,但无法访问任何内容。
- 本设备上的 VPN、防火墙、广告拦截器或 DNS 过滤器可能会阻止 T3 Connect。暂时关闭它们进行测试。
- 在 iPhone 上,Wi-Fi 设置中的连接助手可能会中断 T3 Connect。将其关闭进行测试。
- 尝试其他网络,或添加一条到主机的直接路由,例如其 Tailscale 地址。参见通过多种方式访问同一台机器。
登录、账户或链接问题¶
本设备的 T3 Connect 登录尚未就绪,或者 T3 Connect 在你的账户与主机之间没有有效的链接。
- 主机链接到了不同的账户。 在本设备和主机上登录同一个 T3 Connect 账户。在主机上运行
t3 connect logout,然后运行t3 connect。 - 主机上的 T3 Connect 已关闭,或者主机只发布代理活动。 在主机上,打开 设置 > 共享与访问 并打开 T3 Connect,或运行
t3 connect。 - 主机已链接,但服务器尚未应用该链接。 重启主机上的服务器:退出并重新打开 T3 Code 桌面应用,运行
t3 service restart,或停止t3 serve并重新运行。 - 本设备的登录已过期,或主机不再接受此设备。 退出 T3 Connect 并重新登录。
- 本设备仍在加载其 T3 Connect 登录。 稍等片刻;T3 Code 会自动重试。如果它一直等待,请在本设备上重新加载或重启 T3 Code。
- 你的账户已达到隧道限制。 从你的 T3 账户的 T3 Connect 页面中删除一个不使用的环境,或关联付费 T3 Chat 账户以获得更高限制。然后在主机上重启 T3 Code。
时钟不准¶
T3 Connect 使用短期证明对请求进行签名。当本设备或主机的时钟相差几分钟时,T3 Connect 会拒绝这些请求。请在两台设备上开启自动日期和时间,然后重试。
主机运行的是旧版 T3 Code¶
此应用需要主机上更新版本的 T3 Code。请更新主机上的 T3 Code。参见更新 T3 Code。
T3 Connect 返回了错误¶
| 错误 | 修复 |
|---|---|
environment_link_limit_exceeded 或托管隧道限制 |
删除未使用的环境,或关联付费 T3 Chat 账户,然后在主机上重启 T3 Code。 |
auth_invalid 或 invalid_bearer |
运行 t3 connect login。如果凭据已被撤销,先运行 t3 connect logout,再运行 t3 connect。登录后重启服务器。 |
| 过期或无效的链接证明 | 检查主机的日期和时间,更新 T3 Code,然后重启。 |
| 未识别出具体错误的 HTTP 403 | 检查中继访问、代理和防火墙规则。保留任何 Cloudflare Ray ID 以用于提交错误报告。 |
| HTTP 408、429 或 5xx | 等待几分钟。T3 Code 会自动重试临时故障。 |
修复永久性拒绝问题后,使用 t3 service restart 重启主机上的服务器。如果是前台服务器,请停止它并重新运行 t3 serve。
如果 SSH 关闭时主机上的 T3 Code 消失,请参阅后台服务故障排查。
报告问题¶
如果上述方法均无效,请在 GitHub 上提交 issue。请包含:
- 环境 Details 中的 Copy diagnostics 文本。
- 主机上
t3 connect status的输出。 - 显示的 trace ID(如有)。
- 如果隧道之前断开过,请一并提供主机的隧道日志,即日志文件夹(默认为
~/.t3/userdata/logs)中的relay-client.ndjson。该日志记录了隧道连接、警告、退出和重启的时间,并已移除其中的隧道令牌。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 t3/t3code