在切换网络接口连接时保持 ssh 连接的活动和持久性

Sea*_*ean 16 networking ssh wifi sshfs keepalive

设想:

  1. 在我的办公桌上,笔记本电脑插入以太网并通过 SSH 连接到远程服务器
  2. 想要在不中断 SSH 连接的情况下使用笔记本电脑搬到办公室的另一边并切换到 WiFi

我试过:先连接到 WiFi,然后断开以太网;并先断开以太网,然后再连接到 WiFi。这两种方法都不起作用。在使用 Ubuntu 和 OS X 服务器以及两个操作系统选项以及客户端时也尝试过。没运气。

似乎我需要某种方式告诉我的 SSH 连接它应该开始使用新连接的网络接口而不是旧的断开连接的接口。有任何想法吗?

我意识到我可以整天呆在 WiFi 上,但我不想那样做。我也意识到我可以只在远程服务器上的屏幕会话中工作,然后在更改接口后重新连接到该屏幕会话,但我也不想这样做。例如,我可能正在通过管道传输一些大命令,例如通过 SSH 进行数据库转储,或者我可能通过 SSHFS 打开文件,或者我可能只是想避免重新连接的麻烦

Gri*_*vit 7

我怀疑这个解决方案不适用于 SSHFS 等,但您可以看看Mosh,它至少为 shell 本身提供漫游支持。

  • 来自 https://mosh.org/#usage mosh --server=/tmp/mosh-server remote_host 用户可以为远程主机上的 mosh-server 指定备用路径。服务器二进制文件甚至可以安装在用户的主目录中。 (3认同)

Ric*_*man 6

恐怕你不能这样做,根据定义。SSH 会话通过 TCP 连接运行,TCP 连接由四元组(源地址、源端口、目标地址、目标端口)定义。您不能将现有连接转移到客户端上的不同地址(除了当接口关闭时操作系统将断开连接这一事实)。

NAT 可能会使这张图片复杂化,但不会以任何方式帮助您。