xxssh

友好的 SSH 客户端 — 多服务器管理 / 全功能终端 / 保活

📂 开发工具#SSH#终端#远程连接#跨平台#开发工具📅 2026-8-8

保活与连接稳定性

📅 2026-8-8

为什么需要保活

SSH 连接经过 NAT、防火墙、负载均衡时,长时间无数据流会被中间设备静默断开(典型空闲超时 5-10 分钟)。表现为:终端突然卡住、输入无响应,但程序并不知道连接已断。

xxssh 的保活机制专门解决这个问题。

工作方式

会话空闲时,xxssh 每 20 秒发送一个 keepalive@openssh.com 心跳包:

  • 保持连接有数据流,中间设备不会因空闲而掐断
  • 每次心跳等待服务端响应;连续 3 次无响应才判定连接已死

也就是说,即使单次心跳丢包,连接也不会被误杀 —— 兼顾了稳定性与真实断线检测。

实测

官方 E2E 测试在测试服务器上空闲 70 秒(期间发送 3 次以上心跳),连接保持存活、可正常接收后续输出。

其他稳定性特性

  • 窗口尺寸同步:终端大小变化自动发送 window-change,远程全屏程序(vim/htop)自适应重绘
  • ~. 强制断开:万一连接真的卡死,行首输入 ~. 可强制回到服务器列表,无需关闭整个程序
  • EOF / exit-status 处理:正确处理 EOF 先于 exit-status 到达的边界情况,不丢失退出码