专题归档 · 2026 年 3 月(编辑分组,非实际写作日期)
Git SSH 连接被断开:Fake-IP、22 端口和 WSL 代理到底是谁的问题?
从 Git SSH 断连与 WSL 内代理不可达的两条记录区分地址解析、端口和网络命名空间。
同样是网络失败,原因可能完全不同
旧 Git 排障记录中,SSH 连接会突然被关闭,最先怀疑的是代理软件的 Fake-IP 机制。排除一层 Fake-IP 影响后,仍然存在节点对 SSH 22 端口的访问限制,因此不得不继续验证端口策略和替代连接路径。
WSL 的 localhost 也有自己的上下文
另一份 WSL 记录讲到 Linux 子系统拿到的代理环境变量指向本机 loopback,但不同的 Windows/WSL 网络模式下,这个地址未必连向预期的代理进程。旧笔记还同时发现了 apt 源格式问题,说明同一轮排障可能有多个独立故障。
不把单次方案写成放之四海的答案
对 Git SSH 的排查,应区分域名解析、真实目的 IP、代理匹配规则、22/443 端口和主机侧 SSH 密钥。对 WSL 则还要区分运行进程所处的网络命名空间。
Git、WSL 和 SSH 的问题看上去可能都像“网络不通”,但需要把密钥、代理路由和远端服务分别检查。相关原理见 Git、WSL 和 SSH。